diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2013-01-18 16:46:04 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2013-01-18 16:46:04 +0100 |
commit | 63601400e476c6cf43d985f3e7b9864681695ed4 (patch) | |
tree | f7846203a952e38aaf66989d0a4702779f549962 /resources/mediawiki.language/languages/fi.js | |
parent | 8ff01378c9e0207f9169b81966a51def645b6a51 (diff) |
Update to MediaWiki 1.20.2
this update includes:
* adjusted Arch Linux skin
* updated FluxBBAuthPlugin
* patch for https://bugzilla.wikimedia.org/show_bug.cgi?id=44024
Diffstat (limited to 'resources/mediawiki.language/languages/fi.js')
-rw-r--r-- | resources/mediawiki.language/languages/fi.js | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/resources/mediawiki.language/languages/fi.js b/resources/mediawiki.language/languages/fi.js new file mode 100644 index 00000000..374698dc --- /dev/null +++ b/resources/mediawiki.language/languages/fi.js @@ -0,0 +1,44 @@ +/** + * Finnish (Suomi) language functions + * @author Santhosh Thottingal + */ + +mediaWiki.language.convertGrammar = function( word, form ) { + var grammarForms = mw.language.getData( 'fi', 'grammarForms' ); + if ( grammarForms && grammarForms[form] ) { + return grammarForms[form][word] ; + } + + // vowel harmony flag + var aou = word.match( /[aou][^äöy]*$/i ); + var origWord = word; + if ( word.match( /wiki$/i ) ) { + aou = false; + } + //append i after final consonant + if ( word.match( /[bcdfghjklmnpqrstvwxz]$/i ) ) + word += 'i'; + + switch ( form ) { + case 'genitive': + word += 'n'; + break; + case 'elative': + word += ( aou ? 'sta' : 'stä' ); + break; + case 'partitive': + word += ( aou ? 'a' : 'ä' ); + break; + case 'illative': + // Double the last letter and add 'n' + word += word.substr( word.length-1 ) + 'n'; + break; + case 'inessive': + word += ( aou ? 'ssa' : 'ssä' ); + break; + default: + word = origWord; + break; + } + return word; +}; |