Add gender support. This method is useful only if we have parser that can understand...
authorSanthosh Thottingal <santhosh@users.mediawiki.org>
Mon, 2 Jan 2012 09:08:23 +0000 (09:08 +0000)
committerSanthosh Thottingal <santhosh@users.mediawiki.org>
Mon, 2 Jan 2012 09:08:23 +0000 (09:08 +0000)
Test cases and mw.jqueryMsg changes in next commit.

resources/mediawiki.language/mediawiki.language.js

index fa7aa8d..0478279 100644 (file)
@@ -96,6 +96,32 @@ mw.language = {
                }
                return integer ? parseInt( convertedNumber, 10 ) : convertedNumber;
        },
+       /**
+        * Provides an alternative text depending on specified gender.
+        * Usage {{gender:username|masculine|feminine|neutral}}.
+        * If second or third parameter are not specified, masculine is used.
+        * 
+        * These details may be overriden per language.
+        *
+        * @param gender string
+        * @param forms array List of gender forms
+        *
+        * @return string
+        */
+       'gender': function( gender, forms ) {
+               if ( !forms || forms.length == 0 ) {
+                       return '';
+               }
+               forms = mw.language.preConvertPlural( forms, 2 );
+               if ( gender === 'male' ) {
+                       return forms[0];
+               }
+               if ( gender === 'female' ) {
+                       return forms[1];
+               }
+               return ( forms.length == 3 ) ? forms[2] : forms[0];
+       },
+
        // Digit Transform Table, populated by language classes where applicable
        'digitTransformTable': null
 };