WARNING: HUGE COMMIT
[lhc/web/wiklou.git] / languages / classes / LanguageCs.php
1 <?php
2
3 /** Czech (česky)
4 *
5 * @ingroup Language
6 */
7 class LanguageCs extends Language {
8 # Grammatical transformations, needed for inflected languages
9 # Invoked by putting {{grammar:case|word}} in a message
10 function convertGrammar( $word, $case ) {
11 global $wgGrammarForms;
12 if ( isset($wgGrammarForms['cs'][$case][$word]) ) {
13 return $wgGrammarForms['cs'][$case][$word];
14 }
15 # allowed values for $case:
16 # 1sg, 2sg, ..., 7sg -- nominative, genitive, ... (in singular)
17 switch ( $word ) {
18 case 'Wikibooks':
19 case 'Wikiknihy':
20 switch ( $case ) {
21 case '2sg':
22 return 'Wikiknih';
23 case '3sg':
24 return 'Wikiknihám';
25 case '6sg';
26 return 'Wikiknihách';
27 case '7sg':
28 return 'Wikiknihami';
29 default:
30 return 'Wikiknihy';
31 }
32 case 'Wikipedia':
33 case 'Wikipedie':
34 switch ( $case ) {
35 case '3sg':
36 case '4sg':
37 case '6sg':
38 return 'Wikipedii';
39 case '7sg':
40 return 'Wikipedií';
41 default:
42 return 'Wikipedie';
43 }
44
45 case 'Wiktionary':
46 case 'Wikcionář':
47 case 'Wikislovník':
48 switch ( $case ) {
49 case '2sg':
50 case '3sg':
51 case '5sg';
52 case '6sg';
53 return 'Wikislovníku';
54 case '7sg':
55 return 'Wikislovníkem';
56 default:
57 return 'Wikislovník';
58 }
59
60 case 'Wikiquote':
61 case 'Wikicitáty':
62 switch ( $case ) {
63 case '2sg':
64 return 'Wikicitátů';
65 case '3sg':
66 return 'Wikicitátům';
67 case '6sg';
68 return 'Wikicitátech';
69 default:
70 return 'Wikicitáty';
71 }
72 }
73 # unknown
74 return $word;
75 }
76
77 function convertPlural( $count, $forms ) {
78 if ( !count($forms) ) { return ''; }
79 $forms = $this->preConvertPlural( $forms, 3 );
80
81 switch ( $count ) {
82 case 1: return $forms[0];
83 case 2:
84 case 3:
85 case 4: return $forms[1];
86 default: return $forms[2];
87 }
88 }
89 }