mirror of
https://github.com/YunoHost-Apps/mediawiki_ynh.git
synced 2024-09-03 19:46:05 +02:00
53 lines
2.2 KiB
JavaScript
53 lines
2.2 KiB
JavaScript
/**
|
||
* Russian (Русский) language functions
|
||
*/
|
||
|
||
// These tests were originally made for names of Wikimedia
|
||
// websites, so they don't currently cover all the possible
|
||
// cases.
|
||
|
||
mediaWiki.language.convertGrammar = function ( word, form ) {
|
||
'use strict';
|
||
|
||
var grammarForms = mediaWiki.language.getData( 'ru', 'grammarForms' );
|
||
if ( grammarForms && grammarForms[form] ) {
|
||
return grammarForms[form][word];
|
||
}
|
||
switch ( form ) {
|
||
case 'genitive': // родительный падеж
|
||
if ( word.substr( word.length - 1 ) === 'ь' ) {
|
||
word = word.substr(0, word.length - 1 ) + 'я';
|
||
} else if ( word.substr( word.length - 2 ) === 'ия' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'ии';
|
||
} else if ( word.substr( word.length - 2 ) === 'ка' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'ки';
|
||
} else if ( word.substr( word.length - 2 ) === 'ти' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'тей';
|
||
} else if ( word.substr( word.length - 2 ) === 'ды' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'дов';
|
||
} else if ( word.substr( word.length - 3 ) === 'ные' ) {
|
||
word = word.substr(0, word.length - 3 ) + 'ных';
|
||
} else if ( word.substr( word.length - 3 ) === 'ник' ) {
|
||
word = word.substr(0, word.length - 3 ) + 'ника';
|
||
}
|
||
break;
|
||
case 'prepositional': // предложный падеж
|
||
if ( word.substr( word.length - 1 ) === 'ь' ) {
|
||
word = word.substr(0, word.length - 1 ) + 'е';
|
||
} else if ( word.substr( word.length - 2 ) === 'ия' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'ии';
|
||
} else if ( word.substr( word.length - 2 ) === 'ка' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'ке';
|
||
} else if ( word.substr( word.length - 2 ) === 'ти' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'тях';
|
||
} else if ( word.substr( word.length - 2 ) === 'ды' ) {
|
||
word = word.substr(0, word.length - 2 ) + 'дах';
|
||
} else if ( word.substr( word.length - 3 ) === 'ные' ) {
|
||
word = word.substr(0, word.length - 3 ) + 'ных';
|
||
} else if ( word.substr( word.length - 3 ) === 'ник' ) {
|
||
word = word.substr(0, word.length - 3 ) + 'нике';
|
||
}
|
||
break;
|
||
}
|
||
return word;
|
||
};
|