fix regex, missing trailing / added
[lhc/web/wiklou.git] / languages / Language.php
index 4992f4c..d6959d2 100644 (file)
 # files for examples.
 #
 
-#--------------------------------------------------------------------------
-# Constants
-#--------------------------------------------------------------------------
-
-# Magic words
-define("MAG_REDIRECT", 0);
-define("MAG_NOTOC", 1);
-define("MAG_START", 2);
-define("MAG_CURRENTMONTH", 3);
-define("MAG_CURRENTMONTHNAME", 4);
-define("MAG_CURRENTDAY", 5);
-define("MAG_CURRENTDAYNAME", 6);
-define("MAG_CURRENTYEAR", 7);
-define("MAG_CURRENTTIME", 8);
-define("MAG_NUMBEROFARTICLES", 9);
-define("MAG_CURRENTMONTHNAMEGEN", 10);
-define("MAG_MSG", 11);
-define("MAG_SUBST", 12);
-define("MAG_MSGNW", 13);
-define("MAG_NOEDITSECTION", 14);
-define("MAG_END", 15);
-define("MAG_IMG_THUMBNAIL",  16);
-define("MAG_IMG_RIGHT",      17);
-define("MAG_IMG_LEFT",       18);
-define("MAG_IMG_NONE",       19);
-define("MAG_IMG_WIDTH",      20);
-define("MAG_IMG_CENTER",      21);
-define("MAG_INT", 22);
-define("MAG_FORCETOC", 23);
-define("MAG_SITENAME", 24);
-define("MAG_NS", 25);
-define("MAG_LOCALURL", 26);
-define("MAG_LOCALURLE", 27);
-define("MAG_SERVER", 28);
-
-$wgVariableIDs = array(
-       MAG_CURRENTMONTH,
-       MAG_CURRENTMONTHNAME,
-       MAG_CURRENTDAY,
-       MAG_CURRENTDAYNAME,
-       MAG_CURRENTYEAR,
-       MAG_CURRENTTIME,
-       MAG_NUMBEROFARTICLES,
-       MAG_CURRENTMONTHNAMEGEN,
-    MAG_SITENAME,
-       MAG_SERVER
-);
-
-
-
 #--------------------------------------------------------------------------
 # Language-specific text
 #--------------------------------------------------------------------------
 
-# NOTE: To turn off "Current Events" in the sidebar,
-# set "currentevents" => "-"
-
-# NOTE: To turn off "Disclaimers" in the title links,
-# set "disclaimers" => "-"
-
 # The names of the namespaces can be set here, but the numbers
 # are magical, so don't change or move them!  The Namespace class
 # encapsulates some of the magic-ness.
@@ -95,14 +39,16 @@ if($wgMetaNamespace === FALSE)
        NS_TEMPLATE         => "Template",
        NS_TEMPLATE_TALK    => "Template_talk",
        NS_HELP             => "Help",
-       NS_HELP_TALK        => "Help_talk"
+       NS_HELP_TALK        => "Help_talk",
+       NS_CATEGORY         => "Category",
+       NS_CATEGORY_TALK    => "Category_talk"
 );
 
 /* private */ $wgDefaultUserOptionsEn = array(
        "quickbar" => 1, "underline" => 1, "hover" => 1,
        "cols" => 80, "rows" => 25, "searchlimit" => 20,
        "contextlines" => 5, "contextchars" => 50,
-       "skin" => 'standard', "math" => 1, "rcdays" => 7, "rclimit" => 50,
+       "skin" => $wgDefaultSkin, "math" => 1, "rcdays" => 7, "rclimit" => 50,
        "highlightbroken" => 1, "stubthreshold" => 0,
        "previewontop" => 1, "editsection"=>1,"editsectiononrightclick"=>0, "showtoc"=>1,
        "showtoolbar" =>1,
@@ -117,19 +63,25 @@ if($wgMetaNamespace === FALSE)
        'standard' => "Standard",
        'nostalgia' => "Nostalgia",
        'cologneblue' => "Cologne Blue",
-       'smarty' => "Paddington",
-       'montparnasse' => "Montparnasse",
        'davinci' => "DaVinci",
        'mono' => "Mono",
        'monobook' => "MonoBook"
 );
 
