From df4c6f46114d0e006684931f6e9a51c9054ea2c3 Mon Sep 17 00:00:00 2001 From: Santhosh Thottingal Date: Mon, 2 Jan 2012 09:08:23 +0000 Subject: [PATCH] Add gender support. This method is useful only if we have parser that can understand gender at client side. Test cases and mw.jqueryMsg changes in next commit. --- .../mediawiki.language/mediawiki.language.js | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/resources/mediawiki.language/mediawiki.language.js b/resources/mediawiki.language/mediawiki.language.js index fa7aa8d506..0478279a4a 100644 --- a/resources/mediawiki.language/mediawiki.language.js +++ b/resources/mediawiki.language/mediawiki.language.js @@ -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 }; -- 2.20.1