diff options
Diffstat (limited to 'resources/mediawiki.special')
24 files changed, 365 insertions, 76 deletions
diff --git a/resources/mediawiki.special/images/arrow-collapsed-ltr.png b/resources/mediawiki.special/images/arrow-collapsed-ltr.png Binary files differdeleted file mode 100644 index 467a555a..00000000 --- a/resources/mediawiki.special/images/arrow-collapsed-ltr.png +++ /dev/null diff --git a/resources/mediawiki.special/images/arrow-collapsed-rtl.png b/resources/mediawiki.special/images/arrow-collapsed-rtl.png Binary files differdeleted file mode 100644 index 2246254f..00000000 --- a/resources/mediawiki.special/images/arrow-collapsed-rtl.png +++ /dev/null diff --git a/resources/mediawiki.special/images/arrow-expanded.png b/resources/mediawiki.special/images/arrow-expanded.png Binary files differdeleted file mode 100644 index 58a9fc66..00000000 --- a/resources/mediawiki.special/images/arrow-expanded.png +++ /dev/null diff --git a/resources/mediawiki.special/images/glyph-people-large.png b/resources/mediawiki.special/images/glyph-people-large.png Binary files differnew file mode 100644 index 00000000..0578be0b --- /dev/null +++ b/resources/mediawiki.special/images/glyph-people-large.png diff --git a/resources/mediawiki.special/images/icon-contributors.png b/resources/mediawiki.special/images/icon-contributors.png Binary files differnew file mode 100644 index 00000000..f933aa69 --- /dev/null +++ b/resources/mediawiki.special/images/icon-contributors.png diff --git a/resources/mediawiki.special/images/icon-edits.png b/resources/mediawiki.special/images/icon-edits.png Binary files differnew file mode 100644 index 00000000..39f4f2de --- /dev/null +++ b/resources/mediawiki.special/images/icon-edits.png diff --git a/resources/mediawiki.special/images/icon-lock.png b/resources/mediawiki.special/images/icon-lock.png Binary files differnew file mode 100644 index 00000000..03f0eecd --- /dev/null +++ b/resources/mediawiki.special/images/icon-lock.png diff --git a/resources/mediawiki.special/images/icon-pages.png b/resources/mediawiki.special/images/icon-pages.png Binary files differnew file mode 100644 index 00000000..59513db2 --- /dev/null +++ b/resources/mediawiki.special/images/icon-pages.png diff --git a/resources/mediawiki.special/mediawiki.special.block.js b/resources/mediawiki.special/mediawiki.special.block.js index 2a158dfb..b8bcf177 100644 --- a/resources/mediawiki.special/mediawiki.special.block.js +++ b/resources/mediawiki.special/mediawiki.special.block.js @@ -2,7 +2,7 @@ * JavaScript for Special:Block */ ( function ( mw, $ ) { - $( document ).ready( function () { + $( function () { var $blockTarget = $( '#mw-bi-target' ), $anonOnlyRow = $( '#mw-input-wpHardBlock' ).closest( 'tr' ), $enableAutoblockRow = $( '#mw-input-wpAutoBlock' ).closest( 'tr' ), diff --git a/resources/mediawiki.special/mediawiki.special.changeemail.js b/resources/mediawiki.special/mediawiki.special.changeemail.js index 14c2f036..2d22bad0 100644 --- a/resources/mediawiki.special/mediawiki.special.changeemail.js +++ b/resources/mediawiki.special/mediawiki.special.changeemail.js @@ -23,7 +23,7 @@ } } - $( document ).ready( function () { + $( function () { // Lame tip to let user know if its email is valid. See bug 22449. // Only bind once for 'blur' so that the user can fill it in without errors; // after that, look at every keypress for immediate feedback. diff --git a/resources/mediawiki.special/mediawiki.special.changeslist.css b/resources/mediawiki.special/mediawiki.special.changeslist.css index fcdeba1b..5e4af7b6 100644 --- a/resources/mediawiki.special/mediawiki.special.changeslist.css +++ b/resources/mediawiki.special/mediawiki.special.changeslist.css @@ -2,63 +2,6 @@ * Styling for Special:Watchlist and Special:RecentChanges */ -table.mw-enhanced-rc { - border: 0; - border-spacing: 0; -} - -table.mw-enhanced-rc th, -table.mw-enhanced-rc td { - padding: 0; - vertical-align: top; -} - -td.mw-enhanced-rc { - white-space: nowrap; - font-family: monospace; -} - -.mw-enhanced-rc-time { - font-family: monospace; -} - -table.mw-enhanced-rc td.mw-enhanced-rc-nested { - padding-left: 1em; -} - -/* Show/hide arrows in enhanced changeslist */ -.mw-enhanced-rc .collapsible-expander { - float: none; -} - -/* If JS is disabled, the arrows or the placeholder space shouldn't be shown */ -.client-nojs .mw-enhancedchanges-arrow-space { - display: none; -} - -.mw-enhancedchanges-arrow-space { - display: inline-block; - *display: inline; /* IE7 and below */ - zoom: 1; - width: 15px; - height: 15px; -} - -/* let it look like it is clickable */ -.mw-enhancedchanges-arrow.mw-collapsible-toggle { - cursor: pointer; -} - -.mw-enhancedchanges-arrow.mw-collapsible-toggle-collapsed { - /* @embed */ - background: url(images/arrow-collapsed-ltr.png) no-repeat left center; -} - -.mw-enhancedchanges-arrow.mw-collapsible-toggle-expanded { - /* @embed */ - background: url(images/arrow-expanded.png) no-repeat left center; -} - .mw-changeslist-line-watched .mw-title { font-weight: bold; } diff --git a/resources/mediawiki.special/mediawiki.special.changeslist.enhanced.css b/resources/mediawiki.special/mediawiki.special.changeslist.enhanced.css new file mode 100644 index 00000000..bed580d7 --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.changeslist.enhanced.css @@ -0,0 +1,66 @@ +/** + * Styling for Special:Watchlist and Special:RecentChanges when preference 'usenewrc' + * a.k.a. Enhanced Recent Changes is enabled. + */ + +table.mw-enhanced-rc { + border: 0; + border-spacing: 0; +} + +table.mw-enhanced-rc th, +table.mw-enhanced-rc td { + padding: 0; + vertical-align: top; +} + +td.mw-enhanced-rc { + white-space: nowrap; + font-family: monospace; +} + +.mw-enhanced-rc-time { + font-family: monospace; +} + +table.mw-enhanced-rc td.mw-enhanced-rc-nested { + padding-left: 1em; +} + +/* Show/hide arrows in enhanced changeslist */ +.mw-enhanced-rc .collapsible-expander { + float: none; +} + +/* If JS is disabled, the arrows or the placeholder space shouldn't be shown */ +.client-nojs .mw-enhancedchanges-arrow-space { + display: none; +} + +/* + * And if it's enabled, let's optimize the collapsing a little: hide the rows + * that would be hidden by jquery.makeCollapsible with CSS to save us some + * reflows and repaints. This doesn't work on browsers that don't fully support + * CSS2 (IE6), but it's okay, this will be done in JavaScript with old degraded + * performance instead. + */ +.client-js table.mw-enhanced-rc.mw-collapsed tr + tr { + display: none; +} + +.mw-enhancedchanges-arrow-space { + display: inline-block; + *display: inline; /* IE7 and below */ + zoom: 1; + width: 15px; + height: 15px; +} + +/* let it look like it is clickable */ +.mw-enhancedchanges-arrow.mw-collapsible-toggle { + cursor: pointer; +} + +.mw-enhanced-watched .mw-enhanced-rc-time { + font-weight: bold; +} diff --git a/resources/mediawiki.special/mediawiki.special.createAccount.css b/resources/mediawiki.special/mediawiki.special.createAccount.css new file mode 100644 index 00000000..11d00e75 --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.createAccount.css @@ -0,0 +1,89 @@ +/* Disable the underline that Vector puts on h2 headings, and bold them. */ +.mw-ui-container h2 { + border: 0; + font-weight: bold; +} + +/**** shuffled CAPTCHA ****/ +#wpCaptchaWord { + margin-top: 6px; +} + +.mw-createacct-captcha-container { + background-color: #f8f8f8; + border: 1px solid #c9c9c9; + padding: 10px; + text-align: center; +} + +.mw-createacct-captcha-assisted { + display: block; + margin-top: 0.5em; +} + +/* Put a border around the fancycaptcha-image-container. */ +.mw-createacct-captcha-and-reload { + border: 1px solid #c9c9c9; + display: table-cell; /* Other display formats end up too wide */ + width: 270px; + background-color: #FFF; +} + +/* Make the fancycaptcha-image-container full-width within its parent. */ +.fancycaptcha-image-container +{ + width: 100%; +} + +/**** Benefits column CSS to the right (if it fits) of the form. ****/ +.mw-ui-container #userloginForm { + float: left; +} + +div.mw-createacct-benefits-container { + /* Keeps this column compact and close to the form, but tends to squish contents. */ + float: left; +} + +div.mw-createacct-benefits-container h2 { + margin-bottom: 30px; +} + +.mw-number-text.icon-edits { + /* @embed */ + background: url(images/icon-edits.png) no-repeat left center; +} + +.mw-number-text.icon-pages { + /* @embed */ + background: url(images/icon-pages.png) no-repeat left center; +} + +.mw-number-text.icon-contributors { + /* @embed */ + background: url(images/icon-contributors.png) no-repeat left center; +} + +/* Special font for numbers in benefits*/ +div.mw-number-text h3 { + top: 0; + margin: 0; + padding: 0; + color: #252525; + font-family: 'Georgia', serif; + font-weight: normal; + font-size: 2.2em; + line-height: 1.2; + text-align: center; +} + +/* Contains a number and explanatory text, with space for an icon */ +div.mw-number-text { + display: block; + font-size: 1.2em; + color: #444; + margin-top: 1em; + padding: 0 0 0 95px; /* 80px wide icon plus "margin" */ + min-height: 75px; /* matches max icon height, ensures icon emblem is visible */ + text-align: center; +} diff --git a/resources/mediawiki.special/mediawiki.special.createAccount.js b/resources/mediawiki.special/mediawiki.special.createAccount.js new file mode 100644 index 00000000..5cbb1ee0 --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.createAccount.js @@ -0,0 +1,112 @@ +/** + * JavaScript for Create account form (Special:UserLogin?type=signup). + */ +( function ( mw, $ ) { + + // When sending password by email, hide the password input fields. + // This function doesn't need to be loaded early by ResourceLoader, but is tiny. + function hidePasswordOnEmail() { + // Always required if checked, otherwise it depends, so we use the original + var $emailLabel = $( 'label[for="wpEmail"]' ), + originalText = $emailLabel.text(), + requiredText = mw.message( 'createacct-emailrequired' ).text(), + $createByMailCheckbox = $( '#wpCreateaccountMail' ), + $beforePwds = $( '.mw-row-password:first' ).prev(), + $pwds; + + function updateForCheckbox() { + var checked = $createByMailCheckbox.prop( 'checked' ); + if ( checked ) { + $pwds = $( '.mw-row-password' ).detach(); + $emailLabel.text( requiredText ); + } else { + if ( $pwds ) { + $beforePwds.after( $pwds ); + $pwds = null; + } + $emailLabel.text( originalText ); + } + } + + $createByMailCheckbox.on( 'change', updateForCheckbox ); + updateForCheckbox(); + } + + // Move the FancyCaptcha image into a more attractive container. + // This function does need to be run early by ResourceLoader. + function adjustFancyCaptcha() { + var $content = $( '#mw-content-text' ), + $submit = $content.find( '#wpCreateaccount' ), + tabIndex, + $captchaStuff, + $captchaImageContainer, + // JavaScript can't yet parse the message createacct-imgcaptcha-help when it + // contains a MediaWiki transclusion, so PHP parses it and sends the HTML. + helpMsg = mw.config.get( 'wgCreateacctImgcaptchaHelp' ), + helpHtml = ''; + + /* + * CAPTCHA + * The CAPTCHA is in a div style="captcha" at the top of the form. + * If it's a FancyCaptcha, then we remove it and insert it lower down, + * in a customized div with just what we need (e.g. no + * fancycaptcha-createaccount message). + */ + if ( !$submit.length) { + return; + } + tabIndex = $submit.prop( 'tabindex' ) - 1; + $captchaStuff = $content.find ( '.captcha' ); + + if ( $captchaStuff.length ) { + + // The FancyCaptcha has this class in the ConfirmEdit extension + // after 2013-04-18. + $captchaImageContainer = $captchaStuff.find( '.fancycaptcha-image-container' ); + if ( $captchaImageContainer.length !== 1 ) { + return; + } + + $captchaStuff.remove(); + + if ( helpMsg) { + helpHtml = '<small class="mw-createacct-captcha-assisted">' + helpMsg + '</small>'; + } + + // Insert another div before the submit button that will include the + // repositioned FancyCaptcha div, an input field, and possible help. + $submit.closest( 'div' ) + .before( [ + '<div>', + '<label for="wpCaptchaWord">' + mw.message( 'createacct-captcha' ).escaped() + '</label>', + '<div class="mw-createacct-captcha-container">', + '<div class="mw-createacct-captcha-and-reload" />', + '<input id="wpCaptchaWord" name="wpCaptchaWord" type="text" placeholder="' + + mw.message( 'createacct-imgcaptcha-ph' ).escaped() + + '" tabindex="' + tabIndex + '" autocapitalize="off" autocorrect="off">', + helpHtml, + '</div>', + '</div>' + ].join( '' ) + ); + + // Stick the FancyCaptcha container inside our bordered and framed parents. + $captchaImageContainer + .prependTo( $content.find( '.mw-createacct-captcha-and-reload' ) ); + + // Find the input field, add the text (if any) of the existing CAPTCHA + // field (although usually it's blanked out on every redisplay), + // and after it move over the hidden field that tells the CAPTCHA + // what to do. + $content.find( '#wpCaptchaWord' ) + .val( $captchaStuff.find( '#wpCaptchaWord' ).val() ) + .after( $captchaStuff.find( '#wpCaptchaId' ) ); + } + } + + $( function () { + adjustFancyCaptcha(); + hidePasswordOnEmail(); + } ); + +}( mediaWiki, jQuery ) ); diff --git a/resources/mediawiki.special/mediawiki.special.movePage.js b/resources/mediawiki.special/mediawiki.special.movePage.js index f719d07c..922eba5e 100644 --- a/resources/mediawiki.special/mediawiki.special.movePage.js +++ b/resources/mediawiki.special/mediawiki.special.movePage.js @@ -1,6 +1,6 @@ /** * JavaScript for Special:MovePage */ -jQuery( document ).ready( function ( $ ) { +jQuery( function ( $ ) { $( '#wpReason, #wpNewTitleMain' ).byteLimit(); } ); diff --git a/resources/mediawiki.special/mediawiki.special.pagesWithProp.css b/resources/mediawiki.special/mediawiki.special.pagesWithProp.css new file mode 100644 index 00000000..7ef75d0c --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.pagesWithProp.css @@ -0,0 +1,4 @@ +/* Distinguish actual data from information about it being hidden visually */ +.prop-value-hidden { + font-style: italic; +} diff --git a/resources/mediawiki.special/mediawiki.special.preferences.js b/resources/mediawiki.special/mediawiki.special.preferences.js index 6eaec6a1..03d93d00 100644 --- a/resources/mediawiki.special/mediawiki.special.preferences.js +++ b/resources/mediawiki.special/mediawiki.special.preferences.js @@ -1,7 +1,7 @@ /** * JavaScript for Special:Preferences */ -jQuery( document ).ready( function ( $ ) { +jQuery( function ( $ ) { var $preftoc, $preferences, $fieldsets, $legends, hash, $tzSelect, $tzTextbox, $localtimeHolder, servertime; diff --git a/resources/mediawiki.special/mediawiki.special.recentchanges.js b/resources/mediawiki.special/mediawiki.special.recentchanges.js index d1c1354f..79d793af 100644 --- a/resources/mediawiki.special/mediawiki.special.recentchanges.js +++ b/resources/mediawiki.special/mediawiki.special.recentchanges.js @@ -27,7 +27,7 @@ } }; - $( document ).ready( rc.init ); + $( rc.init ); mw.special.recentchanges = rc; diff --git a/resources/mediawiki.special/mediawiki.special.search.js b/resources/mediawiki.special/mediawiki.special.search.js index 2dab3026..035252bf 100644 --- a/resources/mediawiki.special/mediawiki.special.search.js +++ b/resources/mediawiki.special/mediawiki.special.search.js @@ -2,7 +2,7 @@ * JavaScript for Special:Search */ ( function ( mw, $ ) { - $( document ).ready( function () { + $( function () { var $checkboxes, $headerLinks; // Emulate HTML5 autofocus behavior in non HTML5 compliant browsers diff --git a/resources/mediawiki.special/mediawiki.special.undelete.js b/resources/mediawiki.special/mediawiki.special.undelete.js index d20aab51..0dea3ef9 100644 --- a/resources/mediawiki.special/mediawiki.special.undelete.js +++ b/resources/mediawiki.special/mediawiki.special.undelete.js @@ -1,7 +1,7 @@ /** * JavaScript for Special:Undelete */ -jQuery( document ).ready( function ( $ ) { +jQuery( function ( $ ) { $( '#mw-undelete-invert' ).click( function ( e ) { $( '#undelete input[type="checkbox"]' ).prop( 'checked', function ( i, val ) { return !val; diff --git a/resources/mediawiki.special/mediawiki.special.upload.js b/resources/mediawiki.special/mediawiki.special.upload.js index 75532f18..3f40c549 100644 --- a/resources/mediawiki.special/mediawiki.special.upload.js +++ b/resources/mediawiki.special/mediawiki.special.upload.js @@ -6,7 +6,7 @@ /** * Add a preview to the upload form */ - $( document ).ready( function () { + $( function () { /** * Is the FileAPI available with sufficient functionality? */ @@ -290,7 +290,7 @@ /** * Disable all upload source fields except the selected one */ - $( document ).ready( function () { + $( function () { var i, $row, $rows = $( '.mw-htmlform-field-UploadSourceField' ); diff --git a/resources/mediawiki.special/mediawiki.special.userLogin.css b/resources/mediawiki.special/mediawiki.special.userLogin.css new file mode 100644 index 00000000..24c8d771 --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.userLogin.css @@ -0,0 +1,39 @@ +/* Styles just for VForm user login */ +#mw-userlogin-help { + text-align: center; +} + +.mw-ui-vform .mw-secure { + /* @embed */ + background: url(images/icon-lock.png) no-repeat scroll left center transparent; + margin: 0 0 0 1px; + padding: 0 0 0 11px; +} + +/* The login form invites users to create an account */ +#mw-createaccount-cta { + width: 20em; + height: 10em; + /* @embed */ + background: url(images/glyph-people-large.png) no-repeat 50%; + margin: 0 auto; +} + +#mw-createaccount-cta h3, +#mw-createaccount-another h3 { + font-size: 0.9em; + font-weight: normal; + text-align: center; +} + +#mw-createaccount-cta h3 { + padding-top: 4em; +} + +#mw-createaccount-join { + margin-left: 0.75em; + /* Separate from background image */ + box-shadow: 4px 4px 4px 4px rgba(255, 255, 255, 1); + width: auto; + display: inline-block; +} diff --git a/resources/mediawiki.special/mediawiki.special.userLogin.signup.js b/resources/mediawiki.special/mediawiki.special.userLogin.signup.js deleted file mode 100644 index bba42605..00000000 --- a/resources/mediawiki.special/mediawiki.special.userLogin.signup.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * JavaScript for Special:UserLogin/signup - */ -jQuery( document ).ready( function ( $ ) { - $( '#wpCreateaccountMail' ) - .on( 'change', function() { - $( '.mw-row-password' ).toggle( !$( this ).attr( 'checked' ) ); - } ) - .trigger( 'change' ); -} ); diff --git a/resources/mediawiki.special/mediawiki.special.vforms.css b/resources/mediawiki.special/mediawiki.special.vforms.css new file mode 100644 index 00000000..768a9c6e --- /dev/null +++ b/resources/mediawiki.special/mediawiki.special.vforms.css @@ -0,0 +1,46 @@ +/* + * When inside the VForm style, disable the border that Vector and other skins + * put on the div surrounding the login/create account form. + * Also disable the margin and padding that Vector puts around the form. + */ +.mw-ui-container #userloginForm, +.mw-ui-container #userlogin { + border: 0; + margin: 0; + padding: 0; +} + +/* Reposition and resize language links, which appear on a per-wiki basis */ +.mw-ui-container #languagelinks { + margin-bottom: 2em; + font-size: 0.8em; +} + +/* Put some space under template's header, which may contain CAPTCHA HTML.*/ +section.mw-form-header { + margin-bottom: 10px; +} + +/* + * Styles for information boxes. + */ +.mw-ui-vform .errorbox, +.mw-ui-vform .warningbox, +.mw-ui-vform .successbox { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + font-size: 0.9em; + margin: 0 0 1em 0; + padding: 0.5em; + word-wrap: break-word; +} + +/* + * Override the right margin of the form to give space in case a benefits + * column appears to the side. + * + */ +.mw-ui-container #userloginForm { + margin-right: 100px; +} |