reintroduce the shortcut evaluation removed in r108403 and r108405
[lhc/web/wiklou.git] / languages / classes / LanguageLt.php
1 <?php
2
3 /** Lithuanian (Lietuvių)
4 *
5 * @ingroup Language
6 */
7 class LanguageLt extends Language {
8 /* Word forms (with examples):
9 1 - vienas (1) lapas, dvidešimt vienas (21) lapas
10 2 - trys (3) lapai
11 3 - penkiolika (15) lapų
12 */
13
14 /**
15 * Lithuanian plural forms as per http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#lt
16 * @param $count int
17 * @param $forms array
18 *
19 * @return string
20 */
21 function convertPlural( $count, $forms ) {
22 if ( !count( $forms ) ) { return ''; }
23
24 // if the number is not mentioned in message, then use $form[0] for singular and $form[1] for plural or zero
25 if ( count( $forms ) === 2 ) return $count == 1 ? $forms[0] : $forms[1];
26
27 $forms = $this->preConvertPlural( $forms, 3 );
28 // Form[0] if n mod 10 is 1 and n mod 100 not in 11..19;
29 if ( $count % 10 == 1 && $count % 100 != 11 ) return $forms[0];
30 // Forms[1] if n mod 10 in 2..9 and n mod 100 not in 11..19;
31 if ( $count % 10 >= 2 && ( $count % 100 < 10 || $count % 100 >= 20 ) ) return $forms[1];
32 return $forms[2];
33 }
34 }