Merge "Simplified some code and broke lines in thumb.php"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Sat, 21 Sep 2013 16:08:06 +0000 (16:08 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Sat, 21 Sep 2013 16:08:06 +0000 (16:08 +0000)
85 files changed:
RELEASE-NOTES-1.22
includes/DefaultSettings.php
includes/Exception.php
includes/MagicWord.php
includes/StringUtils.php
includes/installer/DatabaseUpdater.php
includes/installer/Installer.i18n.php
includes/parser/CoreParserFunctions.php
includes/parser/Parser.php
includes/parser/Preprocessor_DOM.php
languages/messages/MessagesBr.php
languages/messages/MessagesBs.php
languages/messages/MessagesCa.php
languages/messages/MessagesCe.php
languages/messages/MessagesCs.php
languages/messages/MessagesEn.php
languages/messages/MessagesEt.php
languages/messages/MessagesFi.php
languages/messages/MessagesHu.php
languages/messages/MessagesPms.php
languages/messages/MessagesRu.php
languages/messages/MessagesSr_ec.php
languages/messages/MessagesSr_el.php
languages/messages/MessagesTr.php
languages/messages/MessagesWuu.php
maintenance/mssql/tables.sql
maintenance/oracle/tables.sql
maintenance/postgres/tables.sql
maintenance/tidyUpBug37714.php [new file with mode: 0644]
maintenance/update.php
resources/jquery.chosen/chosen-sprite@2x.png
resources/jquery.tipsy/images/tipsy.png
resources/jquery.ui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png
resources/jquery.ui/themes/default/images/ui-bg_flat_75_ffffff_40x100.png
resources/jquery.ui/themes/default/images/ui-bg_glass_55_fbf9ee_1x400.png
resources/jquery.ui/themes/default/images/ui-bg_glass_65_ffffff_1x400.png
resources/jquery.ui/themes/default/images/ui-bg_glass_75_dadada_1x400.png
resources/jquery.ui/themes/default/images/ui-bg_highlight-soft_75_cccccc_1x100.png
resources/jquery.ui/themes/vector/images/titlebar-fade.png
resources/jquery/images/jquery.arrowSteps.divider-ltr.png
resources/jquery/images/jquery.arrowSteps.divider-rtl.png
resources/jquery/images/jquery.arrowSteps.head-ltr.png
resources/jquery/images/jquery.arrowSteps.head-rtl.png
resources/jquery/images/jquery.arrowSteps.tail-ltr.png
resources/jquery/images/marker.png
resources/jquery/images/mask.png
resources/mediawiki.special/images/glyph-people-large.png
resources/mediawiki.special/images/icon-contributors.png
resources/mediawiki.special/images/icon-edits.png
resources/mediawiki.special/images/icon-lock.png
resources/mediawiki.special/images/icon-pages.png
resources/mediawiki/images/arrow-collapsed-ltr.png
resources/mediawiki/images/arrow-collapsed-rtl.png
resources/mediawiki/images/arrow-expanded.png
skins/common/images/Arr_u.png
skins/common/images/ar/button_headline.png
skins/common/images/ar/button_nowiki.png
skins/common/images/arrow_disabled_left_25.png
skins/common/images/arrow_disabled_right_25.png
skins/common/images/arrow_right_25.png
skins/common/images/button_hr.png
skins/common/images/button_nowiki.png
skins/common/images/button_sig.png
skins/common/images/button_template.png
skins/common/images/critical-32.png
skins/common/images/fa/button_nowiki.png
skins/common/images/feed-icon.png
skins/common/images/magnify-clip-rtl.png
skins/common/images/question-small.png
skins/common/images/tick-32.png
skins/common/images/warning-32.png
skins/modern/external.png
skins/monobook/external-ltr.png
skins/monobook/external-rtl.png
skins/vector/images/edit-icon.png
skins/vector/images/external-link-ltr-icon.png
skins/vector/images/external-link-rtl-icon.png
skins/vector/images/mail-icon.png
skins/vector/images/news-icon.png
skins/vector/images/page-fade.png
skins/vector/images/portal-break-ltr.png
skins/vector/images/preferences-break.png
skins/vector/images/tab-break.png
skins/vector/images/talk-icon.png
skins/vector/images/video-icon.png

index 34e474a..3112e26 100644 (file)
@@ -54,6 +54,8 @@ production.
   $wgRCFeeds configuration array. $wgRCFeeds makes both the format and
   destination of recent change notifications customizable, and allows for
   multiple destinations to be specified.
+* (bug 53862) portal-url, currentevents-url and helppage have been removed from the
+  default Sidebar.
 
 === New features in 1.22 ===
 * (bug 44525) mediawiki.jqueryMsg can now parse (whitelisted) HTML elements and attributes.
@@ -214,6 +216,9 @@ production.
 * Add deferrable update support for callback/closure
 * Add TitleMove hook before page renames
 * Revision deletion backend code is moved out of SpecialRevisiondelete
+* Add a variable (wgRedactedFunctionArguments) to redact the values sent as certain function
+  parameters from exception stack traces.
+* Added {{REVISIONSIZE}} variable to get the current size of a revision.
 
 === Bug fixes in 1.22 ===
 * Disable Special:PasswordReset when $wgEnableEmail is false. Previously one
@@ -230,8 +235,8 @@ production.
 * mw.util.tooltipAccessKeyRegexp: The regex now matches "option-" as well.
   Support for Mac "option" was added in 1.16, but the regex was never updated.
 * (bug 46768) Usernames of blocking users now display correctly, even if numeric.
-* (bug 39590) {{PAGESIZE}} for the current page and self-transclusions now
-  show the most up to date result always instead of being a revision behind.
+* (bug 39590) Self-transclusions now show the most up to date result always
+  after save instead of being a revision behind.
 * A bias in wfRandomString() toward digits 1-7 has been corrected. Generated
   strings will now start with digits 0 and 8-f as often as they should.
 * (bug 45371) Removed Parser_LinkHooks and CoreLinkFunctions classes.
index 22b7f1e..51c6c3d 100644 (file)
@@ -4880,6 +4880,37 @@ $wgShowSQLErrors = false;
  */
 $wgShowExceptionDetails = false;
 
+/**
+ * Array of functions which need parameters redacted from stack traces shown to
+ * clients and logged. Keys are in the format '[class::]function', and the
+ * values should be either an integer or an array of integers. These are the
+ * indexes of the parameters which need to be kept secret.
+ * @since 1.22
+ */
+$wgRedactedFunctionArguments = array(
+       'AuthPlugin::setPassword' => 1,
+       'AuthPlugin::authenticate' => 1,
+       'AuthPlugin::addUser' => 1,
+
+       'DatabaseBase::__construct' => 2,
+       'DatabaseBase::open' => 2,
+
+       'SpecialChangeEmail::attemptChange' => 1,
+       'SpecialChangePassword::attemptReset' => 0,
+
+       'User::setPassword' => 0,
+       'User::setInternalPassword' => 0,
+       'User::checkPassword' => 0,
+       'User::setNewpassword' => 0,
+       'User::comparePasswords' => array( 0, 1 ),
+       'User::checkTemporaryPassword' => 0,
+       'User::setToken' => 0,
+       'User::crypt' => 0,
+       'User::oldCrypt' => 0,
+       'User::getPasswordValidity' => 0,
+       'User::isValidPassword' => 0,
+);
+
 /**
  * If true, show a backtrace for database errors
  */
index e1bfb2d..39fe6f4 100644 (file)
@@ -127,7 +127,7 @@ class MWException extends Exception {
 
                if ( $wgShowExceptionDetails ) {
                        return '<p>' . nl2br( htmlspecialchars( $this->getMessage() ) ) .
-                               '</p><p>Backtrace:</p><p>' . nl2br( htmlspecialchars( $this->getTraceAsString() ) ) .
+                               '</p><p>Backtrace:</p><p>' . nl2br( htmlspecialchars( MWExceptionHandler::formatRedactedTrace( $this ) ) ) .
                                "</p>\n";
                } else {
                        return "<div class=\"errorbox\">" .
@@ -152,7 +152,7 @@ class MWException extends Exception {
 
                if ( $wgShowExceptionDetails ) {
                        return $this->getMessage() .
-                               "\nBacktrace:\n" . $this->getTraceAsString() . "\n";
+                               "\nBacktrace:\n" . MWExceptionHandler::formatRedactedTrace( $this ) . "\n";
                } else {
                        return "Set \$wgShowExceptionDetails = true; " .
                                "in LocalSettings.php to show detailed debugging information.\n";
@@ -275,7 +275,7 @@ class MWException extends Exception {
                $log = $this->getLogMessage();
                if ( $log ) {
                        if ( $wgLogExceptionBacktrace ) {
-                               wfDebugLog( 'exception', $log . "\n" . $this->getTraceAsString() . "\n" );
+                               wfDebugLog( 'exception', $log . "\n" . MWExceptionHandler::formatRedactedTrace( $this ) . "\n" );
                        } else {
                                wfDebugLog( 'exception', $log );
                        }
@@ -633,7 +633,7 @@ class MWExceptionHandler {
                                $message = "MediaWiki internal error.\n\n";
 
                                if ( $wgShowExceptionDetails ) {
-                                       $message .= 'Original exception: ' . $e->__toString() . "\n\n" .
+                                       $message .= 'Original exception: ' . self::formatRedactedTrace( $e ) . "\n\n" .
                                                'Exception caught inside exception handler: ' . $e2->__toString();
                                } else {
                                        $message .= "Exception caught inside exception handler.\n\n" .
@@ -650,11 +650,10 @@ class MWExceptionHandler {
                                }
                        }
                } else {
-                       $message = "Unexpected non-MediaWiki exception encountered, of type \"" . get_class( $e ) . "\"\n" .
-                               $e->__toString() . "\n";
+                       $message = "Unexpected non-MediaWiki exception encountered, of type \"" . get_class( $e ) . "\"";
 
                        if ( $wgShowExceptionDetails ) {
-                               $message .= "\n" . $e->getTraceAsString() . "\n";
+                               $message .= "\nexception '" . get_class( $e ) . "' in " . $e->getFile() . ":" . $e->getLine() . "\nStack trace:\n" . self::formatRedactedTrace( $e ) . "\n";
                        }
 
                        if ( $cmdLine ) {
@@ -709,4 +708,53 @@ class MWExceptionHandler {
                // Exit value should be nonzero for the benefit of shell jobs
                exit( 1 );
        }
+
+       /**
+        * Get the stack trace from the exception as a string, redacting certain function arguments in the process
+        * @param Exception $e The exception
+        * @return string The stack trace as a string
+        */
+       public static function formatRedactedTrace( Exception $e ) {
+               global $wgRedactedFunctionArguments;
+               $finalExceptionText = '';
+
+               foreach ( $e->getTrace() as $i => $call ) {
+                       $checkFor = array();
+                       if ( isset( $call['class'] ) ) {
+                               $checkFor[] = $call['class'] . '::' . $call['function'];
+                               foreach ( class_parents( $call['class'] ) as $parent ) {
+                                       $checkFor[] = $parent . '::' . $call['function'];
+                               }
+                       } else {
+                               $checkFor[] = $call['function'];
+                       }
+
+                       foreach ( $checkFor as $check ) {
+                               if ( isset( $wgRedactedFunctionArguments[$check] ) ) {
+                                       foreach ( (array)$wgRedactedFunctionArguments[$check] as $argNo ) {
+                                               $call['args'][$argNo] = 'REDACTED';
+                                       }
+                               }
+                       }
+
+                       $finalExceptionText .= "#{$i} {$call['file']}({$call['line']}): ";
+                       if ( isset( $call['class'] ) ) {
+                               $finalExceptionText .= $call['class'] . $call['type'] . $call['function'];
+                       } else {
+                               $finalExceptionText .= $call['function'];
+                       }
+                       $args = array();
+                       foreach ( $call['args'] as $arg ) {
+                               if ( is_object( $arg ) ) {
+                                       $args[] = 'Object(' . get_class( $arg ) . ')';
+                               } elseif( is_array( $arg ) ) {
+                                       $args[] = 'Array';
+                               } else {
+                                       $args[] = var_export( $arg, true );
+                               }
+                       }
+                       $finalExceptionText .=  '(' . implode( ', ', $args ) . ")\n";
+               }
+               return $finalExceptionText . '#' . ( $i + 1 ) . ' {main}';
+       }
 }
index adb2ab7..427a1ad 100644 (file)
@@ -124,6 +124,7 @@ class MagicWord {
                'revisionyear',
                'revisiontimestamp',
                'revisionuser',
+               'revisionsize',
                'subpagename',
                'subpagenamee',
                'talkspace',
index 9e21d03..c1545e6 100644 (file)
@@ -51,10 +51,6 @@ class StringUtils {
         */
        static function isUtf8( $value, $disableMbstring = false ) {
                $value = (string)$value;
-               if ( preg_match( "/[\x80-\xff]/S", $value ) === 0 ) {
-                       // String contains only ASCII characters, has to be valid
-                       return true;
-               }
 
                // If the mbstring extension is loaded, use it. However, before PHP 5.4, values above
                // U+10FFFF are incorrectly allowed, so we have to check for them separately.
@@ -68,6 +64,11 @@ class StringUtils {
                                ( $newPHP || preg_match( "/\xf4[\x90-\xbf]|[\xf5-\xff]/S", $value ) === 0 );
                }
 
+               if ( preg_match( "/[\x80-\xff]/S", $value ) === 0 ) {
+                       // String contains only ASCII characters, has to be valid
+                       return true;
+               }
+
                // PCRE implements repetition using recursion; to avoid a stack overflow (and segfault)
                // for large input, we check for invalid sequences (<= 5 bytes) rather than valid
                // sequences, which can be as long as the input string is. Multiple short regexes are
index f0c5a21..d4fe530 100644 (file)
@@ -373,7 +373,7 @@ abstract class DatabaseUpdater {
         * @param array $what what updates to perform
         */
        public function doUpdates( $what = array( 'core', 'extensions', 'stats' ) ) {
-               global $wgVersion, $wgLocalisationCacheConf;
+               global $wgVersion;
 
                $this->db->begin( __METHOD__ );
                $what = array_flip( $what );
@@ -390,14 +390,6 @@ abstract class DatabaseUpdater {
                        $this->checkStats();
                }
 
-               if ( isset( $what['purge'] ) ) {
-                       $this->purgeCache();
-
-                       if ( $wgLocalisationCacheConf['manualRecache'] ) {
-                               $this->rebuildLocalisationCache();
-                       }
-               }
-
                $this->setAppliedUpdates( $wgVersion, $this->updates );
 
                if ( $this->fileHandle ) {
index 7756473..e42c214 100644 (file)
@@ -15358,8 +15358,8 @@ Sprawdź plik php.ini i upewnij się, że <code>session.save_path</code> wskazuj
        'config-help-restart' => 'Czy chcesz usunąć wszystkie zapisane dane i uruchomić ponownie proces instalacji?',
        'config-restart' => 'Tak, zacznij od nowa',
        'config-welcome' => '=== Sprawdzenie środowiska instalacji ===
-Wykonywane są podstawowe testy sprawdzające czy to środowisko jest odpowiednie dla instalacji MediaWiki.
-Jeśli potrzebujesz pomocy podczas instalacji załącz wyniki tych testów.',
+Teraz zostaną wykonane podstawowe testy sprawdzające czy to środowisko jest odpowiednie dla instalacji MediaWiki.
+Jeśli potrzebujesz pomocy podczas instalacji, załącz wyniki tych testów.',
        'config-copyright' => "=== Prawa autorskie i warunki użytkowania ===
 
 $1
index 8df0e2c..70a94fe 100644 (file)
@@ -719,13 +719,7 @@ class CoreParserFunctions {
                $page = $title->getPrefixedText();
 
                $length = 0;
-               if ( $title->equals( $parser->getTitle() )
-                       && $parser->mInputSize !== false
-               ) {
-                       # We are on current page (and not in PST), so
-                       # take length of input to parser.
-                       $length = $parser->mInputSize;
-               } elseif ( isset( $cache[$page] ) ) {
+               if ( isset( $cache[$page] ) ) {
                        $length = $cache[$page];
                } elseif ( $parser->incrementExpensiveFunctionCount() ) {
                        $rev = Revision::newFromTitle( $title, false, Revision::READ_NORMAL );
index 3376734..eac2202 100644 (file)
@@ -191,6 +191,7 @@ class Parser {
        var $mRevisionId;   # ID to display in {{REVISIONID}} tags
        var $mRevisionTimestamp; # The timestamp of the specified revision ID
        var $mRevisionUser; # User to display in {{REVISIONUSER}} tag
+       var $mRevisionSize; # Size to display in {{REVISIONSIZE}} variable
        var $mRevIdForTs;   # The revision ID which was used to fetch the timestamp
        var $mInputSize = false; # For {{PAGESIZE}} on current page.
 
@@ -292,7 +293,7 @@ class Parser {
                $this->mLinkHolders = new LinkHolderArray( $this );
                $this->mLinkID = 0;
                $this->mRevisionObject = $this->mRevisionTimestamp =
-                       $this->mRevisionId = $this->mRevisionUser = null;
+                       $this->mRevisionId = $this->mRevisionUser = $this->mRevisionSize = null;
                $this->mVarCache = array();
                $this->mUser = null;
                $this->mLangLinkLanguages = array();
@@ -375,11 +376,13 @@ class Parser {
                $oldRevisionObject = $this->mRevisionObject;
                $oldRevisionTimestamp = $this->mRevisionTimestamp;
                $oldRevisionUser = $this->mRevisionUser;
+               $oldRevisionSize = $this->mRevisionSize;
                if ( $revid !== null ) {
                        $this->mRevisionId = $revid;
                        $this->mRevisionObject = null;
                        $this->mRevisionTimestamp = null;
                        $this->mRevisionUser = null;
+                       $this->mRevisionSize = null;
                }
 
                wfRunHooks( 'ParserBeforeStrip', array( &$this, &$text, &$this->mStripState ) );
@@ -566,6 +569,7 @@ class Parser {
                $this->mRevisionObject = $oldRevisionObject;
                $this->mRevisionTimestamp = $oldRevisionTimestamp;
                $this->mRevisionUser = $oldRevisionUser;
+               $this->mRevisionSize = $oldRevisionSize;
                $this->mInputSize = false;
                wfProfileOut( $fname );
                wfProfileOut( __METHOD__ );
@@ -2904,6 +2908,13 @@ class Parser {
                                wfDebug( __METHOD__ . ": {{REVISIONUSER}} used, setting vary-revision...\n" );
                                $value = $this->getRevisionUser();
                                break;
+                       case 'revisionsize':
+                               # Let the edit saving system know we should parse the page
+                               # *after* a revision ID has been assigned. This is for null edits.
+                               $this->mOutput->setFlag( 'vary-revision' );
+                               wfDebug( __METHOD__ . ": {{REVISIONSIZE}} used, setting vary-revision...\n" );
+                               $value = $this->getRevisionSize();
+                               break;
                        case 'namespace':
                                $value = str_replace( '_', ' ', $wgContLang->getNsText( $this->mTitle->getNamespace() ) );
                                break;
@@ -5803,6 +5814,27 @@ class Parser {
                return $this->mRevisionUser;
        }
 
+       /**
+        * Get the size of the revision
+        *
+        * @return int|null revision size
+        */
+       function getRevisionSize() {
+               if ( is_null( $this->mRevisionSize ) ) {
+                       $revObject = $this->getRevisionObject();
+
+                       # if this variable is subst: the revision id will be blank,
+                       # so just use the parser input size, because the own substituation
+                       # will change the size.
+                       if ( $revObject ) {
+                               $this->mRevisionSize = $revObject->getSize();
+                       } elseif ( $this->ot['wiki'] || $this->mOptions->getIsPreview() ) {
+                               $this->mRevisionSize = $this->mInputSize;
+                       }
+               }
+               return $this->mRevisionSize;
+       }
+
        /**
         * Mutator for $mDefaultSort
         *
index dde0609..3138f48 100644 (file)
@@ -183,21 +183,21 @@ class Preprocessor_DOM implements Preprocessor {
                        $xml = UtfNormal::cleanUp( $xml );
                        // 1 << 19 == XML_PARSE_HUGE, needed so newer versions of libxml2 don't barf when the XML is >256 levels deep
                        $result = $dom->loadXML( $xml, 1 << 19 );
-                       if ( !$result ) {
-                               wfProfileOut( __METHOD__ . '-loadXML' );
-                               if ( $cacheable ) {
-                                       wfProfileOut( __METHOD__ . '-cacheable' );
-                               }
-                               wfProfileOut( __METHOD__ );
-                               throw new MWException( __METHOD__ . ' generated invalid XML' );
-                       }
                }
-               $obj = new PPNode_DOM( $dom->documentElement );
+               if ( $result ) {
+                       $obj = new PPNode_DOM( $dom->documentElement );
+               }
                wfProfileOut( __METHOD__ . '-loadXML' );
+
                if ( $cacheable ) {
                        wfProfileOut( __METHOD__ . '-cacheable' );
                }
+
                wfProfileOut( __METHOD__ );
+
+               if ( !$result ) {
+                       throw new MWException( __METHOD__ . ' generated invalid XML' );
+               }
                return $obj;
        }
 
index 50f4370..caad8d6 100644 (file)
@@ -189,7 +189,7 @@ $messages = array(
 'tog-extendwatchlist' => 'Astenn ar roll evezhiañ a-benn diskouez an holl gemmoù ha neket ar re ziwezhañ hepken.',
 'tog-usenewrc' => "Diskouez ar c'hemmoù nevez en ur feson kempennoc'h (rekis eo JavaScript)",
 'tog-numberheadings' => 'Niverenniñ emgefre an titloù',
-'tog-showtoolbar' => 'Diskouez ar varrenn gant ar meuzioù skridaozañ',
+'tog-showtoolbar' => 'Diskouez ar varrenn ostilhoù aozañ',
 'tog-editondblclick' => 'Daouglikañ evit kemmañ pajennoù',
 'tog-editsection' => 'Kemmañ ur rann dre al liammoù [kemmañ]',
 'tog-editsectiononrightclick' => 'Kemmañ ur rann dre glikañ a-zehou<br /> war titl ar rann',
index 81661cd..58f90fc 100644 (file)
@@ -289,7 +289,7 @@ $messages = array(
 'tog-extendwatchlist' => 'Proširi spisak praćenja za pogled svih izmjena, ne samo nedavnih',
 'tog-usenewrc' => 'Grupiraj izmjene po stranicama sa nedavnih izmjena i praćenih članaka',
 'tog-numberheadings' => 'Automatski numeriši podnaslove',
-'tog-showtoolbar' => 'Prikaži dugmiće za izmjene (JavaScript)',
+'tog-showtoolbar' => 'Prikaži traku s alatkama za uređivanje',
 'tog-editondblclick' => 'Izmijeni stranice dvostrukim klikom',
 'tog-editsection' => 'Omogući da mijenjam pojedinačne odjeljke putem [uredi] linka',
 'tog-editsectiononrightclick' => 'Uključite uređivanje odjeljka sa pritiskom na desno dugme miša u naslovu odjeljka',
@@ -425,7 +425,7 @@ $messages = array(
 'newwindow' => '(otvara se u novom prozoru)',
 'cancel' => 'Poništite',
 'moredotdotdot' => 'Još...',
-'morenotlisted' => 'Više nije prikazano...',
+'morenotlisted' => 'Ovaj spisak nije kompletan.',
 'mypage' => 'Korisnička stranica',
 'mytalk' => 'Razgovor',
 'anontalk' => 'Razgovor za ovu IP adresu',
@@ -1968,8 +1968,7 @@ Možda možete pokušati kada bude manje opterećenje.',
 'upload_source_file' => ' (datoteka na Vašem računaru)',
 
 # Special:ListFiles
-'listfiles-summary' => 'Ova posebna stranica prikazuje sve postavljene datoteke.
-Kada je filtrirana od strane korisnika, prikazane su samo datoteke ako je korisnik postavio posljednju verziju te datoteke.',
+'listfiles-summary' => 'Ova posebna stranica prikazuje sve postavljene datoteke.',
 'listfiles_search_for' => 'Traži medije po imenu:',
 'imgfile' => 'datoteka',
 'listfiles' => 'Spisak slika',
index 94375cd..d9e0956 100644 (file)
@@ -1510,6 +1510,8 @@ Ha de tenir com a molt {{PLURAL:$1|un caràcter|$1 caràcters}}.',
 'right-editusercssjs' => "Editar els fitxers de configuració CSS i JS d'altres usuaris",
 'right-editusercss' => "Editar els fitxers de configuració CSS d'altres usuaris",
 'right-edituserjs' => "Editar els fitxers de configuració JS d'altres usuaris",
+'right-viewmywatchlist' => 'Mostra la llista de seguiment pròpia',
+'right-editmyoptions' => 'Edita les pròpies preferències',
 'right-rollback' => "Revertir ràpidament l'últim editor d'una pàgina particular",
 'right-markbotedits' => 'Marcar les reversions com a edicions de bot',
 'right-noratelimit' => "No veure's afectat pels límits d'accions",
@@ -1571,6 +1573,10 @@ Ha de tenir com a molt {{PLURAL:$1|un caràcter|$1 caràcters}}.',
 'action-userrights-interwiki' => "modificar permisos d'usuari en altres wikis",
 'action-siteadmin' => 'bloquejar o desbloquejar la base de dades',
 'action-sendemail' => 'enviar missatges de correu',
+'action-editmywatchlist' => 'edita la llista de seguiment',
+'action-viewmywatchlist' => 'mostra la llista de seguiment',
+'action-viewmyprivateinfo' => 'mostra la informació personal',
+'action-editmyprivateinfo' => 'edita la informació personal',
 
 # Recent changes
 'nchanges' => '$1 {{PLURAL:$1|canvi|canvis}}',
@@ -1861,6 +1867,7 @@ Si filtreu per usuari només es mostraran els fitxers la versió més recent del
 'listfiles_size' => 'Mida (octets)',
 'listfiles_description' => 'Descripció',
 'listfiles_count' => 'Versions',
+'listfiles-show-all' => 'Inclou versions antigues de les imatges',
 'listfiles-latestversion' => 'Versió actual',
 'listfiles-latestversion-yes' => 'Sí',
 
@@ -1961,6 +1968,8 @@ Potser voleu modificar-ne la descripció en la seva [$2 pàgina de descripció].
 'randomincategory' => 'Pàgina aleatòria en la categoria',
 'randomincategory-invalidcategory' => '«$1» no és un nom de categoria vàlid.',
 'randomincategory-nopages' => 'No hi ha pàgines a la categoria [[:Category:$1|$1]].',
+'randomincategory-selectcategory' => "Obté una pàgina a l'atzar de la categoria: $1 $2.",
+'randomincategory-selectcategory-submit' => 'Vés-hi',
 
 # Random redirect
 'randomredirect' => "Redirecció a l'atzar",
@@ -2820,6 +2829,8 @@ En el darrer cas, podeu fer servir un enllaç com ara [[{{#Special:Export}}/{{Me
 'thumbnail-more' => 'Amplia',
 'filemissing' => 'Fitxer inexistent',
 'thumbnail_error' => "S'ha produït un error en crear la miniatura: $1",
+'thumbnail_error_remote' => "Missatge d'error de $1:
+$2",
 'djvu_page_error' => "La pàgina DjVu està fora de l'abast",
 'djvu_no_xml' => "No s'ha pogut recollir l'XML per al fitxer DjVu",
 'thumbnail-temp-create' => "No s'ha pogut creat el fitxer de miniatura temporal",
@@ -3768,9 +3779,14 @@ Amb aquest programa heu d'haver rebut [{{SERVER}}{{SCRIPTPATH}}/COPYING una còp
 'version-entrypoints-header-url' => 'URL',
 
 # Special:Redirect
+'redirect' => 'Redirigeix per fitxer, usuari o ID de la revisió',
+'redirect-legend' => 'Redirigeix a un fitxer o a una pàgina',
 'redirect-submit' => 'Vés-hi',
+'redirect-lookup' => 'Consulta:',
 'redirect-value' => 'Valor:',
 'redirect-user' => "ID d'usuari",
+'redirect-revision' => 'Revisió de la pàgina',
+'redirect-file' => 'Nom del fitxer',
 'redirect-not-exists' => "No s'ha trobat el valor",
 
 # Special:FileDuplicateSearch
@@ -3821,6 +3837,7 @@ Amb aquest programa heu d'haver rebut [{{SERVER}}{{SCRIPTPATH}}/COPYING una còp
 'tags' => 'Etiquetes de canvi vàlides',
 'tag-filter' => "Filtre d'[[Special:Tags|etiquetes]]:",
 'tag-filter-submit' => 'Filtra',
+'tag-list-wrapper' => '([[Special:Tags|{{PLURAL:$1|Etiqueta|Etiquetes}}]]: $2)',
 'tags-title' => 'Etiquetes',
 'tags-intro' => 'Aquesta pàgina llista les etiquetes amb les què el programari pot marcar una modificació, i llur significat.',
 'tags-tag' => "Nom de l'etiqueta",
@@ -3847,6 +3864,7 @@ Amb aquest programa heu d'haver rebut [{{SERVER}}{{SCRIPTPATH}}/COPYING una còp
 'dberr-problems' => 'Ho sentim. Aquest lloc web està experimentant dificultats tècniques.',
 'dberr-again' => 'Intenteu esperar uns minuts i tornar a carregar.',
 'dberr-info' => '(No es pot contactar amb el servidor de dades: $1)',
+'dberr-info-hidden' => '(No es pot contactar amb el servidor de la base de dades)',
 'dberr-usegoogle' => 'Podeu intentar fer la cerca via Google mentrestant.',
 'dberr-outofdate' => 'Tingueu en compte que la seva indexació del nostre contingut pot no estar actualitzada.',
 'dberr-cachederror' => 'A continuació hi ha una còpia emmagatzemada de la pàgina demanada, que pot no estar actualitzada.',
index 8fe6a4c..806ea86 100644 (file)
@@ -820,8 +820,8 @@ $1',
 # Edit page toolbar
 'bold_sample' => 'Дерстино до йоза',
 'bold_tip' => 'Дерстино до йоза',
-'italic_sample' => 'Ð\9aÑ\83Ñ\80Ñ\81еттан до йоза',
-'italic_tip' => 'Ð\9aÑ\83Ñ\80Ñ\81еттан до йоза',
+'italic_sample' => 'Сеттан до йоза',
+'italic_tip' => 'Сеттан до йоза',
 'link_sample' => 'Хьажориган коьрта могlа',
 'link_tip' => 'Чоьхьа хьажориг',
 'extlink_sample' => 'http://www.example.com хьажориг корта',
index 5c91131..2c36d05 100644 (file)
@@ -3230,10 +3230,10 @@ Uložte jej na svůj disk a nahrajte ho sem.',
 'pageinfo-redirects-name' => 'Počet přesměrování na tuto stránku',
 'pageinfo-subpages-name' => 'Podstránky této stránky',
 'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|přesměrování}}; $3 {{PLURAL:$3|nepřesměrování}})',
-'pageinfo-firstuser' => 'Zakladatel stránky',
+'pageinfo-firstuser' => 'Stránku vytvořil',
 'pageinfo-firsttime' => 'Datum založení stránky',
-'pageinfo-lastuser' => 'Nejnovější editor',
-'pageinfo-lasttime' => 'Datum nejnovější editace',
+'pageinfo-lastuser' => 'Naposledy editoval',
+'pageinfo-lasttime' => 'Datum poslední editace',
 'pageinfo-edits' => 'Celkový počet editací',
 'pageinfo-authors' => 'Celkový počet různých autorů',
 'pageinfo-recent-edits' => 'Počet nedávných ($1) editací',
index 5e66259..75b2de9 100644 (file)
@@ -321,6 +321,7 @@ $magicWords = array(
        'revisionyear'            => array( 1,    'REVISIONYEAR' ),
        'revisiontimestamp'       => array( 1,    'REVISIONTIMESTAMP' ),
        'revisionuser'            => array( 1,    'REVISIONUSER' ),
+       'revisionsize'            => array( 1,    'REVISIONSIZE' ),
        'plural'                  => array( 0,    'PLURAL:' ),
        'fullurl'                 => array( 0,    'FULLURL:' ),
        'fullurle'                => array( 0,    'FULLURLE:' ),
index 6f9d9b1..9412b16 100644 (file)
@@ -2180,7 +2180,7 @@ Igal real on ära toodud esimene ja teine ümbersuunamisleht ning samuti teise 
 'shortpages' => 'Lühikesed leheküljed',
 'longpages' => 'Pikad leheküljed',
 'deadendpages' => 'Edasipääsuta leheküljed',
-'deadendpagestext' => 'Järgmised leheküljed ei viita ühelegi teisele viki leheküljele.',
+'deadendpagestext' => 'Järgmised leheküljed ei viita ühelegi teisele {{GRAMMAR:genitive|{{SITENAME}}}} leheküljele.',
 'protectedpages' => 'Kaitstud leheküljed',
 'protectedpages-indef' => 'Ainult määramata ajani kaitstud',
 'protectedpages-cascade' => 'Ainult kaskaadkaitsega',
index da53421..b34509b 100644 (file)
@@ -2038,7 +2038,7 @@ Voit tarvittaessa muokata [$2 tiedoston kuvaussivua] kohteessa.',
 'filerevert-legend' => 'Tiedoston palautus',
 'filerevert-intro' => '<span class="plainlinks">Olet palauttamassa tiedostoa \'\'\'[[Media:$1|$1]]\'\'\' [$4 versioon, joka luotiin $2 kello $3].</span>',
 'filerevert-comment' => 'Syy',
-'filerevert-defaultcomment' => 'Palautettiin versioon, joka luotiin $1 kello $2',
+'filerevert-defaultcomment' => 'Palautettiin versioon, joka luotiin $1 kello $2 (UTC)',
 'filerevert-submit' => 'Palauta',
 'filerevert-success' => '<span class="plainlinks">\'\'\'[[Media:$1|$1]]\'\'\' on palautettu [$4 versioon, joka luotiin $2 kello $3].</span>',
 'filerevert-badversion' => 'Tiedostosta ei ole luotu versiota kyseisellä ajan hetkellä.',
index 9ab71ee..7b6d14e 100644 (file)
@@ -1677,6 +1677,7 @@ A műveletet nem lehet visszavonni.',
 'recentchanges' => 'Friss változtatások',
 'recentchanges-legend' => 'A friss változtatások beállításai',
 'recentchanges-summary' => 'Ezen a lapon a wikiben történt legutóbbi fejleményeket lehet nyomon követni.',
+'recentchanges-noresult' => 'A megadott időszakban nincs a feltételeknek megfelelő szerkesztés.',
 'recentchanges-feed-description' => 'Kövesd a wiki friss változtatásait ezzel a hírcsatornával.',
 'recentchanges-label-newpage' => 'Ezzel a szerkesztéssel egy új lap jött létre',
 'recentchanges-label-minor' => 'Ez egy apró szerkesztés',
index 8013f33..362e80d 100644 (file)
@@ -641,6 +641,16 @@ Ciav provisòria: $2',
 
 # Special:ResetTokens
 'resettokens' => 'Riamposté ij geton',
+'resettokens-text' => "Ambelessì a peul riamposté ij geton ch'a permëtto d'acede a chèich dàit privà associà a sò cont.
+
+A dovrìa felo si për asar chiel a l'ha partagiaje con cheidun o si sò cont a l'é stàit compromëttù.",
+'resettokens-no-tokens' => 'A-i é gnun geton da riamposté.',
+'resettokens-legend' => 'Riamposté ij geton.',
+'resettokens-tokens' => 'Geton:',
+'resettokens-token-label' => '$1 (valor atual: $2)',
+'resettokens-watchlist-token' => "Geton për ël fluss an sl'aragnà (Atom/RSS) ëd [[Special:Watchlist|modìfiche a le pàgine che as ten sot-euj]]",
+'resettokens-done' => 'Geton riampostà.',
+'resettokens-resetbutton' => 'Riamposté ij geton selessionà',
 
 # Edit page toolbar
 'bold_sample' => 'Test an grassèt',
@@ -651,10 +661,10 @@ Ciav provisòria: $2',
 'link_tip' => 'Anliura interna',
 'extlink_sample' => "http://www.example.com tìtol dl'anliura",
 'extlink_tip' => 'Anliura esterna (che as visa dë buté ël prefiss http://)',
-'headline_sample' => "Antestassion dl'artìcol",
+'headline_sample' => 'Test dël tìtol',
 'headline_tip' => 'Antestassion dë scond livel',
-'nowiki_sample' => 'Che a buta ël test nen formatà ambelessì',
-'nowiki_tip' => 'Lassé un tòch ëd test fòra dla formatassion dla wiki',
+'nowiki_sample' => 'Che a buta ël test brut ambelessì',
+'nowiki_tip' => 'Lassé un tòch ëd test fòra dla sintassi dla wiki',
 'image_sample' => 'Esempi.jpg',
 'image_tip' => 'Figura anglobà ant ël test',
 'media_sample' => 'Esempi.ogg',
index acc8e80..73045ce 100644 (file)
@@ -2297,7 +2297,7 @@ $1',
 'pageswithprop-text' => 'Здесь перечислены страницы, у которых были вручную переопределены отдельные свойства.',
 'pageswithprop-prop' => 'Название свойства:',
 'pageswithprop-submit' => 'Найти',
-'pageswithprop-prophidden-long' => 'длинное значение текстового свойства скрыто ($1 килобайт)',
+'pageswithprop-prophidden-long' => 'длинное значение текстового свойства скрыто ($1)',
 'pageswithprop-prophidden-binary' => 'значение двоичного свойства скрыто ($1)',
 
 'doubleredirects' => 'Двойные перенаправления',
index 9b5a84c..3137b77 100644 (file)
@@ -522,7 +522,7 @@ $messages = array(
 'category_header' => 'Странице у категорији „$1“',
 'subcategories' => 'Поткатегорије',
 'category-media-header' => 'Датотеке у категорији „$1“',
-'category-empty' => "''Ова категорија тренутно не садржи странице или датотеке.''",
+'category-empty' => "<div style=\"margin:2em 1em 0 1em; padding:0.5em; border:1px solid #AAA; text-align:center;\">''Ова категорија тренутно не садржи странице или датотеке.''</div>",
 'hidden-categories' => '{{PLURAL:$1|Сакривена категорија|Сакривене категорије}}',
 'hidden-category-category' => 'Сакривене категорије',
 'category-subcat-count' => '{{PLURAL:$2|Ова категорија садржи само следећу поткатегорију.|Ова категорија има {{PLURAL:$1|следећу поткатегорију|следеће $1 поткатегорије|следећих $1 поткатегорија}}, од укупно $2.}}',
index bf0546b..6fbc84a 100644 (file)
@@ -430,7 +430,7 @@ $messages = array(
 'category_header' => 'Stranice u kategoriji „$1“',
 'subcategories' => 'Potkategorije',
 'category-media-header' => 'Datoteke u kategoriji „$1“',
-'category-empty' => "''Ova kategorija trenutno ne sadrži stranice ili datoteke.''",
+'category-empty' => "<div style=\"margin:2em 1em 0 1em; padding:0.5em; border:1px solid #AAA; text-align:center;\">''Ova kategorija trenutno ne sadrži stranice ili datoteke.''</div>",
 'hidden-categories' => '{{PLURAL:$1|Sakrivena kategorija|Sakrivene kategorije}}',
 'hidden-category-category' => 'Sakrivene kategorije',
 'category-subcat-count' => '{{PLURAL:$2|Ova kategorija sadrži samo sledeću potkategoriju.|Ova kategorija ima {{PLURAL:$1|sledeću potkategoriju|sledeće $1 potkategorije|sledećih $1 potkategorija}}, od ukupno $2.}}',
index d325863..b0ae349 100644 (file)
@@ -1531,7 +1531,7 @@ Aramanızın başına '''all:''' önekini ekleyerek tüm içeriği aramayı (tar
 'prefs-files' => 'Dosyalar',
 'prefs-custom-css' => 'Özel CSS',
 'prefs-custom-js' => 'Özel JS',
-'prefs-common-css-js' => 'Tüm kaplamalar için paylaşılan CSS/JS:',
+'prefs-common-css-js' => 'Tüm temalar için paylaşılan CSS/JS:',
 'prefs-reset-intro' => 'Bu sayfayı tercihlerinizi site varsayılanına döndürmek için kullanabilirsiniz. Bu geri alınamaz.',
 'prefs-emailconfirm-label' => 'E-posta doğrulaması:',
 'youremail' => 'E-posta:',
@@ -1550,7 +1550,7 @@ Aramanızın başına '''all:''' önekini ekleyerek tüm içeriği aramayı (tar
 $1 {{PLURAL:$1|karakterin|karakterin}} altında olmalı.',
 'yourgender' => 'Nasıl açıklamayı tercih edersiniz?',
 'gender-unknown' => 'Söylemek istemiyorsanız',
-'gender-male' => 'Erkek',
+'gender-male' => 'Wiki düzenlemelerinde kadın olarak',
 'gender-female' => 'Bayan',
 'prefs-help-gender' => 'Bu tercih ayarı isteğe bağlıdır.
 Yazılımda söz değerlerinin başlarında bulunan cinsiyete uygun gramerler için kullanılır.
index e89bc19..e30a8a2 100644 (file)
@@ -12,6 +12,7 @@
  * @author Reedy
  * @author Wu-chinese.com
  * @author Yfdyh000
+ * @author 十弌
  */
 
 $fallback = 'zh-hans';
@@ -26,10 +27,10 @@ $messages = array(
 'tog-extendwatchlist' => '扩展监控列表,显示所有改动,而弗仅仅是最近个',
 'tog-usenewrc' => '使用强化版个近段辰光个改动(JavaScript)',
 'tog-numberheadings' => '标题自动编号',
-'tog-showtoolbar' => '显示编辑工具条(JavaScript)',
-'tog-editondblclick' => '双击个辰光编辑页面(JavaScript)',
+'tog-showtoolbar' => '顯示編寫傢伙欄',
+'tog-editondblclick' => '雙捺來編寫頁面',
 'tog-editsection' => '允许通过点击【编辑】链接来编辑段落',
-'tog-editsectiononrightclick' => '允许右击标题编辑段落(JavaScript)',
+'tog-editsectiononrightclick' => '用右捺標題編輯段落',
 'tog-showtoc' => '显示目录(针对超过三只标题个页面)',
 'tog-rememberpassword' => '来许箇台电脑上记牢我个密码(可维持$1{{PLURAL:$1|日|日}})',
 'tog-watchcreations' => '拿我创建个页面添加到我个监控列表里向',
@@ -312,6 +313,11 @@ $1',
 # General errors
 'error' => '错误',
 'databaseerror' => '数据库错误',
+'databaseerror-text' => '一個數據庫討信發生。
+嘸數說明一個bug徠軟件裏向。',
+'databaseerror-textcl' => '一個數據庫討信賺爻發生。',
+'databaseerror-query' => '討信:$1',
+'databaseerror-error' => '賺爻:$1',
 'laggedslavemode' => '警告: 页面可能弗包含最近个更新。',
 'readonly' => '数据库锁定',
 'enterlockreason' => '请输入锁定个原因,包括预计解锁个辰光',
@@ -952,6 +958,7 @@ $1",
 'yourlanguage' => '语言:',
 'yournick' => '绰号:',
 'badsig' => '无效原始签名;检查 HTML 标签。',
+'gender-unknown' => '我弗想講',
 'email' => '电子邮件',
 'prefs-help-email' => '电子邮件是备选个,垃拉侬忘记密码个情况下头可以用得来重置密码。
 侬也可以让别人家通过侬个用户页或者讨论页来联系侬。',
@@ -1005,7 +1012,7 @@ $1",
 'newpageletter' => '新',
 'boteditletter' => '机',
 'newsectionsummary' => '/* $1 */ 新段落',
-'rc-enhanced-expand' => '显示细节(需要JavaScript支持)',
+'rc-enhanced-expand' => '展示零碎',
 'rc-enhanced-hide' => '拿细节囥脱',
 
 # Recent changes linked
@@ -1564,6 +1571,9 @@ Variants for Chinese language
 # Special:SpecialPages
 'specialpages' => '特殊页面',
 
+# Database error messages
+'dberr-info-hidden' => '(數據庫服務器連弗上)',
+
 # New logging system
 'revdelete-restricted' => '已将限制应用到管理员',
 'revdelete-unrestricted' => '已移除对管理员个限制',
index b76f57c..c474f00 100644 (file)
@@ -505,8 +505,6 @@ CREATE TABLE /*$wgDBprefix*/recentchanges (
    rc_this_oldid INT DEFAULT 0,
    rc_last_oldid INT DEFAULT 0,
    rc_type tinyint DEFAULT 0,
-   rc_moved_to_ns BIT DEFAULT 0,
-   rc_moved_to_title NVARCHAR(255)  DEFAULT '',
    rc_patrolled BIT DEFAULT 0,
    rc_ip NCHAR(40) DEFAULT '',
    rc_old_len INT DEFAULT 0,
index 74fb1b1..57b6e7e 100644 (file)
@@ -409,8 +409,6 @@ CREATE TABLE &mw_prefix.recentchanges (
   rc_this_oldid      NUMBER      DEFAULT 0 NOT NULL,
   rc_last_oldid      NUMBER      DEFAULT 0 NOT NULL,
   rc_type            CHAR(1)         DEFAULT '0' NOT NULL,
-  rc_moved_to_ns     NUMBER          DEFAULT 0 NOT NULL,
-  rc_moved_to_title  VARCHAR2(255),
   rc_patrolled       CHAR(1)         DEFAULT '0' NOT NULL,
   rc_ip              VARCHAR2(15),
   rc_old_len         NUMBER,
index 30a8e1b..4d44705 100644 (file)
@@ -405,8 +405,6 @@ CREATE TABLE recentchanges (
   rc_this_oldid      INTEGER      NOT NULL,
   rc_last_oldid      INTEGER      NOT NULL,
   rc_type            SMALLINT     NOT NULL  DEFAULT 0,
-  rc_moved_to_ns     SMALLINT,
-  rc_moved_to_title  TEXT,
   rc_patrolled       SMALLINT     NOT NULL  DEFAULT 0,
   rc_ip              CIDR,
   rc_old_len         INTEGER,
diff --git a/maintenance/tidyUpBug37714.php b/maintenance/tidyUpBug37714.php
new file mode 100644 (file)
index 0000000..1ad9c7e
--- /dev/null
@@ -0,0 +1,49 @@
+<?php
+require_once __DIR__ . '/Maintenance.php';
+
+/**
+ * Fixes all rows affected by https://bugzilla.wikimedia.org/show_bug.cgi?id=37714
+ */
+class TidyUpBug37714 extends Maintenance {
+       public function execute() {
+               // Search for all log entries which are about changing the visability of other log entries.
+               $result = wfGetDB( DB_SLAVE )->select(
+                       'logging',
+                       array( 'log_id', 'log_params' ),
+                       array(
+                               'log_type' => array( 'suppress', 'delete' ),
+                               'log_action' => 'event',
+                               'log_namespace' => NS_SPECIAL,
+                               'log_title' => SpecialPage::getTitleFor( 'Log' )->getText()
+                       ),
+                       __METHOD__
+               );
+
+               foreach ( $result as $row ) {
+                       $paramLines = explode( "\n", $row->log_params );
+                       $ids = explode( ',', $paramLines[0] ); // Array dereferencing is PHP >= 5.4 :(
+                       $result = wfGetDB( DB_SLAVE )->select( // Work out what log entries were changed here.
+                               'logging',
+                               'log_type',
+                               array( 'log_id' => $ids ),
+                               __METHOD__,
+                               'DISTINCT'
+                       );
+                       if ( $result->numRows() === 1 ) {
+                               // If there's only one type, the target title can be set to include it.
+                               $logTitle = SpecialPage::getTitleFor( 'Log', $result->current()->log_type )->getText();
+                               $this->output( 'Set log_title to "' . $logTitle . '" for log entry ' . $row->log_id . ".\n" );
+                               wfGetDB( DB_MASTER )->update(
+                                       'logging',
+                                       array( 'log_title' => $logTitle ),
+                                       array( 'log_id' => $row->log_id ),
+                                       __METHOD__
+                               );
+                               wfWaitForSlaves();
+                       }
+               }
+       }
+}
+
+$maintClass = 'TidyUpBug37714';
+require_once RUN_MAINTENANCE_IF_MAIN;
index 5df9f32..378217f 100644 (file)
@@ -140,10 +140,6 @@ class UpdateMediaWiki extends Maintenance {
                                $updates[] = 'noschema';
                        }
                        $updates[] = 'stats';
-
-                       if ( !$this->hasOption( 'nopurge' ) ) {
-                               $updates[] = 'purge';
-                       }
                }
 
                $updater = DatabaseUpdater::newForDb( $db, $shared, $this );
index ffe4d7d..bd61d96 100644 (file)
Binary files a/resources/jquery.chosen/chosen-sprite@2x.png and b/resources/jquery.chosen/chosen-sprite@2x.png differ
index dbbbfc7..ef17cc3 100644 (file)
Binary files a/resources/jquery.tipsy/images/tipsy.png and b/resources/jquery.tipsy/images/tipsy.png differ
index 26b9da5..e425e6e 100644 (file)
Binary files a/resources/jquery.ui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png and b/resources/jquery.ui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png differ
index b4b148d..72d4757 100644 (file)
Binary files a/resources/jquery.ui/themes/default/images/ui-bg_flat_75_ffffff_40x100.png and b/resources/jquery.ui/themes/default/images/ui-bg_flat_75_ffffff_40x100.png differ
index ad3d634..3b2914a 100644 (file)
Binary files a/resources/jquery.ui/themes/default/images/ui-bg_glass_55_fbf9ee_1x400.png and b/resources/jquery.ui/themes/default/images/ui-bg_glass_55_fbf9ee_1x400.png differ
index 42ccba2..8569c1b 100644 (file)
Binary files a/resources/jquery.ui/themes/default/images/ui-bg_glass_65_ffffff_1x400.png and b/resources/jquery.ui/themes/default/images/ui-bg_glass_65_ffffff_1x400.png differ
index 5a46b47..d6cc3c5 100644 (file)
Binary files a/resources/jquery.ui/themes/default/images/ui-bg_glass_75_dadada_1x400.png and b/resources/jquery.ui/themes/default/images/ui-bg_glass_75_dadada_1x400.png differ
index 7c9fa6c..3cd467e 100644 (file)
Binary files a/resources/jquery.ui/themes/default/images/ui-bg_highlight-soft_75_cccccc_1x100.png and b/resources/jquery.ui/themes/default/images/ui-bg_highlight-soft_75_cccccc_1x100.png differ
index f9fde8b..12a80c8 100644 (file)
Binary files a/resources/jquery.ui/themes/vector/images/titlebar-fade.png and b/resources/jquery.ui/themes/vector/images/titlebar-fade.png differ
index 83d6ff8..84ed2a2 100644 (file)
Binary files a/resources/jquery/images/jquery.arrowSteps.divider-ltr.png and b/resources/jquery/images/jquery.arrowSteps.divider-ltr.png differ
index 529d7b8..7cfbfeb 100644 (file)
Binary files a/resources/jquery/images/jquery.arrowSteps.divider-rtl.png and b/resources/jquery/images/jquery.arrowSteps.divider-rtl.png differ
index 3289617..eb07028 100644 (file)
Binary files a/resources/jquery/images/jquery.arrowSteps.head-ltr.png and b/resources/jquery/images/jquery.arrowSteps.head-ltr.png differ
index 3d9f70c..7ea2fdb 100644 (file)
Binary files a/resources/jquery/images/jquery.arrowSteps.head-rtl.png and b/resources/jquery/images/jquery.arrowSteps.head-rtl.png differ
index 92b872b..3ad990b 100644 (file)
Binary files a/resources/jquery/images/jquery.arrowSteps.tail-ltr.png and b/resources/jquery/images/jquery.arrowSteps.tail-ltr.png differ
index 3929bbb..19efb6c 100644 (file)
Binary files a/resources/jquery/images/marker.png and b/resources/jquery/images/marker.png differ
index b0a4d40..fe08de0 100644 (file)
Binary files a/resources/jquery/images/mask.png and b/resources/jquery/images/mask.png differ
index f43505e..0578be0 100644 (file)
Binary files a/resources/mediawiki.special/images/glyph-people-large.png and b/resources/mediawiki.special/images/glyph-people-large.png differ
index e9b8874..f933aa6 100644 (file)
Binary files a/resources/mediawiki.special/images/icon-contributors.png and b/resources/mediawiki.special/images/icon-contributors.png differ
index f4ec247..39f4f2d 100644 (file)
Binary files a/resources/mediawiki.special/images/icon-edits.png and b/resources/mediawiki.special/images/icon-edits.png differ
index 4b3d4ee..03f0eec 100644 (file)
Binary files a/resources/mediawiki.special/images/icon-lock.png and b/resources/mediawiki.special/images/icon-lock.png differ
index a406ce7..59513db 100644 (file)
Binary files a/resources/mediawiki.special/images/icon-pages.png and b/resources/mediawiki.special/images/icon-pages.png differ
index ea9c67a..b17e578 100644 (file)
Binary files a/resources/mediawiki/images/arrow-collapsed-ltr.png and b/resources/mediawiki/images/arrow-collapsed-ltr.png differ
index 081d3a8..a834548 100644 (file)
Binary files a/resources/mediawiki/images/arrow-collapsed-rtl.png and b/resources/mediawiki/images/arrow-collapsed-rtl.png differ
index fa4bf26..2bec798 100644 (file)
Binary files a/resources/mediawiki/images/arrow-expanded.png and b/resources/mediawiki/images/arrow-expanded.png differ
index 6132836..1aa543a 100644 (file)
Binary files a/skins/common/images/Arr_u.png and b/skins/common/images/Arr_u.png differ
index 04fb8f1..398e561 100644 (file)
Binary files a/skins/common/images/ar/button_headline.png and b/skins/common/images/ar/button_headline.png differ
index 12b986b..743ea61 100644 (file)
Binary files a/skins/common/images/ar/button_nowiki.png and b/skins/common/images/ar/button_nowiki.png differ
index 8f979aa..83df068 100644 (file)
Binary files a/skins/common/images/arrow_disabled_left_25.png and b/skins/common/images/arrow_disabled_left_25.png differ
index 11022f6..aa4fbf8 100644 (file)
Binary files a/skins/common/images/arrow_disabled_right_25.png and b/skins/common/images/arrow_disabled_right_25.png differ
index 9e1b550..3f8fee3 100644 (file)
Binary files a/skins/common/images/arrow_right_25.png and b/skins/common/images/arrow_right_25.png differ
index 19e4ad4..47e1ca4 100644 (file)
Binary files a/skins/common/images/button_hr.png and b/skins/common/images/button_hr.png differ
index c647de2..2ba818d 100644 (file)
Binary files a/skins/common/images/button_nowiki.png and b/skins/common/images/button_nowiki.png differ
index ff7348a..fe34b3f 100644 (file)
Binary files a/skins/common/images/button_sig.png and b/skins/common/images/button_sig.png differ
index 53b6f92..94d9d0b 100644 (file)
Binary files a/skins/common/images/button_template.png and b/skins/common/images/button_template.png differ
index dce5667..9b38e6a 100644 (file)
Binary files a/skins/common/images/critical-32.png and b/skins/common/images/critical-32.png differ
index 12b986b..743ea61 100644 (file)
Binary files a/skins/common/images/fa/button_nowiki.png and b/skins/common/images/fa/button_nowiki.png differ
index 7188fa2..00f49f6 100644 (file)
Binary files a/skins/common/images/feed-icon.png and b/skins/common/images/feed-icon.png differ
index cfddc27..ff85c07 100644 (file)
Binary files a/skins/common/images/magnify-clip-rtl.png and b/skins/common/images/magnify-clip-rtl.png differ
index 590f0cb..f7405d2 100644 (file)
Binary files a/skins/common/images/question-small.png and b/skins/common/images/question-small.png differ
index dfde170..34cfa9c 100644 (file)
Binary files a/skins/common/images/tick-32.png and b/skins/common/images/tick-32.png differ
index b14a831..0400734 100644 (file)
Binary files a/skins/common/images/warning-32.png and b/skins/common/images/warning-32.png differ
index acf260f..6308383 100644 (file)
Binary files a/skins/modern/external.png and b/skins/modern/external.png differ
index acf260f..6308383 100644 (file)
Binary files a/skins/monobook/external-ltr.png and b/skins/monobook/external-ltr.png differ
index 7d5ee37..5313234 100644 (file)
Binary files a/skins/monobook/external-rtl.png and b/skins/monobook/external-rtl.png differ
index 462ca64..43e4691 100644 (file)
Binary files a/skins/vector/images/edit-icon.png and b/skins/vector/images/edit-icon.png differ
index acf260f..6308383 100644 (file)
Binary files a/skins/vector/images/external-link-ltr-icon.png and b/skins/vector/images/external-link-ltr-icon.png differ
index 7d5ee37..5313234 100644 (file)
Binary files a/skins/vector/images/external-link-rtl-icon.png and b/skins/vector/images/external-link-rtl-icon.png differ
index 9823d72..0d93a2f 100644 (file)
Binary files a/skins/vector/images/mail-icon.png and b/skins/vector/images/mail-icon.png differ
index ade1a37..6f27054 100644 (file)
Binary files a/skins/vector/images/news-icon.png and b/skins/vector/images/news-icon.png differ
index 1436cda..b4a6034 100644 (file)
Binary files a/skins/vector/images/page-fade.png and b/skins/vector/images/page-fade.png differ
index cec17ea..20bf366 100644 (file)
Binary files a/skins/vector/images/portal-break-ltr.png and b/skins/vector/images/portal-break-ltr.png differ
index e59f578..b529308 100644 (file)
Binary files a/skins/vector/images/preferences-break.png and b/skins/vector/images/preferences-break.png differ
index c03c72e..6d37af5 100644 (file)
Binary files a/skins/vector/images/tab-break.png and b/skins/vector/images/tab-break.png differ
index c443435..0332054 100644 (file)
Binary files a/skins/vector/images/talk-icon.png and b/skins/vector/images/talk-icon.png differ
index e934a0f..ed85232 100644 (file)
Binary files a/skins/vector/images/video-icon.png and b/skins/vector/images/video-icon.png differ