+define( "MW_MATH_PNG",    0 );
+define( "MW_MATH_SIMPLE", 1 );
+define( "MW_MATH_HTML",   2 );
+define( "MW_MATH_SOURCE", 3 );
+define( "MW_MATH_MODERN", 4 );
+define( "MW_MATH_MATHML", 5 );
+
 /* private */ $wgMathNamesEn = array(
-       "Always render PNG",
-       "HTML if very simple or else PNG",
-       "HTML if possible or else PNG",
-       "Leave it as TeX (for text browsers)",
-       "Recommended for modern browsers"
+       MW_MATH_PNG => "Always render PNG",
+       MW_MATH_SIMPLE => "HTML if very simple or else PNG",
+       MW_MATH_HTML => "HTML if possible or else PNG",
+       MW_MATH_SOURCE => "Leave it as TeX (for text browsers)",
+       MW_MATH_MODERN => "Recommended for modern browsers",
+       MW_MATH_MATHML => "MathML if possible (experimental)",
 );
 
 /* private */ $wgDateFormatsEn = array(
@@ -153,7 +105,7 @@ this</a> (alternative: like this<a href=\"\" class=\"internal\">?</a>).",
        "editondblclick" => "Edit pages on double click (JavaScript)",
        "editsection"=>"Enable section editing via [edit] links",
        "editsectiononrightclick"=>"Enable section editing by right clicking<br /> on section titles (JavaScript)",
-       "showtoc"=>"Show table of contents<br />(for articles with more than 3 headings)",
+       "showtoc"=>"Show table of contents<br />(for pages with more than 3 headings)",
        "rememberpassword" => "Remember password across sessions",
        "editwidth" => "Edit box has full width",
        "watchdefault" => "Add pages you edit to your watchlist",
@@ -170,13 +122,14 @@ this</a> (alternative: like this<a href=\"\" class=\"internal\">?</a>).",
 );
 
 /* The following list is in native languages, not in English */
+global $wgLanguageNames;
 /* private */ $wgLanguageNames = array(
        "aa" => "Afar",                 # Afar
        "ab" => "Abkhazian",    # Abkhazian - FIXME
        "af" => "Afrikaans",    # Afrikaans
        "ak" => "Akana",                # Akan
         "an" => "Aragon&eacute;s",      # Aragonese
-       "als" => "Els&auml;ssische",    # Alsatian
+       "als" => "Els&auml;ssisch",     # Alsatian
        "am" => "&#4768;&#4635;&#4653;&#4763;", # Amharic
        "ar" => "&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;",    # Arabic
        "arc" => "&#1813;&#1829;&#1810;&#1834;&#1848;&#1821;&#1819;",   # Aramaic
@@ -198,6 +151,7 @@ this</a> (alternative: like this<a href=\"\" class=\"internal\">?</a>).",
        "ca" => "Catal&agrave;",        # Catalan
        "ce" => "&#1053;&#1086;&#1093;&#1095;&#1080;&#1081;&#1085;",    # Chechen
        "ch" => "Chamoru",              # Chamorro
+       "chr" => "&#5091;&#5043;&#5033;", # Cherokee
        "chy" => "Tsets&ecirc;hest&acirc;hese", # Cheyenne
        "co" => "Corsu",                # Corsican
        "cr" => "Nehiyaw",              # Cree
@@ -311,6 +265,7 @@ this</a> (alternative: like this<a href=\"\" class=\"internal\">?</a>).",
        "rm" => "Rumantsch",    # Raeto-Romance
        "rn" => "Kirundi",              # Kirundi
        "ro" => "Rom&acirc;n&#259;",    # Romanian
+       "roa-rup" => "Arm&#226;neashti", # Aromanian
        "ru" => "&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;",    # Russian
        "rw" => "Kinyarwanda",
        "sa" => "&#2360;&#2306;&#2360;&#2381;&#2325;&#2371;&#2340;",    # Sanskrit
@@ -340,10 +295,11 @@ this</a> (alternative: like this<a href=\"\" class=\"internal\">?</a>).",
        "ti" => "Tigrinya",             # Tigrinya - FIXME
        "tk" => "&#1578;&#1585;&#1603;&#1605;&#1606; / &#1058;&#1091;&#1088;&#1082;&#1084;&#1077;&#1085;",      # Turkmen
        "tl" => "Tagalog",              # Tagalog (Filipino)
-       "tlh" => "tlhIngan-Hol",        # Klingon
+       #"tlh" => "tlhIngan-Hol",       # Klingon - no interlanguage links allowed
        "tn" => "Setswana",             # Setswana
        "to" => "Tonga",                # Tonga - FIXME
-       "tp" => "Toki Pona",            # Toki Pona
+       "tokipona" => "Toki Pona",      # Toki Pona
+       "tp" => "Toki Pona",            # Toki Pona - non-standard language code
        "tpi" => "Tok Pisin",   # Tok Pisin 
        "tr" => "T&uuml;rk&ccedil;e",   # Turkish
        "ts" => "Xitsonga",             # Tsonga
@@ -364,6 +320,7 @@ this</a> (alternative: like this<a href=\"\" class=\"internal\">?</a>).",
        "yo" => "Yor&ugrave;b&aacute;", # Yoruba
        "za" => "(Cuengh)",             # Zhuang
        "zh" => "&#20013;&#25991;",     # (Zh&#333;ng Wén) - Chinese
+       "zh-cfr" => "&#38313;&#21335;&#35486;", # Min-nan
        "zh-cn" => "&#20013;&#25991;(&#31616;&#20307;)",        # Simplified
        "zh-tw" => "&#20013;&#25991;(&#32321;&#20307;)",        # Traditional
        "zu" => "isiZulu",              # Zulu
@@ -407,6 +364,8 @@ $wgLanguageNamesEn =& $wgLanguageNames;
     MAG_CURRENTTIME          => array( 1,    "CURRENTTIME"            ),
     MAG_NUMBEROFARTICLES     => array( 1,    "NUMBEROFARTICLES"       ),
     MAG_CURRENTMONTHNAMEGEN  => array( 1,    "CURRENTMONTHNAMEGEN"    ),
+               MAG_PAGENAME             => array( 1,    "PAGENAME"               ),
+               MAG_NAMESPACE            => array( 1,    "NAMESPACE"              ),            
        MAG_MSG                  => array( 0,    "MSG:"                   ),
        MAG_SUBST                => array( 0,    "SUBST:"                 ),
     MAG_MSGNW                => array( 0,    "MSGNW:"                 ),
@@ -417,6 +376,7 @@ $wgLanguageNamesEn =& $wgLanguageNames;
     MAG_IMG_NONE             => array( 1,    "none"                   ),
     MAG_IMG_WIDTH            => array( 1,    "$1px"                   ),
     MAG_IMG_CENTER           => array( 1,    "center", "centre"       ),
+    MAG_IMG_FRAMED          => array( 1,    "framed", "enframed", "frame" ),
     MAG_INT                  => array( 0,    "INT:"                   ),
     MAG_SITENAME             => array( 1,    "SITENAME"               ),
     MAG_NS                   => array( 0,    "NS:"                    ),
@@ -425,63 +385,6 @@ $wgLanguageNamesEn =& $wgLanguageNames;
        MAG_SERVER               => array( 0,    "SERVER"                 )
 );
 
-# All special pages have to be listed here: a description of ""
-# will make them not show up on the "Special Pages" page, which
-# is the right thing for some of them (such as the "targeted" ones).
-#
-/* private */ $wgValidSpecialPagesEn = array(
-       "Userlogin"             => "",
-       "Userlogout"    => "",
-       "Preferences"   => "Set my user preferences",
-       "Watchlist"             => "My watchlist",
-       "Recentchanges" => "Recently updated pages",
-       "Upload"                => "Upload image files",
-       "Imagelist"             => "Image list",
-       "Listusers"             => "Registered users",
-       "Statistics"    => "Site statistics",
-       "Randompage"    => "Random article",
-
-       "Lonelypages"   => "Orphaned articles",
-       "Unusedimages"  => "Orphaned images",
-       "Popularpages"  => "Popular articles",
-       "Wantedpages"   => "Most wanted articles",
-       "Shortpages"    => "Short articles",
-       "Longpages"             => "Long articles",
-       "Newpages"              => "Newly created articles",
-       "Ancientpages"  => "Oldest articles",
-       "Deadendpages"  => "Dead-end pages",
-#      "Intl"                => "Interlanguage Links",
-       "Allpages"              => "All pages by title",
-
-       "Ipblocklist"   => "Blocked users/IP addresses",
-       "Maintenance"   => "Maintenance page",
-       "Specialpages"  => "",
-       "Contributions" => "",
-       "Emailuser"             => "",
-       "Whatlinkshere" => "",
-       "Recentchangeslinked" => "",
-       "Movepage"              => "",
-       "Blockme"       => "",
-       "Booksources"   => "External book sources",
-       "Categories"    => "Page categories",
-       "Export"                => "XML page export",
-       "Version"               => "Show MediaWiki version",
-       "Allmessages"   => "All system messages"
-);
-
-/* private */ $wgSysopSpecialPagesEn = array(
-       "Blockip"               => "Block a user/IP address",
-       "Asksql"                => "Query the database",
-       "Undelete"              => "Restore deleted pages",
-       "Makesysop"             => "Turn a user into a sysop",
-       "Import"                => "Import a page with history",
-);
-
-/* private */ $wgDeveloperSpecialPagesEn = array(
-       "Lockdb"                => "Make database read-only",
-       "Unlockdb"              => "Restore DB write access"
-);
-
 #-------------------------------------------------------------------
 # Default messages
 #-------------------------------------------------------------------
@@ -489,11 +392,21 @@ $wgLanguageNamesEn =& $wgLanguageNames;
 # hyphen (-). If you need more characters, you may be able to change
 # the regex in MagicWord::initRegex
 
+# NOTE: To turn off "Current Events" in the sidebar,
+# set "currentevents" => ""
+
+# NOTE: To turn off "Disclaimers" in the title links,
+# set "disclaimers" => ""
+
+# NOTE: To turn off "Community portal" in the title links,
+# set "portal" => ""
+
+
 /* private */ $wgAllMessagesEn = array(
 
 # Bits of text used by many pages:
 #
-"categories" => "Page categories",
+"categories" => "Categories",
 "category" => "category",
 "category_header" => "Articles in category \"$1\"",
 "subcategories" => "Subcategories",
@@ -502,10 +415,14 @@ $wgLanguageNamesEn =& $wgLanguageNames;
 "linktrail"            => "/^([a-z]+)(.*)\$/sD",
 "mainpage"             => "Main Page",
 "mainpagetext" => "Wiki software successfully installed.",
+"mainpagedocfooter" => "Please see [http://meta.wikipedia.org/wiki/MediaWiki_i18n documentation on customizing the interface]
+and the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User's Guide] for usage and configuration help.",
+'portal'               => 'Community portal',
+'portal-url'           => '{{ns:4}}:Community Portal',
 "about"                        => "About",
 "aboutwikipedia" => "About {{SITENAME}}",
 "aboutpage"            => "{{ns:4}}:About",
-'article' => 'Article',
+'article' => 'Content page',
 "help"                 => "Help",
 "helppage"             => "{{ns:12}}:Contents",
 "wikititlesuffix" => "{{SITENAME}}",
@@ -527,13 +444,14 @@ $wgLanguageNamesEn =& $wgLanguageNames;
 "moredotdotdot"        => "More...",
 "mypage"               => "My page",
 "mytalk"               => "My talk",
+"anontalk"             => "Talk for this IP",
 'navigation' => 'Navigation',
 "currentevents" => "Current events",
 "disclaimers" => "Disclaimers",
 "disclaimerpage"               => "{{ns:4}}:General_disclaimer",
 "errorpagetitle" => "Error",
 "returnto"             => "Return to $1.",
-"fromwikipedia"        => "From {{SITENAME}}, the free encyclopedia.",
+"fromwikipedia"        => "From {{SITENAME}}",
 "whatlinkshere"        => "Pages that link here",
 "help"                 => "Help",
 "search"               => "Search",
@@ -545,6 +463,7 @@ $wgLanguageNamesEn =& $wgLanguageNames;
 "editthispage" => "Edit this page",
 'delete' => 'Delete',
 "deletethispage" => "Delete this page",
+"undelete_short" => "Undelete $1 edits",
 'protect' => 'Protect',
 "protectthispage" => "Protect this page",
 'unprotect' => 'Unprotect',
@@ -554,19 +473,21 @@ $wgLanguageNamesEn =& $wgLanguageNames;
 'specialpage' => 'Special Page',
 'personaltools' => 'Personal tools',
 "postcomment"   => "Post a comment",
-"articlepage"  => "View article",
+"addsection"   => "+",
+"articlepage"  => "View content page",
 "subjectpage"  => "View subject", # For compatibility
 'talk' => 'Discussion',
 'toolbox' => 'Toolbox',
 "userpage" => "View user page",
-"wikipediapage" => "View meta page",
+"wikipediapage" => "View project page",
 "imagepage" =>         "View image page",
 "viewtalkpage" => "View discussion",
 "otherlanguages" => "Other languages",
 "redirectedfrom" => "(Redirected from $1)",
 "lastmodified" => "This page was last modified $1.",
 "viewcount"            => "This page has been accessed $1 times.",
-"gnunote" => "All text is available under the terms of the <a class='internal' href='{{localurl:GNU_Free_Documentation_License}}'>GNU Free Documentation License</a>. $wgSitename is powered by <a href='http://www.mediawiki.org/' class='external'>MediaWiki</a>, an open source wiki engine.",
+"copyright"    => "Content is available under $1.",
+"poweredby"    => "{{SITENAME}} is powered by [http://www.mediawiki.org/ MediaWiki], an open source wiki engine.",
 "printsubtitle" => "(From {{SERVER}})",
 "protectedpage" => "Protected page",
 "administrators" => "{{ns:4}}:Administrators",
@@ -585,7 +506,8 @@ performed by sysops with  \"bureaucrat\" status.",
 "go"                   => "Go",
 "ok"                   => "OK",
 "sitetitle"            => "{{SITENAME}}",
-"sitesubtitle" => "The Free Encyclopedia",
+"pagetitle"            => "$1 - {{SITENAME}}",
+"sitesubtitle" => "The Free Encyclopedia", # FIXME
 "retrievedfrom" => "Retrieved from \"$1\"",
 "newmessages" => "You have $1.",
 "newmessageslink" => "new messages",
@@ -595,6 +517,19 @@ performed by sysops with  \"bureaucrat\" status.",
 "hidetoc" => "hide",
 "thisisdeleted" => "View or restore $1?",
 "restorelink" => "$1 deleted edits",
+'feedlinks' => 'Feed:',
+
+# Short words for each namespace, by default used in the 'article' tab in monobook
+'nstab-main' => 'Article',
+'nstab-user' => 'User page',
+'nstab-media' => 'Media',
+'nstab-special' => 'Special',
+'nstab-wp' => 'About',
+'nstab-image' => 'Image',
+'nstab-mediawiki' => 'Message',
+'nstab-template' => 'Template',
+'nstab-help' => 'Help',
+'nstab-category' => 'Category',
 
 # Main script and global functions
 #
@@ -655,7 +590,8 @@ an incorrectly linked inter-language or inter-wiki title.",
 "perfdisabled" => "Sorry! This feature has been temporarily disabled
 because it slows the database down to the point that no one can use
 the wiki.",
-"perfdisabledsub" => "Here's a saved copy from $1:",
+"perfdisabledsub" => "Here's a saved copy from $1:", # obsolete?
+"perfcached" => "The following data is cached and may not be completely up to date:",
 "wrong_wfQuery_params" => "Incorrect parameters to wfQuery()<br />
 Function: $1<br />
 Query: $2
@@ -666,6 +602,7 @@ a number of reasons why this may be so, please see
 [[{{ns:4}}:Protected page]].
 
 You can view and copy the source of this page:",
+'seriousxhtmlerrors' => 'There were serious xhtml markup errors detected by tidy.',
 
 # Login and logout pages
 #
@@ -699,11 +636,13 @@ Don't forget to change your {{SITENAME}} preferences.",
 "badretype"            => "The passwords you entered do not match.",
 "userexists"   => "The user name you entered is already in use. Please choose a different name.",
 "youremail"            => "Your email*",
+"yourrealname"         => "Your real name*",
 "yournick"             => "Your nickname (for signatures)",
-"emailforlost" => "* Entering an email address is optional.  But it enables people to
-contact you through the website without you having to reveal your 
-email address to them, and it also helps you if you forget your   
-password.",
+"emailforlost" => "Fields marked with a star (*) are optional.  Storing an email address enables people to contact you through the website without you having to reveal your 
+email address to them, and it can be used to send you a new password if you forget it.<br /><br />Your real name, if you choose to provide it, will be used for giving you attribution for your work.",
+'prefs-help-userdata' => '* <strong>Real name</strong> (optional): if you choose to provide it this will be used for giving you attribution for your work.<br/>
+* <strong>Email</strong> (optional): Enables people to contact you through the website without you having to reveal your 
+email address to them, and it can be used to send you a new password if you forget it.',
 "loginerror"   => "Login error",
 "nocookiesnew" => "The user account was created, but you are not logged in. {{SITENAME}} uses cookies to log in users. You have cookies disabled. Please enable them, then log in with your new username and password.",
 "nocookieslogin"       => "{{SITENAME}} uses cookies to log in users. You have cookies disabled. Please enable them and try again.",
@@ -756,23 +695,23 @@ Please log in again after you receive it.",
 "summary"              => "Summary",
 "subject"              => "Subject/headline",
 "minoredit"            => "This is a minor edit",
-"watchthis"            => "Watch this article",
+"watchthis"            => "Watch this page",
 "savearticle"  => "Save page",
 "preview"              => "Preview",
 "showpreview"  => "Show preview",
 "blockedtitle" => "User is blocked",
 "blockedtext"  => "Your user name or IP address has been blocked by $1.
 The reason given is this:<br />''$2''<p>You may contact $1 or one of the other
-[[{{ns4}}:Administrators|administrators]] to discuss the block.
+[[{{ns:4}}:Administrators|administrators]] to discuss the block.
 
 Note that you may not use the \"email this user\" feature unless you have a valid email address registered in your [[Special:Preferences|user preferences]].
 
 Your IP address is $3. Please include this address in any queries you make.
 ",
 "whitelistedittitle" => "Login required to edit",
-"whitelistedittext" => "You have to [[Special:Userlogin|login]] to edit articles.",
+"whitelistedittext" => "You have to [[Special:Userlogin|login]] to edit pages.",
 "whitelistreadtitle" => "Login required to read",
-"whitelistreadtext" => "You have to [[Special:Userlogin|login]] to read articles.",
+"whitelistreadtext" => "You have to [[Special:Userlogin|login]] to read pages.",
 "whitelistacctitle" => "You are not allowed to create an account",
 "whitelistacctext" => "To be allowed to create accounts in this Wiki you have to [[Special:Userlogin|log]] in and have the appropriate permissions.",
 "loginreqtitle"        => "Login Required",
@@ -786,8 +725,12 @@ To create the page, start typing in the box below
 (see the [[{{ns:4}}:Help|help page]] for more info).
 If you are here by mistake, just click your browser's '''back''' button.",
 "talkpagetext" => "<!-- MediaWiki:talkpagetext -->",
-"anontalkpagetext" => "---- ''This is the discussion page for an anonymous user who has not created an account yet or who does not use it. We therefore have to use the numerical [[IP address]] to identify him/her. Such an IP address can be shared by several users. If you are an anonymous user and feel that irrelevant comments have been directed at you, please [[Special:Userlogin|create an account or log in]] to avoid future confusion with other anonymous users.'' ",
+"anontalkpagetext" => "----''This is the discussion page for an anonymous user who has not created an account yet or who does not use it. We therefore have to use the numerical [[IP address]] to identify him/her. Such an IP address can be shared by several users. If you are an anonymous user and feel that irrelevant comments have been directed at you, please [[Special:Userlogin|create an account or log in]] to avoid future confusion with other anonymous users.'' ",
 "noarticletext" => "(There is currently no text in this page)",
+'usercssjs' => "'''Note:''' After saving, you have to tell your bowser to get the new version: '''Mozilla:''' click ''reload''(or ''ctrl-r''), '''IE / Opera:''' ''ctrl-f5'', '''Safari:''' ''cmd-r'', '''Konqueror''' ''ctrl-r''.",
+'usercssjsyoucanpreview' => "<strong>Tip:</strong> Use the 'Show preview' button to test your new css/js before saving.",
+'usercsspreview' => "'''Remember that you are only previewing your user css, it has not yet been saved!'''",
+'userjspreview' => "'''Remember that you are only testing/previewing your user javascript, it has not yet been saved!'''",
 "updated"              => "(Updated)",
 "note"                 => "<strong>Note:</strong> ",
 "previewnote"  => "Remember that this is only a preview, and has not yet been saved!",
@@ -844,8 +787,9 @@ Please check the URL you used to access this page.\n",
 "next"                 => "next",
 "last"                 => "last",
 "orig"                 => "orig",
-"histlegend"   => "Legend: (cur) = difference with current version,
-(last) = difference with preceding version, M = minor edit",
+"histlegend"   => "Diff selection: mark the radio boxes of the versions to compare and hit enter or the button at the bottom.<br/>
+Legend: (cur) = difference with current version,
+(last) = difference with preceding version, M = minor edit.",
 
 # Diffs
 #
@@ -853,6 +797,9 @@ Please check the URL you used to access this page.\n",
 "loadingrev"   => "loading revision for diff",
 "lineno"               => "Line $1:",
 "editcurrent"  => "Edit the current version of this page",
+'selectnewerversionfordiff' => 'Select a newer version for comparison',
+'selectolderversionfordiff' => 'Select an older version for comparison',
+'compareselectedversions' => 'Compare selected versions',
 
 # Search results
 #
@@ -868,13 +815,13 @@ word fewer than three letters long, which is not yet supported.
 It could also be that you have mistyped the expression, for
 example \"fish and and scales\".
 Please try another query.",
-"matchtotals"  => "The query \"$1\" matched $2 article titles
-and the text of $3 articles.",
+"matchtotals"  => "The query \"$1\" matched $2 page titles
+and the text of $3 pages.",
 "nogomatch" => "No page with this exact title exists, trying full text search.",
 "titlematches" => "Article title matches",
-"notitlematches" => "No article title matches",
-"textmatches"  => "Article text matches",
-"notextmatches"        => "No article text matches",
+"notitlematches" => "No page title matches",
+"textmatches"  => "Page text matches",
+"notextmatches"        => "No page text matches",
 "prevn"                        => "previous $1",
 "nextn"                        => "next $1",
 "viewprevnext" => "View ($1) ($2) ($3).",
@@ -936,6 +883,9 @@ See [[{{ns:4}}:User preferences help]] for help deciphering the options.",
 "math_bad_tmpdir"      => "Can't write to or create math temp directory",
 "math_bad_output"      => "Can't write to or create math output directory",
 "math_notexvc" => "Missing texvc executable; please see math/README to configure.",
+'prefs-personal' => 'User data',
+'prefs-rc' => 'Recent changes and stub display',
+'prefs-misc' => 'Misc settings',
 "saveprefs"            => "Save preferences",
 "resetprefs"   => "Reset preferences",
 "oldpassword"  => "Old password",
@@ -951,6 +901,7 @@ See [[{{ns:4}}:User preferences help]] for help deciphering the options.",
 "stubthreshold" => "Threshold for stub display",
 "recentchangescount" => "Number of titles in recent changes",
 "savedprefs"   => "Your preferences have been saved.",
+"timezonelegend" => "Time zone",
 "timezonetext" => "Enter number of hours your local time differs
 from server time (UTC).",
 "localtime"    => "Local time display",
@@ -1006,9 +957,9 @@ to first check if such a file exists.
 <p>To view or search previously uploaded images,
 go to the <a href=\"{{localurle:Special:Imagelist}}\">list of uploaded images</a>.
 Uploads and deletions are logged on the " .
-"<a href=\"{{localurle:Wikipedia:Upload_log}}\">upload log</a>.
-<p>Use the form below to upload new image files for use in
-illustrating your articles.
+"<a href=\"{{localurle:Project:Upload_log}}\">upload log</a>.
+</p><p>Use the form below to upload new image files for use in
+illustrating your pages.
 On most browsers, you will see a \"Browse...\" button, which will
 bring up your operating system's standard file open dialog.
 Choosing a file will fill the name of that file into the text
@@ -1020,11 +971,11 @@ This may take some time if you have a slow internet connection.
 <p>The preferred formats are JPEG for photographic images, PNG
 for drawings and other iconic images, and OGG for sounds.
 Please name your files descriptively to avoid confusion.
-To include the image in an article, use a link in the form
-<b>[[image:file.jpg]]</b> or <b>[[image:file.png|alt text]]</b>
-or <b>[[media:file.ogg]]</b> for sounds.
+To include the image in a page, use a link in the form
+<b>[[{{ns:6}}:file.jpg]]</b> or <b>[[{{ns:6}}:file.png|alt text]]</b>
+or <b>[[{{ns:-2}}:file.ogg]]</b> for sounds.
 <p>Please note that as with wiki pages, others may edit or
-delete your uploads if they think it serves the encyclopedia, and
+delete your uploads if they think it serves the project, and
 you may be blocked from uploading if you abuse the system.",
 
 "uploadlog"            => "upload log",
@@ -1052,7 +1003,7 @@ any copyrights.",
 "largefile"            => "It is recommended that images not exceed 100k in size.",
 "successfulupload" => "Successful upload",
 "fileuploaded" => "File \"$1\" uploaded successfully.
-Please follow this link: ($2) to the description page and fill
+Please follow this link: $2 to the description page and fill
 in information about the file, such as where it came from, when it was
 created and by whom, and anything else you may know about it.",
 "uploadwarning" => "Upload warning",
@@ -1090,16 +1041,17 @@ this old version, (rev) = revert to this old version.
 "statistics"   => "Statistics",
 "sitestats"            => "Site statistics",
 "userstats"            => "User statistics",
-"sitestatstext" => "There are <b>$1</b> total pages in the database.
+"sitestatstext" => "There are '''$1''' total pages in the database.
 This includes \"talk\" pages, pages about {{SITENAME}}, minimal \"stub\"
-pages, redirects, and others that probably don't qualify as articles.
-Excluding those, there are <b>$2</b> pages that are probably legitimate
-articles.<p>
-There have been a total of <b>$3</b> page views, and <b>$4</b> page edits
-since the software was upgraded (July 20, 2002).
-That comes to <b>$5</b> average edits per page, and <b>$6</b> views per edit.",
-"userstatstext" => "There are <b>$1</b> registered users.
-<b>$2</b> of these are administrators (see $3).",
+pages, redirects, and others that probably don't qualify as content pages.
+Excluding those, there are '''$2''' pages that are probably legitimate
+content pages.
+
+There have been a total of '''$3''' page views, and '''$4''' page edits
+since the wiki was setup.
+That comes to '''$5''' average edits per page, and '''$6''' views per edit.",
+"userstatstext" => "There are '''$1''' registered users.
+'''$2''' of these are administrators (see $3).",
 
 # Maintenance Page
 #
@@ -1108,11 +1060,11 @@ That comes to <b>$5</b> average edits per page, and <b>$6</b> views per edit.",
 "maintenancebacklink"  => "Back to Maintenance Page",
 "disambiguations"      => "Disambiguation pages",
 "disambiguationspage"  => "{{ns:4}}:Links_to_disambiguating_pages",
-"disambiguationstext"  => "The following articles link to a <i>disambiguation page</i>. They should link to the appropriate topic instead.<br />A page is treated as dismbiguation if it is linked from $1.<br />Links from other namespaces are <i>not</i> listed here.",
+"disambiguationstext"  => "The following pages link to a <i>disambiguation page</i>. They should link to the appropriate topic instead.<br />A page is treated as dismbiguation if it is linked from $1.<br />Links from other namespaces are <i>not</i> listed here.",
 "doubleredirects"      => "Double Redirects",
-"doubleredirectstext"  => "<b>Attention:</b> This list may contain false positives. That usually means there is additional text with links below the first #REDIRECT.<br />\nEach row contains links to the first and second redirect, as well as the first line of the second redirect text, usually giving the \"real\" taget article, which the first redirect should point to.",
+"doubleredirectstext"  => "<b>Attention:</b> This list may contain false positives. That usually means there is additional text with links below the first #REDIRECT.<br />\nEach row contains links to the first and second redirect, as well as the first line of the second redirect text, usually giving the \"real\" target page, which the first redirect should point to.",
 "brokenredirects"      => "Broken Redirects",
-"brokenredirectstext"  => "The following redirects link to a non-existing article.",
+"brokenredirectstext"  => "The following redirects link to a non-existing pages.",
 "selflinks"            => "Pages with Self Links",
 "selflinkstext"                => "The following pages contain a link to themselves, which they should not.",
 "mispeelings"           => "Pages with misspellings",
@@ -1120,7 +1072,7 @@ That comes to <b>$5</b> average edits per page, and <b>$6</b> views per edit.",
 "mispeelingspage"       => "List of common misspellings",
 "missinglanguagelinks"  => "Missing Language Links",
 "missinglanguagelinksbutton"    => "Find missing language links for",
-"missinglanguagelinkstext"      => "These articles do <i>not</i> link to their counterpart in $1. Redirects and subpages are <i>not</i> shown.",
+"missinglanguagelinkstext"      => "These pages do <i>not</i> link to their counterpart in $1. Redirects and subpages are <i>not</i> shown.",
 
 
 # Miscellaneous special pages
@@ -1147,7 +1099,7 @@ That comes to <b>$5</b> average edits per page, and <b>$6</b> views per edit.",
 "rclsub"               => "(to pages linked from \"$1\")",
 "debug"                        => "Debug",
 "newpages"             => "New pages",
-"ancientpages"         => "Oldest articles",
+"ancientpages"         => "Oldest pages",
 "intl"         => "Interlanguage links",
 'move' => 'Move',
 "movethispage" => "Move this page",
@@ -1161,6 +1113,7 @@ sell new and used books, and may also have further information
 about books you are looking for.
 {{SITENAME}} is not affiliated with any of these businesses, and
 this list should not be construed as an endorsement.",
+"isbn" => "ISBN",
 "rfcurl" =>  "http://www.faqs.org/rfcs/rfc$1.html",
 "alphaindexline" => "$1 to $2",
 "version"              => "Version",
@@ -1200,10 +1153,10 @@ or has chosen not to receive e-mail from other users.",
 "watchnologintext"     => "You must be <a href=\"{{localurl:Special:Userlogin}}\">logged in</a>
 to modify your watchlist.",
 "addedwatch"           => "Added to watchlist",
-"addedwatchtext"       => "The page \"$1\" has been added to your <a href=\"{{localurl:Special:Watchlist}}\">watchlist</a>.
+"addedwatchtext"       => "The page \"$1\" has been added to your [[{{ns:-1}}:Watchlist|watchlist]].
 Future changes to this page and its associated Talk page will be listed there,
-and the page will appear <b>bolded</b> in the <a href=\"{{localurl:Special:Recentchanges}}\">list of recent changes</a> to
-make it easier to pick out.</p>
+and the page will appear '''bolded''' in the [[Special:Recentchanges|list of recent changes]] to
+make it easier to pick out.
 
 <p>If you want to remove the page from your watchlist later, click \"Stop watching\" in the sidebar.",
 "removedwatch"         => "Removed from watchlist",
@@ -1212,7 +1165,7 @@ make it easier to pick out.</p>
 "watchthispage"                => "Watch this page",
 'unwatch' => 'Unwatch',
 "unwatchthispage"      => "Stop watching",
-"notanarticle"         => "Not an article",
+"notanarticle"         => "Not a content page",
 "watchnochange"        => "None of your watched items were edited in the time period displayed.",
 "watchdetails"         => "($1 pages watched not counting talk pages;
 $2 total pages edited since cutoff;
@@ -1268,9 +1221,9 @@ All times shown are server time (UTC).
 'rollback_short' => 'Rollback',
 "rollbacklink" => "rollback",
 "rollbackfailed" => "Rollback failed",
-"cantrollback" => "Cannot revert edit; last contributor is only author of this article.",
+"cantrollback" => "Cannot revert edit; last contributor is only author of this page.",
 "alreadyrolled"        => "Cannot rollback last edit of [[$1]]
-by [[User:$2|$2]] ([[User talk:$2|Talk]]); someone else has edited or rolled back the article already. 
+by [[User:$2|$2]] ([[User talk:$2|Talk]]); someone else has edited or rolled back the page already. 
 
 Last edit was by [[User:$3|$3]] ([[User talk:$3|Talk]]). ",
 #   only shown if there is an edit comment
@@ -1281,13 +1234,22 @@ Last edit was by [[User:$3|$3]] ([[User talk:$3|Talk]]). ",
 See [[{{ns:4}}:Protected page]] for more information.",
 "protectedarticle" => "protected [[$1]]",
 "unprotectedarticle" => "unprotected [[$1]]",
+"protectsub" =>"(Protecting \"$1\")",
+"confirmprotecttext" => "Do you really want to protect this page?",
+"confirmprotect" => "Confirm protection",
+"protectcomment" => "Reason for protecting",
+"unprotectsub" =>"(Unprotecting \"$1\")",
+"confirmunprotecttext" => "Do you really want to unprotect this page?",
+"confirmunprotect" => "Confirm unprotection",
+"unprotectcomment" => "Reason for unprotecting",
+"protectreason" => "(give a reason)",
 
 # Undelete
 "undelete" => "Restore deleted page",
 "undeletepage" => "View and restore deleted pages",
 "undeletepagetext" => "The following pages have been deleted but are still in the archive and
 can be restored. The archive may be periodically cleaned out.",
-"undeletearticle" => "Restore deleted article",
+"undeletearticle" => "Restore deleted page",
 "undeleterevisions" => "$1 revisions archived",
 "undeletehistory" => "If you restore the page, all revisions will be restored to the history.
 If a new page with the same name has been created since the deletion, the restored
@@ -1296,7 +1258,7 @@ will not be automatically replaced.",
 "undeleterevision" => "Deleted revision as of $1",
 "undeletebtn" => "Restore!",
 "undeletedarticle" => "restored \"$1\"",
-"undeletedtext"   => "The article [[$1]] has been successfully restored.
+"undeletedtext"   => "[[$1]] has been successfully restored.
 See [[{{ns:4}}:Deletion_log]] for a record of recent deletions and restorations.",
 
 # Contributions
@@ -1489,25 +1451,33 @@ amusement.",
 "importfailed" => "Import failed: $1",
 "importnotext" => "Empty or no text",
 "importsuccess"        => "Import succeeded!",
+"importhistoryconflict" => "Conflicting history revision exists (may have imported this page before)",
 
 # Keyboard access keys for power users
 'accesskey-article' => 'a',
 'accesskey-talk' => 't',
 'accesskey-edit' => 'e',
+'accesskey-addsection' => '+',
+'accesskey-viewsource' => 'e',
 'accesskey-history' => 'h',
-'accesskey-protect' => 'p',
+'accesskey-protect' => '=',
 'accesskey-delete' => 'd',
+'accesskey-undelete' => 'd',
 'accesskey-move' => 'm',
-'accesskey-watch' => '',
-'accesskey-unwatch' => '',
-'accesskey-watchlist' => 'w',
-'accesskey-userpage' => '',
-'accesskey-mytalk' => '',
+'accesskey-watch' => 'w',
+'accesskey-unwatch' => 'w',
+'accesskey-watchlist' => 'l',
+'accesskey-userpage' => '.',
+'accesskey-anonuserpage' => '.',
+'accesskey-mytalk' => 'n',
+'accesskey-anontalk' => 'n',
 'accesskey-preferences' => '',
-'accesskey-mycontris' => '',
-'accesskey-login' => 'l',
-'accesskey-search' => 's',
-'accesskey-mainpage' => '',
+'accesskey-mycontris' => 'y',
+'accesskey-login' => 'o',
+'accesskey-logout' => 'o',
+'accesskey-search' => 'f',
+'accesskey-mainpage' => 'z',
+'accesskey-portal' => '',
 'accesskey-randompage' => 'x',
 'accesskey-currentevents' => '',
 'accesskey-sitesupport' => '',
@@ -1515,30 +1485,43 @@ amusement.",
 'accesskey-recentchanges' => 'r',
 'accesskey-recentchangeslinked' => 'c',
 'accesskey-whatlinkshere' => 'b',
-'accesskey-specialpages' => '',
+'accesskey-specialpages' => 'q',
 'accesskey-specialpage' => '',
 'accesskey-upload' => 'u',
+'accesskey-minoredit' => 'i',
+'accesskey-save' => 's',
+'accesskey-preview' => 'p',
+'accesskey-contributions' => '',
+'accesskey-emailuser' => '',
+'accesskey-compareselectedversions' => 'v',
 
 # tooltip help for the main actions
-'tooltip-article' => 'View the article [alt-a]',
-'tooltip-talk' => 'Discussion about the article [alt-t]',
+'tooltip-atom' => 'Atom feed for this page',
+'tooltip-article' => 'View the content page [alt-a]',
+'tooltip-talk' => 'Discussion about the content page [alt-t]',
 'tooltip-edit' => 'You can edit this page. Please use the preview button before saving. [alt-e]',
+'tooltip-addsection' => 'Add a comment to this page. [alt-+]',
+'tooltip-viewsource' => 'This page is protected. You can view its source. [alt-e]',
 'tooltip-history' => 'Past versions of this page, [alt-h]',
-'tooltip-protect' => 'Protect this page [alt-p]',
+'tooltip-protect' => 'Protect this page [alt-=]',
 'tooltip-delete' => 'Delete this page [alt-d]',
+'tooltip-undelete' => "Restore the $1 edits done to this page before it was deleted [alt-d]",
 'tooltip-move' => 'Move this page [alt-m]',
 'tooltip-nomove' => 'You don\'t have the permissions to move this page',
-'tooltip-watch' => 'Add this page to your watchlist',
-'tooltip-unwatch' => 'Remove this page from your watchlist',
-'tooltip-watchlist' => 'The watchlist is the list of pages you\'re monitoring for changes. [alt-w]',
-'tooltip-userpage' => 'My user page',
-'tooltip-mytalk' => 'My talk page',
+'tooltip-watch' => 'Add this page to your watchlist [alt-w]',
+'tooltip-unwatch' => 'Remove this page from your watchlist [alt-w]',
+'tooltip-watchlist' => 'The list of pages you\'re monitoring for changes. [alt-l]',
+'tooltip-userpage' => 'My user page [alt-.]',
+'tooltip-anonuserpage' => 'The user page for the ip you\'re editing as [alt-.]',
+'tooltip-mytalk' => 'My talk page [alt-n]',
+'tooltip-anontalk' => 'Discussion about edits from this ip address [alt-n]',
 'tooltip-preferences' => 'My preferences',
-'tooltip-mycontris' => 'List of my contributions',
-'tooltip-login' => 'You are encouraged to log in before editing, it\'s not mandatory however.',
-'tooltip-logout' => 'The start button',
-'tooltip-search' => 'Search this wiki',
-'tooltip-mainpage' => 'Visit the Main Page',
+'tooltip-mycontris' => 'List of my contributions [alt-y]',
+'tooltip-login' => 'You are encouraged to log in, it is not mandatory however. [alt-o]',
+'tooltip-logout' => 'Log out [alt-o]',
+'tooltip-search' => 'Search this wiki [alt-f]',
+'tooltip-mainpage' => 'Visit the Main Page [alt-z]',
+'tooltip-portal' => 'About the project, what you can do, where to find things',
 'tooltip-randompage' => 'Load a random page [alt-x]',
 'tooltip-currentevents' => 'Find background information on current events',
 'tooltip-sitesupport' => 'Support {{SITENAME}}',
@@ -1546,9 +1529,21 @@ amusement.",
 'tooltip-recentchanges' => 'The list of recent changes in the wiki. [alt-r]',
 'tooltip-recentchangeslinked' => 'Recent changes in pages linking to this page [alt-c]',
 'tooltip-whatlinkshere' => 'List of all wiki pages that link here [alt-b]',
-'tooltip-specialpages' => 'List of all special pages',
+'tooltip-specialpages' => 'List of all special pages [alt-q]',
 'tooltip-upload' => 'Upload images or media files [alt-u]',
 'tooltip-specialpage' => 'This is a special page, you can\'t edit the page itself.',
+'tooltip-minoredit' => 'Mark this as a minor edit [alt-i]',
+'tooltip-save' => 'Save your changes [alt-s]',
+'tooltip-preview' => 'Preview your changes, please use this before saving! [alt-p]',
+'tooltip-contributions' => 'View the list of contributions of this user',
+'tooltip-emailuser' => 'Send a mail to this user',
+'tooltip-rss' => 'RSS feed for this page',
+'tooltip-compareselectedversions' => 'See the differences between the two selected versions of this page. [alt-v]',
+
+# stylesheets
+
+'Monobook.css' => '/* edit this file to customize the monobook skin for the entire site */',
+#'Monobook.js' => '/* edit this file to change js things in the monobook skin */',
 
 # Metadata
 "nodublincore" => "Dublin Core RDF metadata disabled for this server.",
@@ -1557,7 +1552,18 @@ amusement.",
 
 # Attribution
 
-"anonymous" => "Anonymous user(s) of $wgSitename"
+"anonymous" => "Anonymous user(s) of $wgSitename",
+"siteuser" => "$wgSitename user $1",
+"lastmodifiedby" => "This page was last modified $1 by $2.",
+"and" => "and",
+"othercontribs" => "Based on work by $1.",
+"siteusers" => "$wgSitename user(s) $1",
+"spamprotectiontitle" => "Spam protection filter",
+"spamprotectiontext" => "The page you wanted to save was blocked by the spam filter. This is probably caused by a link to an external site. 
+
+You might want to check the following regular expression for patterns that are currently blocked:"
+
+
 );
 
 #--------------------------------------------------------------------------
@@ -1641,6 +1647,11 @@ class Language {
                global $wgUserTogglesEn;
                return $wgUserTogglesEn;
        }
+       
+       function getUserToggle( $tog ) {
+               $togs =& $this->getUserToggles();
+               return $togs[$tog];
+       }
 
        function getLanguageNames() {
                global $wgLanguageNamesEn;
@@ -1670,7 +1681,7 @@ class Language {
        function getMonthAbbreviation( $key )
        {
                global $wgMonthAbbreviationsEn;
-               return $wgMonthAbbreviationsEn[$key-1];
+               return @$wgMonthAbbreviationsEn[$key-1];
        }
 
        function getWeekdayName( $key )
@@ -1774,7 +1785,7 @@ class Language {
        function getMessage( $key )
        {
                global $wgAllMessagesEn;
-               return $wgAllMessagesEn[$key];
+               return @$wgAllMessagesEn[$key];
        }
        
        function getAllMessages()
@@ -1807,7 +1818,7 @@ class Language {
                 '[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xf7][\x80-\xbf]{3})+$/', $s ) : true );
 
                if( ($wgInputEncoding != "utf-8") and $ishigh and $isutf )
-                       return iconv( "UTF-8", $wgInputEncoding, $s );
+                       return @iconv( "UTF-8", $wgInputEncoding, $s );
                
                if( ($wgInputEncoding == "utf-8") and $ishigh and !$isutf )
                        return utf8_encode( $s );
@@ -1824,6 +1835,12 @@ class Language {
                return $in;
        }
 
+       function firstChar( $s ) {
+               # Get the first character of a string. In ASCII, return
+               # first byte of the string. UTF8 and others have to 
+               # overload this.
+               return $s[0];
+       }
 
        function setAltEncoding() {
                # Some languages may have an alternate char encoding option
@@ -1881,7 +1898,11 @@ class Language {
        function getMagic( &$mw )
        {
                $raw =& $this->getMagicWords(); 
-        $rawEntry = $raw[$mw->mId];
+               if( !isset( $raw[$mw->mId] ) ) {
+                       # Fall back to English if local list is incomplete
+                       $raw =& Language::getMagicWords();
+               }
+               $rawEntry = $raw[$mw->mId];
                $mw->mCaseSensitive = $rawEntry[0];
                $mw->mSynonyms = array_slice( $rawEntry, 1 );
        }
@@ -1892,18 +1913,6 @@ class Language {
                return "<em>$text</em>";
        }
 
-       # returns additional Regex for the tokenizer. See LanguageFr.php for an example
-       function tokenizerRegex()
-       {
-               return "";
-       }
-
-       # Process the token generated from the tokenizer by the above regex. Return
-       # NULL if the token is unknown, and the text to be added to the output otherwise
-       function processToken( &$token , &$tokenStack)
-       {
-               return NULL;
-       }
        
        # Normally we use the plain ASCII digits. Some languages such as Arabic will
        # want to output numbers using script-appropriate characters: override this
@@ -1912,8 +1921,22 @@ class Language {
                return $number;
        }
 
+        function listToText( $l ) {
+               $s = "";
+               $m = count($l) - 1;
+               for ($i = $m; $i >= 0; $i--) {
+                   if ($i == $m) {
+                       $s = $l[$i];
+                   } else if ($i == $m - 1) {
+                       $s = $l[$i] . " " . $this->getMessage("and") . " " . $s;
+                   } else {
+                       $s = $l[$i] . ", " . $s;
+                   }
+               }
+               return $s;
+       }
 }
 
+# This should fail gracefully if there's not a localization available
 @include_once( "Language" . ucfirst( $wgLanguageCode ) . ".php" );
-
 ?>