r106667 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r106666‎ | r106667 | r106668 >
Date:18:16, 19 December 2011
Author:nikerabbit
Status:ok
Tags:
Comment:
Narayam and WebFonts to trunk state
and MFT r103260 r103315 r105832 r105855
Modified paths:
  • /branches/wmf/1.18wmf1/extensions/CategoryTree/CategoryTreeFunctions.php (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/Narayam.i18n.php (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/Narayam.php (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.core-modern.css (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.core.css (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.core.js (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.ta-bamini.js (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.ta.js (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.tcy.js (added) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/WebFonts.hooks.php (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/WebFonts.i18n.php (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/WebFonts.php (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.css (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.fontlist.js (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.js (modified) (history)
  • /branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.modern.css (modified) (history)
  • /branches/wmf/1.18wmf1/includes/Linker.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/Names.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesAr.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesAry.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesArz.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesAz.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesEn.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesFa.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesHe.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesKm.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesNe.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesQqq.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesRo.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesShi.php (modified) (history)
  • /branches/wmf/1.18wmf1/languages/messages/MessagesUk.php (modified) (history)

Diff [purge]

Index: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.core-modern.css
@@ -5,6 +5,10 @@
66 overflow: visible !important;
77 }
88
 9+li#pt-narayam {
 10+ margin-left: 5px;
 11+}
 12+
913 div#narayam-menu div.menu-items {
1014 top: 0px;
1115 font-size: 1.2em;
Index: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.ta.js
@@ -7,8 +7,8 @@
88
99 // Normal rules
1010 var rules = [
11 -['ச்h','h','ச்ஹ்',],
12 -['ழ்h','h','ழ்ஹ்',],
 11+['ச்h','h','ச்ஹ்'],
 12+['ழ்h','h','ழ்ஹ்'],
1313
1414 //'(ஸ்ரிi|ஸ்ர்I)', '','',
1515
Index: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.core.css
@@ -15,8 +15,12 @@
1616 div#narayam-menu {
1717 direction: ltr;
1818 float: left;
 19+ display: none;
1920 }
2021
 22+div#narayam-menu.open {
 23+ display: block;
 24+}
2125 /* @noflip */
2226 body.rtl div#narayam-menu {
2327 direction: rtl;
Index: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.core.js
@@ -56,7 +56,7 @@
5757 if ( regex.test( str ) // Input string match
5858 &&
5959 (
60 - rules[i][1].length == 0 // Keybuffer match not required
 60+ rules[i][1].length === 0 // Keybuffer match not required
6161 ||
6262 ( // Keybuffer match specified, so it should be met
6363 rules[i][1].length > 0
@@ -130,7 +130,7 @@
131131 shiftKey: false,
132132 cmdKey: false,
133133 key: 'm'
134 - }
 134+ };
135135 // Browser sniffing to determine the available shortcutKey
136136 // Refer: mediawiki.util.js and en.wikipedia.org/wiki/Access_key
137137 var profile = $.client.profile();
@@ -168,7 +168,7 @@
169169 text += 'Command-';
170170 }
171171 text += shortcutKey.key.toUpperCase();
172 - return text;
 172+ return text;
173173 }
174174
175175 /**
@@ -428,7 +428,7 @@
429429 */
430430 this.getScheme = function( name ) {
431431 return schemes[name];
432 - }
 432+ };
433433
434434 /**
435435 * Change the current transliteration scheme
@@ -438,9 +438,9 @@
439439 var recent = $.cookie( 'narayam-scheme' ) || [];
440440 if ( typeof recent === "string" ) {
441441 recent = recent.split( "," );
442 - };
 442+ }
443443 recent = $.grep( recent, function( value ) {
444 - return value != name;
 444+ return value != name;
445445 } );
446446 recent.unshift( name );
447447 recent = recent.slice( 0, recentItemsLength );
@@ -465,7 +465,7 @@
466466 this.setup = function() {
467467 that.buildMenu();
468468 // Restore state from cookies
469 - var recentSchemes = $.cookie( 'narayam-scheme' );
 469+ var recent = $.cookie( 'narayam-scheme' );
470470 var lastScheme = null;
471471 if ( typeof recent === "string" ) {
472472 lastScheme = recent.split( "," )[0];
@@ -531,7 +531,7 @@
532532 if ( $.inArray( scheme, seen ) > -1 ) { continue; }
533533 seen.push( scheme );
534534 if ( count++ > recentItemsLength ) { break; }
535 - $narayamMenuItem = that.buildMenuItem( scheme );
 535+ var $narayamMenuItem = that.buildMenuItem( scheme );
536536 $narayamMenuItem.addClass( 'narayam-recent-menu-item' );
537537 $narayamMenuItems.append( $narayamMenuItem );
538538 }
@@ -548,7 +548,7 @@
549549 haveSchemes = true;
550550 if ( $.inArray( scheme, seen ) !== -1 ) { continue; }
551551 seen.push( scheme );
552 - $narayamMenuItem = that.buildMenuItem( scheme );
 552+ var $narayamMenuItem = that.buildMenuItem( scheme );
553553 $narayamMenuItems.append( $narayamMenuItem );
554554 }
555555 }
@@ -558,11 +558,6 @@
559559 return null;
560560 }
561561
562 - // Event listener for scheme selection.
563 - $( '.narayam-scheme', $( '#narayam-menu-items > ul')[0] ).live( 'click', function() {
564 - that.setScheme( $( this ).val() );
565 - } );
566 -
567562 // Build enable/disable checkbox and label
568563 var $checkbox = $( '<input type="checkbox" id="narayam-toggle" />' );
569564 $checkbox
@@ -578,13 +573,14 @@
579574 var $moreLink = $( '<a>' )
580575 .text( mw.msg( 'narayam-more-imes' ) )
581576 .prop( 'href', '#' )
582 - .click( function() {
 577+ .click( function( event ) {
583578 $('.narayam-scheme-dynamic-item').toggle( 'fast' );
584579 if ( $('li.narayam-more-imes-link').hasClass( 'open' ) ) {
585580 $('li.narayam-more-imes-link').removeClass( 'open' );
586581 } else {
587582 $('li.narayam-more-imes-link').addClass( 'open' );
588583 }
 584+ event.stopPropagation();
589585 } );
590586
591587 $narayamMenuItems.append( $( '<li>' )
@@ -598,7 +594,7 @@
599595 // Donot repeat the input methods in more input methods section.
600596 // If already shown on recent items.
601597 if ( $.inArray( langscheme, seen ) > -1 ) { continue; }
602 - $narayamMenuItem = that.buildMenuItem( langscheme );
 598+ var $narayamMenuItem = that.buildMenuItem( langscheme );
603599 $narayamMenuItem.addClass( 'narayam-scheme-dynamic-item' );
604600 $narayamMenuItems.append( $narayamMenuItem );
605601
@@ -606,14 +602,16 @@
607603 }
608604
609605 // Event listener for scheme selection - dynamic loading of rules.
610 - $( '.narayam-scheme', $('.narayam-scheme-dynamic-item') ).live( 'click', function() {
 606+ $narayamMenuItems.delegate( 'input:radio', 'click', function( ) {
611607 that.setScheme( $( this ).val() );
612 - // rebuild the menu items with recent items.
613 - $( '#narayam-menu' ).html( $.narayam.buildMenuItems() );
614 - $( '#narayam-menu-items' ).css( 'left', $('li#pt-narayam').offset().left );
615 - $( '#narayam-' + $( this ).val() ).prop( 'checked', true );
616 - if ( enabled ) {
617 - $( '#narayam-toggle' ).prop( 'checked', true );
 608+ if ( $( this ).parent().hasClass( 'narayam-scheme-dynamic-item' ) ){
 609+ // rebuild the menu items with recent items.
 610+ $( '#narayam-menu' ).html( $.narayam.buildMenuItems() );
 611+ $( '#narayam-menu-items' ).css( 'left', $( 'li#pt-narayam' ).offset().left );
 612+ $( '#narayam-' + $( this ).val() ).prop( 'checked', true );
 613+ if ( enabled ) {
 614+ $( '#narayam-toggle' ).prop( 'checked', true );
 615+ }
618616 }
619617 } );
620618
@@ -654,19 +652,53 @@
655653 var $li = $( '<li>' ).attr( 'id', 'pt-narayam' ).append( $link );
656654
657655 // If rtl, add to the right of top personal links. Else, to the left
658 - var fn = $( 'body' ).hasClass( 'rtl' ) ? "append" : "prepend";
659 - $( '#p-personal ul:first' )[fn]( $li );
 656+ var rtlEnv = $( 'body' ).hasClass( 'rtl' );
 657+ var positionFunction = rtlEnv ? "append" : "prepend";
 658+ $( '#p-personal ul:first' )[positionFunction]( $li );
660659 $( 'body' ).prepend( $menu );
661660 $menu.hide();
662 - $li.hover( function() {
663 - $menuItemsDiv.css( 'left', $li.offset().left );
664 - $menu.show();
665 - });
666 - $menu.hover( function() {
667 - }, function() {
 661+ $li.click( function( event ) {
 662+ var menuSide, menuOffset, distanceToEdge;
 663+
 664+ if ( rtlEnv ) {
 665+ distanceToEdge = $li.outerWidth() + $li.offset().left;
 666+ if ( $menuItemsDiv.outerWidth() > distanceToEdge ) {
 667+ menuSide = 'left';
 668+ menuOffset = $li.offset().left;
 669+ } else {
 670+ menuSide = 'right';
 671+ menuOffset = $(window).width() - distanceToEdge;
 672+ }
 673+ } else {
 674+ distanceToEdge = $(window).width() - $li.offset().left;
 675+ if ( $menuItemsDiv.outerWidth() > distanceToEdge ) {
 676+ menuSide = 'right';
 677+ menuOffset = distanceToEdge - $li.outerWidth();
 678+ } else {
 679+ menuSide = 'left';
 680+ menuOffset = $li.offset().left;
 681+ }
 682+ }
 683+
 684+ $menuItemsDiv.css( menuSide, menuOffset );
 685+
 686+ if( $menu.hasClass( 'open' ) ){
 687+ $menu.removeClass( 'open' );
 688+ $menu.hide();
 689+ } else {
 690+ $( 'div.open' ).removeClass( 'open' );
 691+ $menu.addClass( 'open' );
 692+ $menu.show();
 693+ event.stopPropagation();
 694+ }
 695+ } );
 696+ $( 'html' ).click( function() {
 697+ $menu.removeClass( 'open' );
668698 $menu.hide();
669 - });
670 -
 699+ } );
 700+ $menu.click( function( event ) {
 701+ event.stopPropagation();
 702+ } );
671703 // Workaround for IE bug - activex components like input fields
672704 // coming on top of everything.
673705 // TODO: is there a better solution other than hiding it on hover?
Index: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.tcy.js
@@ -0,0 +1,12 @@
 2+/**
 3+ * Transliteration based keyboard for Tulu, based on Kannada
 4+ * @author Santhosh Thottingal ([[user:Santhosh.thottingal]])
 5+ * @date 2011-12-19
 6+ * License: GPLv3
 7+ */
 8+
 9+// copy the rules from kannada transliteration.
 10+tcy_scheme = $.narayam.getScheme( 'kn' );
 11+tcy_scheme.namemsg = 'narayam-tcy';
 12+jQuery.narayam.addScheme( 'tcy', tcy_scheme );
 13+
Property changes on: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.tcy.js
___________________________________________________________________
Added: svn:eol-style
114 + native
Index: branches/wmf/1.18wmf1/extensions/Narayam/resources/ext.narayam.rules.ta-bamini.js
@@ -15,7 +15,7 @@
1616 ['t', '', 'வ'],
1717 ['y', '', 'ல'],
1818 ['u', '', 'ர'],
19 -//['i', '', ''],
 19+['i', '', 'ை'],
2020 ['o', '', 'ழ'],
2121 ['p', '', 'ி'],
2222 ['\\[', '', 'ஜ'],
@@ -36,16 +36,19 @@
3737 ['c', '', 'உ'],
3838 ['v', '', 'எ'],
3939 ['b', '', 'டி'],
 40+['n', '', 'ெ'],
 41+['N', '', 'ே'],
4042 ['m', '', 'அ'],
4143 [',', '', 'இ'],
4244 ['/', '', 'ஃ'],
43 -
4445 ['@', '', ';'],
4546 ['#', '', 'சூ'],
4647 ['\\$', '', 'கூ'],
4748 ['%', '', 'மூ'],
4849 ['\\^', '', 'டூ'],
4950 ['&', '', 'ரூ'],
 51+['\\*', '', 'ழூ'],
 52+['=', '', 'ஸ்ரீ'],
5053 ['Q', '', 'ஞ'],
5154 ['W', '', 'று'],
5255 ['E', '', 'நு'],
@@ -73,13 +76,16 @@
7477 ['B', '', 'டீ'],
7578 ['M', '', 'ஆ'],
7679 ['\\<', '', 'ஈ'],
77 -['\\>', '', ',']
 80+['\\>', '', ','],
 81+['([ஜஷஸஹ])\\{', '', '$1ு'],
 82+['([ஜஷஸஹ])\\_', '', '$1ூ']
7883 ];
7984
 85+
8086 jQuery.narayam.addScheme( 'ta-bamini', {
8187 'namemsg': 'narayam-ta-bamini',
8288 'extended_keyboard': false,
83 - 'lookbackLength': 0,
 89+ 'lookbackLength': 2,
8490 'keyBufferLength': 0,
8591 'rules': rules
8692 } );
Index: branches/wmf/1.18wmf1/extensions/Narayam/Narayam.i18n.php
@@ -54,6 +54,7 @@
5555 'narayam-ta-inscript' => 'Tamil InScript',
5656 'narayam-ta' => 'Tamil Transliteration',
5757 'narayam-ta-bamini' => 'Tamil Bamini',
 58+ 'narayam-tcy' => 'Tulu Transliteration',
5859 'narayam-te-inscript' => 'Telugu InScript',
5960 'narayam-bn-avro' => 'Bengali Avro',
6061 'narayam-bn-inscript' => 'Bengali InScript',
@@ -365,6 +366,7 @@
366367 'narayam-bn-nkb' => 'NKB bengaleg',
367368 'narayam-ur' => 'Standard ourdou',
368369 'narayam-de' => 'Alamaneg',
 370+ 'narayam-he-standard-2011' => 'Hebraeg standard 2011',
369371 );
370372
371373 /** Bosnian (Bosanski)
@@ -1339,7 +1341,7 @@
13401342 'narayam-ne' => 'നേപ്പാളി ലിപ്യന്തരണം',
13411343 'narayam-ne-inscript' => 'നേപ്പാളി ഇൻസ്ക്രിപ്റ്റ്',
13421344 'narayam-or' => 'ഒറിയ ലിപ്യന്തരണം',
1343 - 'narayam-or-lekhani' => 'ഒഡിയ ലേഖനി',
 1345+ 'narayam-or-lekhani' => 'ഒഡിയ ലെഖാനി',
13441346 'narayam-or-inscript' => 'ഒറിയ ഇൻസ്ക്രിപ്റ്റ്',
13451347 'narayam-pa-phonetic' => 'ഗുരുമുഖി പഞ്ചാബി ഫൊണറ്റിക്',
13461348 'narayam-pa-inscript' => 'ഗുരുമുഖി പഞ്ചാബി ഇൻസ്ക്രിപ്റ്റ്',
@@ -1351,6 +1353,7 @@
13521354 'narayam-ta-inscript' => 'തമിഴ് ഇൻസ്ക്രിപ്റ്റ്',
13531355 'narayam-ta' => 'തമിഴ് ലിപ്യന്തരണം',
13541356 'narayam-ta-bamini' => 'തമിൾ ഭാമിനി',
 1357+ 'narayam-tcy' => 'തുളു ലിപ്യന്തരണം',
13551358 'narayam-te-inscript' => 'തെലുഗു ഇൻസ്ക്രിപ്റ്റ്',
13561359 'narayam-bn-avro' => 'ബംഗാളി അവ്രൊ',
13571360 'narayam-bn-inscript' => 'ബംഗാളി ഇൻസ്ക്രിപ്റ്റ്',
Index: branches/wmf/1.18wmf1/extensions/Narayam/Narayam.php
@@ -32,7 +32,7 @@
3333 'name' => 'Narayam',
3434 'version' => 0.1,
3535 'author' => array( '[http://junaidpv.in Junaid P V]', 'Roan Kattouw' ),
36 - 'url' => 'http://www.mediawiki.org/wiki/Extension:Narayam',
 36+ 'url' => 'https://www.mediawiki.org/wiki/Extension:Narayam',
3737 'descriptionmsg' => 'narayam-desc'
3838 );
3939
@@ -135,6 +135,9 @@
136136 'ta-bamini' => array( 'ext.narayam.rules.ta-bamini', 'beta' ),
137137 'ta-inscript' => array( 'ext.narayam.rules.ta-inscript', 'beta' ),
138138 ),
 139+ 'tcy' => array(
 140+ 'tcy' => array( 'ext.narayam.rules.tcy', 'beta' ),
 141+ ),
139142 'te' => array(
140143 'te-inscript' => 'ext.narayam.rules.te-inscript',
141144 ),
@@ -237,6 +240,7 @@
238241 'narayam-ta-inscript',
239242 'narayam-ta',
240243 'narayam-ta-bamini',
 244+ 'narayam-tcy',
241245 'narayam-te-inscript',
242246 'narayam-ur',
243247 ),
@@ -430,3 +434,8 @@
431435 'scripts' => 'resources/ext.narayam.rules.mai-inscript.js',
432436 'dependencies' => 'ext.narayam.rules.hi-inscript',
433437 );
 438+$wgResourceModules['ext.narayam.rules.tcy'] = $narayamTpl + array(
 439+ 'scripts' => 'resources/ext.narayam.rules.tcy.js',
 440+ 'dependencies' => 'ext.narayam.rules.kn',
 441+);
 442+
Index: branches/wmf/1.18wmf1/extensions/WebFonts/WebFonts.hooks.php
@@ -11,6 +11,9 @@
1212
1313 /**
1414 * BeforePageDisplay hook handler.
 15+ * @param $out OutputPage
 16+ * @param $skin Skin
 17+ * @return bool
1518 */
1619 public static function addModules( $out, $skin ) {
1720
@@ -23,6 +26,9 @@
2427
2528 /**
2629 * GetPreferences hook handler.
 30+ * @param $user User
 31+ * @param $preferences array
 32+ * @return bool
2733 */
2834 public static function addPreference( $user, &$preferences ) {
2935 // A checkbox in preferences to enable WebFonts
@@ -35,11 +41,13 @@
3642
3743 return true;
3844 }
39 -
 45+
4046 /**
4147 * UserGetDefaultOptions hook handler.
 48+ * @param $defaultOptions array
 49+ * @return bool
4250 */
43 - public static function addDefaultOptions( &$defaultOptions ) {
 51+ public static function addDefaultOptions( &$defaultOptions ) {
4452 global $wgWebFontsEnabledByDefault;
4553 // By default, the preference page option to enable webfonts is set to wgWebFontsEnabledByDefault value.
4654 $defaultOptions['webfontsEnable'] = $wgWebFontsEnabledByDefault;
Index: branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.modern.css
@@ -5,8 +5,13 @@
66 overflow: visible!important;
77 }
88
 9+li#pt-webfont {
 10+ margin-left: 5px;
 11+}
 12+
913 div.webfontMenu div.menu {
1014 top: 0px;
 15+ position: relative;
1116 }
1217
1318 div#webfonts-menu li {
Index: branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.js
@@ -138,10 +138,10 @@
139139 fontFormats.push( "\t\turl('" + base + fontconfig.ttf + versionSuffix + "') format('truetype')" );
140140 }
141141
142 - styleString += fontFormats.join() + ";\n"
 142+ styleString += fontFormats.join() + ";\n";
143143 styleString += "\tfont-weight: normal;\n}\n</style>\n";
144144
145 - //inject the css to the head of the page.
 145+ //inject the css to the head of the page.
146146 $( styleString ).appendTo( 'head' );
147147 },
148148
@@ -231,6 +231,7 @@
232232 loadFontsForLangAttr: function() {
233233 var languages = mw.webfonts.config.languages;
234234 var requested = [mw.config.get( 'wgUserVariant' ), mw.config.get( 'wgContentLanguage' ), mw.config.get( 'wgUserLanguage' )];
 235+ var fontFamily = false;
235236 // If there are tags with lang attribute,
236237 $( 'body' ).find( '*[lang]' ).each( function( index ) {
237238 // If the lang attribute value is same as one of
@@ -307,7 +308,7 @@
308309 return null;
309310 }
310311
311 - var $resetLink = $( '<input type="radio" name="font"/>' )
 312+ var $resetLink = $( '<input type="radio" name="font" />' )
312313 .attr( 'value', 'webfont-none' )
313314 .attr( 'id', 'webfont-none' )
314315 .click( function( e ) {
@@ -338,29 +339,67 @@
339340 */
340341 buildMenu: function(config) {
341342 var $menuItemsDiv = mw.webfonts.buildMenuItems( config );
342 - if( $menuItemsDiv == null ) {
 343+ if( $menuItemsDiv === null ) {
343344 return;
344345 }
345346 var $menu = $( '<div>' )
346347 .attr( 'id', 'webfonts-menu' )
347348 .addClass( 'webfontMenu' )
348349 .append( $menuItemsDiv );
349 - var $link = $( '<a>' ).prop( 'href', '#' ).text( mw.message( 'webfonts-load' ).escaped() );
 350+ var $link = $( '<a>' )
 351+ .prop( 'href', '#' )
 352+ .text( mw.msg( 'webfonts-load' ) )
 353+ .attr( 'title', mw.msg( 'webfonts-menu-tooltip' ) );
 354+
350355 // This is the fonts link
351356 var $li = $( '<li>' ).attr( 'id', 'pt-webfont' ).append( $link );
 357+
 358+ var rtlEnv = $( 'body' ).hasClass( 'rtl' );
 359+
352360 // If RTL, add to the right of top personal links. Else, to the left
353 - var fn = $( 'body' ).hasClass( 'rtl' ) ? 'append' : 'prepend';
354 - $( '#p-personal ul:first' )[fn]( $li );
 361+ var positionFunction = rtlEnv ? 'append' : 'prepend';
 362+ $( '#p-personal ul:first' )[positionFunction]( $li );
 363+
355364 $( 'body' ).prepend( $menu );
356 - $menu.hide();
357 - $li.hover( function() {
358 - $menuItemsDiv.css( 'left', $li.offset().left );
359 - $menu.show();
360 - });
361 - $menu.hover( function() {
362 - }, function() {
363 - $menu.hide();
364 - });
 365+ $li.click( function( event ) {
 366+ var menuSide, menuOffset, distanceToEdge;
 367+
 368+ if ( rtlEnv ) {
 369+ distanceToEdge = $li.outerWidth() + $li.offset().left;
 370+ if ( $menuItemsDiv.outerWidth() > distanceToEdge ) {
 371+ menuSide = 'left';
 372+ menuOffset = $li.offset().left;
 373+ } else {
 374+ menuSide = 'right';
 375+ menuOffset = $(window).width() - distanceToEdge;
 376+ }
 377+ } else {
 378+ distanceToEdge = $(window).width() - $li.offset().left;
 379+ if ( $menuItemsDiv.outerWidth() > distanceToEdge ) {
 380+ menuSide = 'right';
 381+ menuOffset = distanceToEdge - $li.outerWidth();
 382+ } else {
 383+ menuSide = 'left';
 384+ menuOffset = $li.offset().left;
 385+ }
 386+ }
 387+
 388+ $menuItemsDiv.css( menuSide, menuOffset );
 389+
 390+ if ( $menu.hasClass( 'open' ) ) {
 391+ $menu.removeClass( 'open' );
 392+ } else {
 393+ $( 'div.open' ).removeClass( 'open' );
 394+ $menu.addClass( 'open' );
 395+ event.stopPropagation();
 396+ }
 397+ } );
 398+ $( 'html' ).click( function() {
 399+ $menu.removeClass( 'open' );
 400+ } );
 401+ $menu.click( function( event ) {
 402+ event.stopPropagation();
 403+ } );
365404 // Workaround for IE bug - ActiveX components like input fields coming on top of everything.
366405 // @todo Is there a better solution other than hiding it on hover?
367406 if ( $.browser.msie ) {
Index: branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.fontlist.js
@@ -369,7 +369,7 @@
370370 kok: [ "Lohit Devanagari" ],
371371 gom: [ "Lohit Devanagari" ],
372372 mai: [ "Lohit Devanagari" ],
373 - ml: [ "AnjaliOldLipi", "Meera", "RaghuMalayalam" ],
 373+ ml: [ "AnjaliOldLipi" ],
374374 mr: [ "Lohit Devanagari" ],
375375 my: [ "Masterpiece Uni Sans", "Padauk-Regular", "Myanmar3", "Yunghkio" ],
376376 ne: [ "Lohit Devanagari", "Madan" ],
@@ -378,6 +378,7 @@
379379 sa: [ "Lohit Devanagari" ],
380380 saz: [ "Pagul" ],
381381 ta: [ "Lohit Tamil", "Thendral", "Thenee" ],
 382+ tcy: [ "Lohit Kannada", "Kedage" ],
382383 te: [ "Lohit Telugu", "Pothana2000", "Vemana2000" ],
383384 ti: [ "AbyssinicaSIL" ]
384385 }
Index: branches/wmf/1.18wmf1/extensions/WebFonts/resources/ext.webfonts.css
@@ -7,19 +7,21 @@
88 div#webfonts-menu {
99 font-size: 100%;
1010 z-index: 99999;
 11+ display: none;
1112 }
1213
 14+div#webfonts-menu.open{
 15+ display: block;
 16+}
1317 div#webfonts-fonts {
1418 font-size: 100%;
1519 z-index: 99999;
1620 }
1721
18 -
1922 div#webfonts-menu .menu ul {
2023 padding-left: 5px!important;
2124 }
2225
23 -
2426 div#webfonts-fonts li {
2527 margin: 0;
2628 padding: 5px;
@@ -35,12 +37,12 @@
3638 }
3739
3840 /* @noflip */
39 -body.rtl div.webfontMenu ul li {
 41+body.rtl div.webfontMenu {
4042 direction: rtl;
4143 }
4244
4345 div.webfontMenu div.menu {
44 - position: relative;
 46+ position: absolute;
4547 display: block;
4648 clear: both;
4749 text-align: left;
@@ -82,6 +84,7 @@
8385 margin-left: -1px;
8486 text-align: left;
8587 font-size: 0.8em;
 88+ width: 100%;
8689 }
8790
8891 div.webfontMenu li {
@@ -115,3 +118,4 @@
116119 div.webfontMenu label:hover, input:hover {
117120 cursor: pointer;
118121 }
 122+
Index: branches/wmf/1.18wmf1/extensions/WebFonts/WebFonts.i18n.php
@@ -17,13 +17,18 @@
1818 'webfonts-load' => 'Select font',
1919 'webfonts-reset' => 'Reset',
2020 'webfonts-enable-preference' => 'Enable font embedding (WebFonts)',
 21+ 'webfonts-menu-tooltip' => 'Select a font for the page',
2122 );
2223
2324 /** Message documentation (Message documentation)
2425 * @author EugeneZelenko
2526 */
2627 $messages['qqq'] = array(
 28+ 'webfonts' => 'The extension name - WebFonts',
 29+ 'webfonts-desc' => 'short description of the extension',
 30+ 'webfonts-load' => 'The text shown in the webfont link',
2731 'webfonts-reset' => '{{Identical|Reset}}',
 32+ 'webfonts-menu-tooltip' => 'Tooltip text displayed in the webfont link',
2833 );
2934
3035 /** Arabic (العربية)
@@ -75,6 +80,7 @@
7681 'webfonts-desc' => "Ensoc'hañ a ra ar fontoù er pajennoù",
7782 'webfonts-load' => 'Diuzañ ar font',
7883 'webfonts-reset' => 'Adderaouekaat',
 84+ 'webfonts-menu-tooltip' => 'Dibabit ur font evit ar bajenn',
7985 );
8086
8187 /** Bosnian (Bosanski)
@@ -106,8 +112,21 @@
107113 'webfonts-load' => 'Schriftart auswählen',
108114 'webfonts-reset' => 'Zurücksetzen',
109115 'webfonts-enable-preference' => 'Schriftarteneinbettung aktivieren',
 116+ 'webfonts-menu-tooltip' => 'Eine Schriftart für die Seite auswählen.',
110117 );
111118
 119+/** Lower Sorbian (Dolnoserbski)
 120+ * @author Michawiki
 121+ */
 122+$messages['dsb'] = array(
 123+ 'webfonts' => 'WebFonts',
 124+ 'webfonts-desc' => 'Pisma do bokow zasajźiś',
 125+ 'webfonts-load' => 'Pismo wubraś',
 126+ 'webfonts-reset' => 'Slědk stajiś',
 127+ 'webfonts-enable-preference' => 'Zasajźenje pismow zmóžniś (WebFonts)',
 128+ 'webfonts-menu-tooltip' => 'Pismo za bok wubraś',
 129+);
 130+
112131 /** Spanish (Español)
113132 * @author Fitoschido
114133 */
@@ -142,6 +161,7 @@
143162 'webfonts-load' => 'Sélectionnez une police',
144163 'webfonts-reset' => 'Réinitialiser',
145164 'webfonts-enable-preference' => "Active l'incorporation des fontes (WebFonts)",
 165+ 'webfonts-menu-tooltip' => 'Sélectionnez une police pour la page',
146166 );
147167
148168 /** Franco-Provençal (Arpetan)
@@ -215,6 +235,7 @@
216236 'webfonts-load' => 'Pismo wubrać',
217237 'webfonts-reset' => 'Wróćo stajić',
218238 'webfonts-enable-preference' => 'Zasadźenje pismow zmóžnić (WebFonts)',
 239+ 'webfonts-menu-tooltip' => 'Pismo za stronu wubrać',
219240 );
220241
221242 /** Interlingua (Interlingua)
@@ -226,6 +247,7 @@
227248 'webfonts-load' => 'Selige un typo de litteras',
228249 'webfonts-reset' => 'Reinitialisar',
229250 'webfonts-enable-preference' => 'Activar le incorporation de typos de litteras (WebFonts)',
 251+ 'webfonts-menu-tooltip' => 'Selige un typo de litteras pro le pagina',
230252 );
231253
232254 /** Indonesian (Bahasa Indonesia)
@@ -256,6 +278,9 @@
257279 'webfonts' => 'WebFonts',
258280 'webfonts-desc' => 'Incorpora caratteri nelle pagine',
259281 'webfonts-load' => 'Seleziona il tipo di carattere',
 282+ 'webfonts-reset' => 'Reimposta',
 283+ 'webfonts-enable-preference' => "Attiva l'incorporazione dei caratteri (WebFont)",
 284+ 'webfonts-menu-tooltip' => 'Seleziona un tipo di carattere per la pagina',
260285 );
261286
262287 /** Japanese (日本語)
@@ -309,6 +334,7 @@
310335 'webfonts-load' => 'Изберете фонт',
311336 'webfonts-reset' => 'Врати',
312337 'webfonts-enable-preference' => 'Овозможи на вметнување на фонтови (WebFonts)',
 338+ 'webfonts-menu-tooltip' => 'Изберете фонт за страницата',
313339 );
314340
315341 /** Malayalam (മലയാളം)
@@ -321,6 +347,7 @@
322348 'webfonts-load' => 'ഫോണ്ടുകള്‍',
323349 'webfonts-reset' => 'പഴയപടിയാക്കുക',
324350 'webfonts-enable-preference' => 'ഫോണ്ട് എംബെഡ് ചെയ്യുക.(വെബ്ഫോണ്ട്സ്)',
 351+ 'webfonts-menu-tooltip' => 'താളിനുവേണ്ടി ഒരു ഫോണ്ട് തിരഞ്ഞെടുക്കുക',
325352 );
326353
327354 /** Marathi (मराठी)
@@ -341,6 +368,7 @@
342369 'webfonts-load' => 'Pilih fon',
343370 'webfonts-reset' => 'Set semula',
344371 'webfonts-enable-preference' => 'Hidupkan pembenaman fon (WebFonts)',
 372+ 'webfonts-menu-tooltip' => 'Pilih fon untuk laman ini',
345373 );
346374
347375 /** Nepali (नेपाली)
@@ -356,6 +384,7 @@
357385
358386 /** Dutch (Nederlands)
359387 * @author SPQRobin
 388+ * @author Saruman
360389 * @author Siebrand
361390 */
362391 $messages['nl'] = array(
@@ -364,6 +393,7 @@
365394 'webfonts-load' => 'Lettertype selecteren',
366395 'webfonts-reset' => 'Opnieuw instellen',
367396 'webfonts-enable-preference' => 'Lettertypen insluiten inschakelen (WebFonts)',
 397+ 'webfonts-menu-tooltip' => 'Selecteer een lettertype voor de pagina',
368398 );
369399
370400 /** Norwegian (bokmål)‬ (‪Norsk (bokmål)‬)
@@ -377,9 +407,10 @@
378408
379409 /** Oriya (ଓଡ଼ିଆ)
380410 * @author Odisha1
 411+ * @author Psubhashish
381412 */
382413 $messages['or'] = array(
383 - 'webfonts-reset' => 'ପୁନଃ ସ୍ଥାପନ',
 414+ 'webfonts-reset' => 'ପୁନସ୍ଥାପନ',
384415 );
385416
386417 /** Polish (Polski)
Index: branches/wmf/1.18wmf1/extensions/WebFonts/WebFonts.php
@@ -22,7 +22,7 @@
2323 'path' => __FILE__,
2424 'name' => 'WebFonts',
2525 'author' => array( 'Santhosh Thottingal', 'Niklas Laxström' ),
26 - 'url' => 'http://www.mediawiki.org/wiki/Extension:WebFonts',
 26+ 'url' => 'https://www.mediawiki.org/wiki/Extension:WebFonts',
2727 'descriptionmsg' => 'webfonts-desc',
2828 );
2929
@@ -57,7 +57,7 @@
5858 ),
5959 'localBasePath' => $dir,
6060 'remoteExtPath' => 'WebFonts',
61 - 'messages' => array( 'webfonts-load', 'webfonts-reset' ),
 61+ 'messages' => array( 'webfonts-load', 'webfonts-reset', 'webfonts-menu-tooltip' ),
6262 'dependencies' => 'jquery.cookie' ,
6363 'position' => 'top',
6464 );
Index: branches/wmf/1.18wmf1/extensions/CategoryTree/CategoryTreeFunctions.php
@@ -642,7 +642,9 @@
643643 $attr = array( 'class' => 'CategoryTreeBullet' );
644644
645645 # Get counts, with conversion to integer so === works
646 - $pageCount = $cat ? intval( $cat->getPageCount() ) : 0;
 646+ # Note: $allCount is the total number of cat members,
 647+ # not the count of how many members are normal pages.
 648+ $allCount = $cat ? intval( $cat->getPageCount() ) : 0;
647649 $subcatCount = $cat ? intval( $cat->getSubcatCount() ) : 0;
648650 $fileCount = $cat ? intval( $cat->getFileCount() ) : 0;
649651
@@ -652,9 +654,9 @@
653655 if ( $mode == CT_MODE_CATEGORIES ) {
654656 $count = $subcatCount;
655657 } elseif ( $mode == CT_MODE_PAGES ) {
656 - $count = $pageCount - $fileCount;
 658+ $count = $allCount - $fileCount;
657659 } else {
658 - $count = $pageCount;
 660+ $count = $allCount;
659661 }
660662 }
661663 if ( $count === 0 ) {
@@ -696,11 +698,11 @@
697699 $s .= Xml::openElement( 'a', array( 'class' => $labelClass, 'href' => $wikiLink ) ) . $label . Xml::closeElement( 'a' );
698700
699701 if ( $count !== false && $this->getOption( 'showcount' ) ) {
700 - $pages = $pageCount - $subcatCount - $fileCount;
 702+ $pages = $allCount - $subcatCount - $fileCount;
701703
702704 global $wgContLang, $wgLang;
703705 $attr = array(
704 - 'title' => wfMsgExt( 'categorytree-member-counts', 'parsemag', $subcatCount, $pages , $fileCount, $pageCount, $count ),
 706+ 'title' => wfMsgExt( 'categorytree-member-counts', 'parsemag', $subcatCount, $pages , $fileCount, $allCount, $count ),
705707 'dir' => $wgLang->getDir() # numbers and commas get messed up in a mixed dir env
706708 );
707709
@@ -711,8 +713,8 @@
712714 if ( $subcatCount ) {
713715 $memberNums[] = wfMessage( 'categorytree-num-categories', $wgLang->formatNum( $subcatCount ) )->text();
714716 }
715 - if ( $pageCount ) {
716 - $memberNums[] = wfMessage( 'categorytree-num-pages', $wgLang->formatNum( $pageCount ) )->text();
 717+ if ( $pages ) {
 718+ $memberNums[] = wfMessage( 'categorytree-num-pages', $wgLang->formatNum( $pages ) )->text();
717719 }
718720 if ( $fileCount ) {
719721 $memberNums[] = wfMessage( 'categorytree-num-files', $wgLang->formatNum( $fileCount ) )->text();
@@ -729,7 +731,7 @@
730732 $subcatCount,
731733 $pages,
732734 $fileCount,
733 - $pageCount,
 735+ $allCount,
734736 $memberNumsShort ) );
735737 }
736738
Property changes on: branches/wmf/1.18wmf1/extensions/CategoryTree/CategoryTreeFunctions.php
___________________________________________________________________
Modified: svn:mergeinfo
737739 Merged /trunk/extensions/CategoryTree/CategoryTreeFunctions.php:r103260,103315
738740 Merged /trunk/phase3/extensions/CategoryTree/CategoryTreeFunctions.php:r105832,105855
Index: branches/wmf/1.18wmf1/includes/Linker.php
@@ -1116,6 +1116,7 @@
11171117 * @return string
11181118 */
11191119 private static function formatAutocommentsCallback( $match ) {
 1120+ global $wgLang;
11201121 $title = self::$autocommentTitle;
11211122 $local = self::$autocommentLocal;
11221123
@@ -1141,7 +1142,7 @@
11421143 }
11431144 if ( $sectionTitle ) {
11441145 $link = self::link( $sectionTitle,
1145 - htmlspecialchars( wfMsgForContent( 'sectionlink' ) ), array(), array(),
 1146+ $wgLang->getArrow(), array(), array(),
11461147 'noclasses' );
11471148 } else {
11481149 $link = '';
Index: branches/wmf/1.18wmf1/languages/messages/MessagesShi.php
@@ -787,7 +787,6 @@
788788 'newpageletter' => 'A',
789789 'boteditletter' => 'q',
790790 'unpatrolledletter' => '!',
791 -'sectionlink' => '→',
792791 'number_of_watching_users_pageview' => '[$1 iżŗi {{PLURAL:$1|amsqdac|imsqdacn}}]',
793792 'rc_categories_any' => 'wanna',
794793 'rc-change-size' => '$1',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesNe.php
@@ -1366,7 +1366,6 @@
13671367 'newpageletter' => 'न',
13681368 'boteditletter' => 'बो',
13691369 'unpatrolledletter' => '!',
1370 -'sectionlink' => '→',
13711370 'number_of_watching_users_pageview' => '[$1 निगरानी गर्दै{{PLURAL:$1|प्रयोगकर्ता|प्रयोगकर्ताहरु}}]',
13721371 'rc_categories' => 'श्रेणीहरुमा सीमित ("|" ले छुट्याउनुहोस्)',
13731372 'rc_categories_any' => 'कुनै',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesQqq.php
@@ -1748,7 +1748,6 @@
17491749 'unpatrolledletter' => '{{optional}}
17501750
17511751 Used in {{msg-mw|Recentchanges-label-legend}}, meaning "unpatrolled".',
1752 -'sectionlink' => '{{optional}}',
17531752 'rc_categories' => "Probably to do with 'recent changes' special page, either in a particular skin, or for a particular user group.
17541753
17551754 I guess that this should appear before an input box where you can specify that recent changes should be shown for pages belonging to certain categories only. You name the categories in the input box, and separate them by a pipe character. If this is right, then you should be able to use 'restrict' instead of 'limit', or even 'show pages in the following categories only'.",
Index: branches/wmf/1.18wmf1/languages/messages/MessagesKm.php
@@ -1567,7 +1567,6 @@
15681568 'minoreditletter' => 'តិច',
15691569 'newpageletter' => 'ថ្មី',
15701570 'boteditletter' => 'រូបយន្ត',
1571 -'sectionlink' => '→',
15721571 'number_of_watching_users_pageview' => '[មាន{{PLURAL:$1|អ្នកប្រើប្រាស់|អ្នកប្រើប្រាស់}}$1នាក់កំពុងមើល]',
15731572 'rc_categories' => 'កម្រិតទីតាំងចំណាត់ថ្នាក់ក្រុម(ខណ្ឌដោយសញ្ញា "|")',
15741573 'rc_categories_any' => 'មួយណាក៏បាន',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesHe.php
@@ -1662,7 +1662,6 @@
16631663 'minoreditletter' => 'מ',
16641664 'newpageletter' => 'ח',
16651665 'boteditletter' => 'ב',
1666 -'sectionlink' => '←',
16671666 'number_of_watching_users_pageview' => '[{{PLURAL:$1|משתמש אחד עוקב|$1 משתמשים עוקבים}} אחרי הדף]',
16681667 'rc_categories' => 'הגבלה לקטגוריות (יש להפריד עם "|")',
16691668 'rc_categories_any' => 'הכול',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesAr.php
@@ -1783,7 +1783,6 @@
17841784 'minoreditletter' => 'ط',
17851785 'newpageletter' => 'ج‌',
17861786 'boteditletter' => 'ب',
1787 -'sectionlink' => '←',
17881787 'number_of_watching_users_pageview' => '[{{PLURAL:$1|لا مستخدمون يراقبون|مستخدم واحد يراقب|مستخدمان يراقبان|$1 مستخدمين يراقبون|$1 مستخدما يراقب|$1 مستخدم يراقب}}]',
17891788 'rc_categories' => 'حصر لتصنيفات (مفرقة برمز "|")',
17901789 'rc_categories_any' => 'أي',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesAz.php
@@ -1236,7 +1236,6 @@
12371237 'minoreditletter' => 'k',
12381238 'newpageletter' => 'Y',
12391239 'boteditletter' => 'b',
1240 -'sectionlink' => '→',
12411240 'number_of_watching_users_pageview' => '[$1 izləyən istifadəçi]',
12421241 'rc_categories' => 'Kateqoriyalara limit qoy ("|" ilə ayır)',
12431242 'rc_categories_any' => 'Hər',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesAry.php
@@ -1269,7 +1269,6 @@
12701270 'minoreditletter' => 'ṣ',
12711271 'newpageletter' => 'J',
12721272 'boteditletter' => 'b',
1273 -'sectionlink' => '→',
12741273 'number_of_watching_users_pageview' => '[$1 katchof {{PLURAL:$1|mostkhdim|mostkhdimin}}]',
12751274 'rc_categories' => 'limiti tsnifat (frqha b "|")',
12761275 'rc_categories_any' => 'ay wahd',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesEn.php
@@ -2046,7 +2046,6 @@
20472047 'newpageletter' => 'N',
20482048 'boteditletter' => 'b',
20492049 'unpatrolledletter' => '!', # only translate this message to other languages if you have to change it
2050 -'sectionlink' => '→', # only translate this message to other languages if you have to change it
20512050 'number_of_watching_users_RCview' => '[$1]', # do not translate or duplicate this message to other languages
20522051 'number_of_watching_users_pageview' => '[$1 watching {{PLURAL:$1|user|users}}]',
20532052 'rc_categories' => 'Limit to categories (separate with "|")',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesFa.php
@@ -1765,7 +1765,6 @@
17661766 'minoreditletter' => 'جز',
17671767 'newpageletter' => 'نو',
17681768 'boteditletter' => 'ر',
1769 -'sectionlink' => '←',
17701769 'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1|کاربر|کاربر}} پی‌گیری‌کننده]',
17711770 'rc_categories' => 'محدود به این رده‌ها (رده‌ها را با «|» جدا کنید)',
17721771 'rc_categories_any' => 'هر کدام',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesArz.php
@@ -1554,7 +1554,6 @@
15551555 'minoreditletter' => 'ص',
15561556 'newpageletter' => 'ج',
15571557 'boteditletter' => 'ب',
1558 -'sectionlink' => '←',
15591558 'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1| يوزر مراقب|يوزر مراقب}}]',
15601559 'rc_categories' => 'حصر لتصنيفات (مفصولة برمز "|")',
15611560 'rc_categories_any' => 'أى',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesUk.php
@@ -1578,7 +1578,6 @@
15791579 'newpageletter' => 'Н',
15801580 'boteditletter' => 'б',
15811581 'unpatrolledletter' => '!',
1582 -'sectionlink' => '→',
15831582 'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1|користувач спостерігає|користувачі спостерігають|користувачів спостерігають}}]',
15841583 'rc_categories' => 'Тільки з категорій (разділювач «|»)',
15851584 'rc_categories_any' => 'Будь-який',
Index: branches/wmf/1.18wmf1/languages/messages/MessagesRo.php
@@ -1614,7 +1614,6 @@
16151615 'newpageletter' => 'N',
16161616 'boteditletter' => 'b',
16171617 'unpatrolledletter' => '!',
1618 -'sectionlink' => '→',
16191618 'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1|utilizator|utilizatori}} care urmăresc]',
16201619 'rc_categories' => 'Limitează la categoriile (separate prin "|")',
16211620 'rc_categories_any' => 'Oricare',
Index: branches/wmf/1.18wmf1/languages/Names.php
@@ -356,7 +356,7 @@
357357 'uz' => 'O\'zbek', # Uzbek
358358 've' => 'Tshivenda', # Venda
359359 'vec' => 'Vèneto', # Venetian
360 - 'vep' => 'Vepsan kel\'', # Veps
 360+ 'vep' => 'Vepsän kel\'', # Veps
361361 'vi' => 'Tiếng Việt', # Vietnamese
362362 'vls' => 'West-Vlams', # West Flemish
363363 'vmf' => 'Mainfränkisch', # Upper Franconian, Main-Franconian

Past revisions this follows-up on

RevisionCommit summaryAuthorDate
r103260(follow-up r100023; bug 32438) $pagesCount is total number of members a categ...bawolff23:35, 15 November 2011
r103315(follow-up r103260) fix if condition per Umherirrender, change variable name ...bawolff12:35, 16 November 2011
r105832Slight correction to Veps autonym per Wikipedia article and https://meta.wiki...robin21:13, 11 December 2011
r105855Replaced the core message 'sectionlink' with getArrow, which is cleaner and d...amire8006:40, 12 December 2011

Status & tagging log