e8f9456761d7f424f949c8d15e6137dcfb3dfba9
[lhc/web/wiklou.git] / languages / classes / LanguageSl.php
1 <?php
2 /** Slovenian (Slovenščina)
3 *
4 * @addtogroup Language
5 *
6 */
7 class LanguageSl extends Language {
8 # Convert from the nominative form of a noun to some other case
9 # Invoked with {{GRAMMAR:case|word}}
10 /**
11 * Cases: rodilnik, dajalnik, tožilnik, mestnik, orodnik
12 */
13 function convertGrammar( $word, $case ) {
14 global $wgGrammarForms;
15 if ( isset($wgGrammarForms['sl'][$case][$word]) ) {
16 return $wgGrammarForms['sl'][$case][$word];
17 }
18
19 switch ( $case ) {
20 case 'rodilnik': # genitive
21 switch ( $word ) {
22 case 'Wikipedija': $word = 'Wikipedije'; break 2;
23 case 'Wikiknjige': $word = 'Wikiknjig'; break 2;
24 case 'Wikinovice': $word = 'Wikinovic'; break 2;
25 case 'Wikinavedek': $word = 'Wikinavedka'; break 2;
26 case 'Wikivir': $word = 'Wikivira'; break 2;
27 case 'Wikislovar': $word = 'Wikislovarja'; break 2;
28 }
29 case 'dajalnik': # dativ
30 switch ( $word ) {
31 case 'Wikipedija': $word = 'Wikipediji'; break 2;
32 case 'Wikiknjige': $word = 'Wikiknjigam'; break 2;
33 case 'Wikinovice': $word = 'Wikinovicam'; break 2;
34 case 'Wikinavedek': $word = 'Wikinavedku'; break 2;
35 case 'Wikivir': $word = 'Wikiviru'; break 2;
36 case 'Wikislovar': $word = 'Wikislovarju'; break 2;
37 }
38 case 'tožilnik': # akuzatív
39 switch ( $word ) {
40 case 'Wikipedija': $word = 'Wikipedijo'; break 2;
41 case 'Wikiknjige':
42 case 'Wikinovice':
43 case 'Wikinavedek':
44 case 'Wikivir':
45 case 'Wikislovar':
46 // Don't change, just fall through
47 break 2;
48 }
49 case 'mestnik': # locative
50 switch ( $word ) {
51 case 'Wikipedija': $word = 'o Wikipediji'; break 2;
52 case 'Wikiknjige': $word = 'o Wikiknjigah'; break 2;
53 case 'Wikinovice': $word = 'o Wikinovicah'; break 2;
54 case 'Wikinavedek': $word = 'o Wikinavedku'; break 2;
55 case 'Wikivir': $word = 'o Wikiviru'; break 2;
56 case 'Wikislovar': $word = 'o Wikislovarju'; break 2;
57 default: $word = 'o ' . $word; break 2;
58 }
59 case 'orodnik': # instrumental
60 switch ( $word ) {
61 case 'Wikipedija': $word = 'z Wikipedijo'; break 2;
62 case 'Wikiknjige': $word = 'z Wikiknjigami'; break 2;
63 case 'Wikinovice': $word = 'z Wikinovicami'; break 2;
64 case 'Wikinavedek': $word = 'z Wikinavedkom'; break 2;
65 case 'Wikivir': $word = 'z Wikivirom'; break 2;
66 case 'Wikislovar': $word = 'z Wikislovarjem'; break 2;
67 default: $word = 'z ' . $word;
68 }
69 }
70
71 return $word; # this will return the original value for 'imenovalnik' (nominativ) and all undefined case values
72 }
73
74 function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
75 $count = str_replace ('.', '', $count);
76 $forms = array( $w1, $w2, $w3, $w4, $w5 );
77 if ( $count % 100 == 1 ) {
78 $index = 0;
79 } elseif ( $count % 100 == 2 ) {
80 $index = 1;
81 } elseif ( $count % 100 == 3 || $count % 100 == 4 ) {
82 $index = 2;
83 } elseif ( $count != 0 ) {
84 $index = 3;
85 } else {
86 $index = 4;
87 }
88 return $forms[$index];
89 }
90
91
92 }
93 ?>