r5242 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r5241‎ | r5242 | r5243 >
Date:12:00, 16 September 2004
Author:timstarling
Status:old
Tags:
Comment:
Backported Finnish grammar from HEAD
Modified paths:
  • /branches/REL1_3/phase3/includes/GlobalFunctions.php (modified) (history)
  • /branches/REL1_3/phase3/includes/MagicWord.php (modified) (history)
  • /branches/REL1_3/phase3/includes/Parser.php (modified) (history)
  • /branches/REL1_3/phase3/languages/Language.php (modified) (history)
  • /branches/REL1_3/phase3/languages/LanguageFi.php (modified) (history)

Diff [purge]

Index: branches/REL1_3/phase3/includes/MagicWord.php
@@ -47,6 +47,7 @@
4848 define("MAG_PAGENAMEE", 31);
4949 define("MAG_NAMESPACE", 32);
5050 define("MAG_TOC", 33);
 51+define("MAG_GRAMMAR", 34);
5152
5253 $wgVariableIDs = array(
5354 MAG_CURRENTMONTH,
Index: branches/REL1_3/phase3/includes/GlobalFunctions.php
@@ -45,6 +45,21 @@
4646 }
4747 }
4848
 49+# UTF-8 substr function based on a PHP manual comment
 50+if ( !function_exists( 'mb_substr' ) ) {
 51+ function mb_substr($str,$start)
 52+ {
 53+ preg_match_all("/./us", $str, $ar);
 54+
 55+ if(func_num_args() >= 3) {
 56+ $end = func_get_arg(2);
 57+ return join("",array_slice($ar[0],$start,$end));
 58+ } else {
 59+ return join("",array_slice($ar[0],$start));
 60+ }
 61+ }
 62+}
 63+
4964 # html_entity_decode exists in PHP 4.3.0+ but is FATALLY BROKEN even then,
5065 # with no UTF-8 support.
5166 function do_html_entity_decode( $string, $quote_style=ENT_COMPAT, $charset='ISO-8859-1' ) {
Index: branches/REL1_3/phase3/includes/Parser.php
@@ -1590,11 +1590,12 @@
15911591 # PHP global rebinding syntax is a bit weird, need to use the GLOBALS array
15921592 $GLOBALS['wgCurParser'] =& $this;
15931593
1594 -
1595 - if ( $this->mOutputType == OT_HTML ) {
 1594+ if ( $this->mOutputType == OT_HTML || $this->mOutputType == OT_MSG ) {
15961595 # Variable substitution
15971596 $text = preg_replace_callback( "/{{([$nonBraceChars]*?)}}/", 'wfVariableSubstitution', $text );
1598 -
 1597+ }
 1598+
 1599+ if ( $this->mOutputType == OT_HTML ) {
15991600 # Argument substitution
16001601 $text = preg_replace_callback( "/(\\n?){{{([$titleChars]*?)}}}/", 'wfArgSubstitution', $text );
16011602 }
@@ -1760,6 +1761,15 @@
17611762 $found = true;
17621763 $this->mOutput->mContainsOldMagic = true;
17631764 }
 1765+
 1766+ # GRAMMAR
 1767+ if ( !$found && $argc == 1 ) {
 1768+ $mwGrammar =& MagicWord::get( MAG_GRAMMAR );
 1769+ if ( $mwGrammar->matchStartAndRemove( $part1 ) ) {
 1770+ $text = $wgLang->convertGrammar( $args[0], $part1 );
 1771+ $found = true;
 1772+ }
 1773+ }
17641774 /*
17651775 # Arguments input from the caller
17661776 $inputArgs = end( $this->mArgStack );
Index: branches/REL1_3/phase3/languages/LanguageFi.php
@@ -17,8 +17,8 @@
1818 1 => "Keskustelu",
1919 2 => "Käyttäjä",
2020 3 => "Keskustelu_käyttäjästä",
21 - 4 => "Wikipedia",
22 - 5 => "Keskustelu_Wikipediasta",
 21+ 4 => $wgMetaNamespace,
 22+ 5 => "{$wgMetaNamespace}-keskustelu",
2323 6 => "Kuva",
2424 7 => "Keskustelu_kuvasta",
2525 8 => "MediaWiki",
@@ -26,7 +26,7 @@
2727 10 => "Template",
2828 11 => "Template_talk"
2929
30 -);
 30+) + $wgNamespaceNamesEn;
3131
3232 /* private */ $wgQuickbarSettingsFi = array(
3333 "Ei mitään", "Tekstin mukana, vasen", "Tekstin mukana, oikea",
@@ -140,17 +140,17 @@
141141 "linktrail" => "/^((?:ä|ö|[a-z])+)(.*)\$/sD",
142142 "mainpage" => "Etusivu",
143143 "about" => "Tietoja",
144 -"aboutwikipedia" => "Tietoja Wikipediasta",
145 -"aboutpage" => "Wikipedia:Tietoja",
 144+"aboutwikipedia" => "Tietoja {{grammar:elative|{{SITENAME}}}}",
 145+"aboutpage" => "{{ns:project}}:Tietoja",
146146 "help" => "Ohje",
147 -"helppage" => "Wikipedia:Ohje",
148 -"wikititlesuffix" => "Wikipedia",
 147+"helppage" => "{{ns:project}}:Ohje",
 148+"wikititlesuffix" => "{{ns:project}}",
149149 "bugreports" => "Bugiraportit",
150 -"bugreportspage" => "Wikipedia:Bugiraportit",
 150+"bugreportspage" => "{{ns:project}}:Bugiraportit",
151151 "faq" => "FAQ",
152 -"faqpage" => "Wikipedia:FAQ",
 152+"faqpage" => "{{ns:project}}:FAQ",
153153 "edithelp" => "Muokkausohjeet",
154 -"edithelppage" => "Wikipedia:Kuinka_sivuja_muokataan",
 154+"edithelppage" => "{{ns:project}}:Kuinka_sivuja_muokataan",
155155 "cancel" => "Keskeytä",
156156 "qbfind" => "Etsi",
157157 "qbbrowse" => "Selaa",
@@ -189,7 +189,7 @@
190190 "gnunote" => "Kaikki teksti on saatavilla <a class=internal href='$wgScriptPath/GNU_FDL'>GNU Free Documentation -lisenssin</a> ehdoilla.",
191191 "printsubtitle" => "(Lähde: http://fi.wikipedia.org)",
192192 "protectedpage" => "Suojattu sivu",
193 -"administrators" => "Wikipedia:Ylläpitäjät",
 193+"administrators" => "{{ns:project}}:Ylläpitäjät",
194194 "sysoptitle" => "Vaatii ylläpitäjä-oikeudet",
195195 "sysoptext" => "Tämän toiminnon voi suorittaa vain käyttäjä, jolla on \"ylläpitäjä\"-oikeudet.
196196 Katso $1.",
@@ -230,7 +230,7 @@
231231 "nodb" => "Tietokantaa $1 ei voitu valita",
232232 "readonly" => "Tietokanta on lukittu",
233233 "enterlockreason" => "Anna syy lukitukselle sekä arvio lukituksen poistamisajankohdalle.",
234 -"readonlytext" => "Wikipedian tietokanta on tällä hetkellä lukittu.
 234+"readonlytext" => "{{grammar:genitive|{{SITENAME}}}} tietokanta on tällä hetkellä lukittu.
235235 Uusia artikkeleita tai muita muutoksia ei voi tehdä.
236236 Syynä ovat todennäköisimmin rutiininomaiset tietokannan ylläpitotoimet.
237237 Tietokannan lukinneen ylläpitäjän selitys:
@@ -253,8 +253,8 @@
254254 # Login and logout pages
255255 #
256256 "logouttitle" => "Käyttäjän uloskirjautuminen",
257 -"logouttext" => "Olet nyt kirjautunut ulos Wikipediasta.
258 -Voit jatkaa Wikipedian käyttöä nimettömänä, tai
 257+"logouttext" => "Olet nyt kirjautunut ulos {{grammar:elative|{{SITENAME}}}}.
 258+Voit jatkaa {{grammar:genitive|{{SITENAME}}}} käyttöä nimettömänä, tai
259259 kirjautua uudelleen sisään samana tai eri käyttäjänä.\n",
260260
261261 "welcomecreation" => "<h2>Tervetuloa, $1!</h2><p>
@@ -284,14 +284,14 @@
285285 "loginerror" => "Sisäänkirjautumisvirhe",
286286 "noname" => "Et ole määritellyt kelvollista käyttäjänimeä.",
287287 "loginsuccesstitle" => "Sisäänkirjoittautuminen onnistui",
288 -"loginsuccess" => "Olet nyt kirjautunut Wikipediaan käyttäjänä \"$1\".",
 288+"loginsuccess" => "Olet nyt kirjautunut {{grammar:illative|{{SITENAME}}}} käyttäjänä \"$1\".",
289289 "nosuchuser" => "Käyttäjänimeä \"$1\" ei ole olemassa.
290290 Tarkista kirjoititko nimen oikein, tai käytä alla olevaa lomaketta uuden käyttäjätunnuksen luomiseksi.",
291291 "wrongpassword" => "Syöttämäsi salasana ei ole oikein. Ole hyvä ja yritä uudelleen.",
292292 "mailmypassword" => "Lähetä minulle uusi salasana sähköpostilla",
293 -"passwordremindertitle" => "Salasanamuistutus Wikipediasta",
 293+"passwordremindertitle" => "Salasanamuistutus {{grammar:elative|{{SITENAME}}}}",
294294 "passwordremindertext" => "Joku (todennäköisesti sinä), IP-osoitteesta $1
295 -pyysi Wikipediaa lähettämään uuden salasanan.
 295+pyysi {{grammar:partitive|{{SITENAME}}}} lähettämään uuden salasanan.
296296 Salasana käyttäjälle \"$2\" on nyt \"$3\".
297297 Kirjaudu sisään ja vaihda heti salasanasi.",
298298 "noemail" => "Käyttäjälle \"$1\" ei ole määritelty sähköpostiosoitetta.",
@@ -308,9 +308,9 @@
309309 "blockedtitle" => "Pääsy käyttäjältä estetty",
310310 "blockedtext" => "$1 on estänyt pääsysi Wikpediaan joko käyttäjänimesi tai IP-osoitteesi perusteella.
311311 Syynä tähän on:<br>''$2''<p>Ota yhteyttä henkilöön $1 tai johonkuhun
312 -muuhun [[Wikipedia:ylläpitäjät|ylläpitäjään]] keskustellaksesi estosta.",
 312+muuhun [[{{ns:project}}:ylläpitäjät|ylläpitäjään]] keskustellaksesi estosta.",
313313 "newarticle" => "(uusi)",
314 -"newarticletext" => "Olet seurannut linkkiä sivulle, jota ei ole vielä olemassa.Luodaksesi sivun, kirjoita alla olevaan laatikkoon (katso [[Wikipedia:Ohje|ohjeesta]] lisätietoja). Jos tarkoituksesi ei ole luoda uutta sivua, paina selaimesi '''back'''-painiketta.",
 314+"newarticletext" => "Olet seurannut linkkiä sivulle, jota ei ole vielä olemassa.Luodaksesi sivun, kirjoita alla olevaan laatikkoon (katso [[{{ns:project}}:Ohje|ohjeesta]] lisätietoja). Jos tarkoituksesi ei ole luoda uutta sivua, paina selaimesi '''back'''-painiketta.",
315315 "anontalkpagetext" => "----\n''Tämä on nimettömän käyttäjän keskustelusivu. Hän ei ole joko luonut itselleen käyttäjätunnusta tai ei käytä sitä. Siksi hänet tunnistetaan nyt numeerisella [[IP-osoite|IP-osoitteella]]. Kyseinen IP-osoite voi olla useamman henkilön käytössä. Jos olet nimetön käyttäjä, ja sinusta tuntuu, että merkityksettömiä kommentteja on ohjattu sinulle, [[Erikoissivut:Sisäänkirjautuminen|luo itsellesi käyttäjätunnus tai kirjaudu sisään]] välttääksesi jatkossa sekaannukset muiden nimettömien käyttäjien kanssa.''",
316316 "noarticletext" => "(Tällä sivulla ei ole vielä tekstiä)",
317317 "updated" => "(Päivitetty)",
@@ -329,7 +329,7 @@
330330 "editingold" => "<strong>VAROITUS: Olet muokkaamassa vanhentunutta versiota tämän sivun tekstistä.
331331 Jos tallennat sen, kaikki tämän version jälkeen tehdyt muutokset katoavat.</strong>\n",
332332 "yourdiff" => "Eroavaisuudet",
333 -"copyrightwarning" => "Huomaa, että kaikki Wikipediaan tehtävät tuotokset
 333+"copyrightwarning" => "Huomaa, että kaikki {{grammar:illative|{{SITENAME}}}} tehtävät tuotokset
334334 katsotaan julkaistuksi GNU Free Documentation -lisenssin mukaisesti
335335 (katso sivulta $1 yksityiskohtia). Jos et halua, että kirjoitustasi
336336 muokataan armottomasti ja uudelleenkäytetään vapaasti, älä tallenna kirjoitustasi.<br>
@@ -437,13 +437,13 @@
438438 #
439439 "changes" => "muutokset",
440440 "recentchanges" => "Tuoreet muutokset",
441 -"recentchangestext" => "Tältä sivulta voi seurata tuoreita Wikipediaan tehtyjä muutoksia.
442 -[[Wikipedia:Tervetuloa Wikipediaan|Tervetuloa Wikipediaan!]]
443 -Katso seuraavia sivuja: [[Wikipedia:Kysymyksiä ja vastauksia Wikipediasta|Useimmin kysyttyjä asioita]], [[Wikipedia:Sääntöjä ja ohjeita|Wikipedian säännöt]]
444 -(erityisesti [[Wikipedia:Merkitsemiskäytäntöjä|Merkitsemiskäytännöt]],
445 -[[Wikipedia::Neutraali näkökulma|Neutraali näkökulma]]),
446 -ja [[Wikipedia:Aloittelijan virheitä|Aloittelijan virheitä]].
447 -Jos haluat nähdä Wikipedian onnistuvan, on erittäin tärkeää, että et lisää materiaalia,
 441+"recentchangestext" => "Tältä sivulta voi seurata tuoreita {{grammar:illative|{{SITENAME}}}} tehtyjä muutoksia.
 442+[[{{ns:project}}:Tervetuloa {{grammar:illative|{{SITENAME}}}}|Tervetuloa {{grammar:illative|{{SITENAME}}}}!]]
 443+Katso seuraavia sivuja: [[{{ns:project}}:Kysymyksiä ja vastauksia {{grammar:elative|{{SITENAME}}}}|Useimmin kysyttyjä asioita]], [[{{ns:project}}:Sääntöjä ja ohjeita|{{grammar:genitive|{{SITENAME}}}} säännöt]]
 444+(erityisesti [[{{ns:project}}:Merkitsemiskäytäntöjä|Merkitsemiskäytännöt]],
 445+[[{{ns:project}}:Neutraali näkökulma|Neutraali näkökulma]]),
 446+ja [[{{ns:project}}:Aloittelijan virheitä|Aloittelijan virheitä]].
 447+Jos haluat nähdä {{grammar:genitive|{{SITENAME}}}} onnistuvan, on erittäin tärkeää, että et lisää materiaalia,
448448 jonka käyttöä rajoittavat [[Wikipedia ja Tekijänoikeudet|tekijänoikeudet]].
449449 Oikeudelliset seuraukset voivat vahingoittaa projektia vakavasti, joten kunnioita muiden tekijänoikeuksia.
450450 Katso myös [http://meta.wikipedia.org/wiki/Special:Recentchanges recent meta discussion].",
@@ -478,7 +478,7 @@
479479 "uploadfile" => "Tallenna tiedosto",
480480 "uploaderror" => "Tallennusvirhe",
481481 "uploadtext" => "<strong>SEIS!</strong> Ennen kuin tallennat tänne,
482 -tutustu ja seuraa Wikipedian <a href=\"" .
 482+tutustu ja seuraa {{grammar:genitive|{{SITENAME}}}} <a href=\"" .
483483 wfLocalUrlE( "Wikipedia:Kuvien käyttösäännöt" ) . "\">kuvienkäyttösääntöihin</a>.
484484 <p>Näyttääksesi tai etsiäksesi aiemmin tallennettuja kuvia,
485485 katso <a href=\"" . wfLocalUrlE( "Erityissivut:Luettelo kuvista" ) .
@@ -498,7 +498,7 @@
499499 Liittääksesi kuvan artikkeliin käytä seuraavan muotoista linkkiä
500500 <b>[[Kuva:tiedosto.jpg]]</b> tai <b>[[Kuva:tiedosto.png|kuvausteksti]]</b>
501501 tai <b>[[media:tiedosto.ogg]]</b> äänille..
502 -<p>Huomaa, että Wikipedian sivuilla muut voivat muokata tai poistaa tallentamasi
 502+<p>Huomaa, että {{grammar:genitive|{{SITENAME}}}} sivuilla muut voivat muokata tai poistaa tallentamasi
503503 tiedoston, jos he katsovat, että se ei palvele tietosanakirjan tarpeita, ja
504504 sinun tallentamismahdollisuutesi voidaan estää, jos väärinkäytät järjestelmää.",
505505 "uploadlog" => "Tallennusloki",
@@ -512,7 +512,7 @@
513513 "filedesc" => "Yhteenveto",
514514 "affirmation" => "Lupaan, että tämän tiedoston tekijänoikeuksien haltija sallii sen
515515 käytön $1 lisenssin mukaisesti.",
516 -"copyrightpage" => "Wikipedia:Wikipedia ja tekijänoikeudet",
 516+"copyrightpage" => "{{ns:project}}:Wikipedia ja tekijänoikeudet",
517517 "copyrightpagename" => "Wikipedia ja tekijänoikeudet",
518518 "uploadedfiles" => "Tallennetut tiedostot",
519519 "noaffirmation" => "Vahvista, ettei lähettämäsi tiedosto riko tekijänoikeuksia.",
@@ -562,7 +562,7 @@
563563 "sitestats" => "Sivuston tilastoja",
564564 "userstats" => "Käyttäjätilastoja",
565565 "sitestatstext" => "Tietokannassa on yhteensä <b>$1</b> sivua.
566 -Tähän on laskettu mukaan keskustelusivut, Wikipediasta kertovat sivut,
 566+Tähän on laskettu mukaan keskustelusivut, {{grammar:elative|{{SITENAME}}}} kertovat sivut,
567567 lyhyet \"tynkäsivut\", uudelleenohjaukset sekä muita sivuja joita
568568 ei voi pitää kunnollisina artikkeleina. Nämä poislukien tietokannassa on
569569 <b>$2</b> sivua joita voidaan todennäköisesti pitää oikeina artikkeleina.<p>
@@ -579,7 +579,7 @@
580580
581581 "maintenancebacklink" => "Takaisin ylläpitosivulle",
582582 "disambiguations" => "Tarkennussivu",
583 -"disambiguationspage" => "Wikipedia:Linkkejä_tarkennussivuihin",
 583+"disambiguationspage" => "{{ns:project}}:Linkkejä_tarkennussivuihin",
584584 "disambiguationstext" => "Seuraavat artikkelit linkittävät <i>tarkennussivuun</i>. Sen sijasta niiden pitäisi linkittää asianomaiseen aiheeseen.<br>Sivua kohdellaan tarkennussivuna jos siihen on linkki sivulta $1.<br>Linkkejä muihin nimiavaruuksiin <i>ei</i> ole listattu tässä.",
585585 "doubleredirects" => "Kaksinkertaiset uudelleenohjaukset",
586586 "doubleredirectstext" => "<b>Huomio:</b> Tässä listassa saattaa olla virheitä. Yleensä kyseessä on sivu, jossa ensimmäisen #REDIRECT:in jälkeen on tekstiä.<br>\nJokaisella rivillä on linkit ensimmäiseen ja toiseen uudelleenohjaukseen sekä toisen uudelleenohjauksen kohteen ensimmäiseen riviin, eli yleensä \"oikeaan\" kohteeseen, johon ensimmäisen uudelleenohjauksen pitäisi osoittaa.",
@@ -675,7 +675,7 @@
676676 "confirm" => "Vahvista",
677677 "confirmdelete" => "Vahvista poisto",
678678 "deletesub" => "(Poistetaan \"$1\")",
679 -"confirmdeletetext" => "Olet tuhoamassa pysyvästi sivun tai kuvan ja kaiken sen historian tietokannasta. Vahvista, että todella aiot tehdä näin ja että ymmärrät seuraukset, sekä että teet tämän [[Wikipedia:Policy|Wikipedian käytännön]] mukaisesti.",
 679+"confirmdeletetext" => "Olet tuhoamassa pysyvästi sivun tai kuvan ja kaiken sen historian tietokannasta. Vahvista, että todella aiot tehdä näin ja että ymmärrät seuraukset, sekä että teet tämän [[{{ns:project}}:Policy|{{grammar:genitive|{{SITENAME}}}} käytännön]] mukaisesti.",
680680 "confirmcheck" => "Kyllä, haluan varmasti poistaa tämän.",
681681 "actioncomplete" => "Toiminta suoritettu",
682682 "deletedtext" => "\"$1\" on poistettu.
@@ -710,7 +710,7 @@
711711 "undeletebtn" => "Palauta!",
712712 "undeletedarticle" => "palautettiin \"$1\"",
713713 "undeletedtext" => "Artikkeli [[$1]] on palautettu onnistuneesti.
714 -Lista viimeisimmistä poistoista ja palautuksista on sivulla [[Wikipedia:poistoloki]].",
 714+Lista viimeisimmistä poistoista ja palautuksista on sivulla [[{{ns:project}}:poistoloki]].",
715715
716716 # Contributions
717717 #
@@ -735,7 +735,7 @@
736736 # Block/unblock IP
737737 #
738738 "blockip" => "Aseta muokkausesto",
739 -"blockiptext" => "Käytä allaolevaa lomaketta estämään kirjoitusoikeudet tietyltä IP-osoitteelta. Näin pitäisi tehdä vain vandalismin estämiseksi, ja samalla on noudatettava [[Wikipedia:Policy|Wikipedian käytäntöjä]].
 739+"blockiptext" => "Käytä allaolevaa lomaketta estämään kirjoitusoikeudet tietyltä IP-osoitteelta. Näin pitäisi tehdä vain vandalismin estämiseksi, ja samalla on noudatettava [[{{ns:project}}:Policy|{{grammar:genitive|{{SITENAME}}}} käytäntöjä]].
740740 Ilmoita syy alapuolella (esimerkiksi lista vandalisoiduista sivuista).",
741741 "ipaddress" => "IP-osoite",
742742 "ipbreason" => "Syy",
@@ -775,12 +775,12 @@
776776 # SQL query
777777 #
778778 "asksql" => "SQL-kysely",
779 -"asksqltext" => "Käytä allaolevaa lomaketta tehdäksesi suoria kyselyitä Wikipedian tietokannasta.
 779+"asksqltext" => "Käytä allaolevaa lomaketta tehdäksesi suoria kyselyitä {{grammar:genitive|{{SITENAME}}}} tietokannasta.
780780 Merkkijonovakioita merkitään yksinkertaisilla lainausmerkeillä ('näin').
781781 Kyselyt voivat usein kuormittaa palvelinta pahastikin, joten käytä tätä toimintoa säästeliäästi.",
782782 "sqlquery" => "Kirjoita kysely",
783783 "querybtn" => "Lähetä kysely",
784 -"selectonly" => "Vain Wikipedian kehittäjät voivat tehdä muita kuin \"SELECT\"-hakuja.",
 784+"selectonly" => "Vain {{grammar:genitive|{{SITENAME}}}} kehittäjät voivat tehdä muita kuin \"SELECT\"-hakuja.",
785785 "querysuccessful" => "Kysely onnistui",
786786
787787 # Move page
@@ -817,6 +817,10 @@
818818 require_once( "LanguageUtf8.php" );
819819
820820 class LanguageFi extends LanguageUtf8 {
 821+ /*function LanguageFi() {
 822+ global $wgNamespaceNamesFi, $wgMetaNamespace;
 823+ $wgNamespaceNamesFi[NS_WP_TALK] = 'Keskustelu_' . $this->convertGrammar( $wgMetaNamespace, 'elative' );
 824+ }*/
821825
822826 function getNamespaces() {
823827 global $wgNamespaceNamesFi;
@@ -932,8 +936,38 @@
933937 function getMessage( $key )
934938 {
935939 global $wgAllMessagesFi;
936 - return $wgAllMessagesFi[$key];
 940+ return @$wgAllMessagesFi[$key];
937941 }
938942
 943+ # Convert from the nominative form of a noun to some other case
 944+ # Invoked with {{grammar:case|word}}
 945+ function convertGrammar( $word, $case ) {
 946+ # These rules are not perfect, but they are currently only used for site names so it doesn't
 947+ # matter if they are wrong sometimes. Just add a special case for your site name if necessary.
 948+ switch ( $case ) {
 949+ case 'genitive':
 950+ $word = "{$word}n";
 951+ break;
 952+ case 'elative':
 953+ if ( mb_substr($word, -1) == 'y' ) {
 954+ $word = "{$word}stä";
 955+ } else {
 956+ $word = "{$word}sta";
 957+ }
 958+ break;
 959+ case 'partitive':
 960+ if ( mb_substr($word, -1) == 'y' ) {
 961+ $word = "{$word}ä";
 962+ } else {
 963+ $word = "{$word}a";
 964+ }
 965+ break;
 966+ case 'illative':
 967+ # Double the last letter and add "n"
 968+ # mb_substr has a compatibility function in GlobalFunctions.php
 969+ $word = $word . mb_substr($word,-1) . 'n';
 970+ }
 971+ return $word;
 972+ }
939973 }
940974 ?>
Index: branches/REL1_3/phase3/languages/Language.php
@@ -194,7 +194,8 @@
195195 MAG_NS => array( 0, 'NS:' ),
196196 MAG_LOCALURL => array( 0, 'LOCALURL:' ),
197197 MAG_LOCALURLE => array( 0, 'LOCALURLE:' ),
198 - MAG_SERVER => array( 0, 'SERVER' )
 198+ MAG_SERVER => array( 0, 'SERVER' ),
 199+ MAG_GRAMMAR => array( 0, 'GRAMMAR:' )
199200 );
200201
201202 #-------------------------------------------------------------------
@@ -1786,11 +1787,17 @@
17871788 return $ellipsis . $string;
17881789 }
17891790 }
1790 -
 1791+
17911792 # Get a regex fragment for a single whitespace character
17921793 function getWhiteCharRegex() {
17931794 return '[\\s\\xa0_]';
17941795 }
 1796+
 1797+ # Grammatical transformations, needed for inflected languages
 1798+ # Invoked by putting {{grammar:case|word}} in a message
 1799+ function convertGrammar( $word, $case ) {
 1800+ return $word;
 1801+ }
17951802 }
17961803
17971804 # This should fail gracefully if there's not a localization available

Status & tagging log