* Restructured
authorNiklas Laxström <nikerabbit@users.mediawiki.org>
Tue, 4 Jul 2006 20:44:18 +0000 (20:44 +0000)
committerNiklas Laxström <nikerabbit@users.mediawiki.org>
Tue, 4 Jul 2006 20:44:18 +0000 (20:44 +0000)
languages/LanguageVec.php

index 9e16bf4..a87ddd8 100644 (file)
@@ -7,54 +7,71 @@
 
 require_once( 'LanguageIt.php' );
 
-/* private */ $wgNamespaceNamesVec = array(
-       NS_MEDIA            => 'Media',
-       NS_SPECIAL          => 'Speciale',
-       NS_MAIN             => '',
-       NS_TALK             => 'Discussion',
-       NS_USER             => 'Utente',
-       NS_USER_TALK        => 'Discussion_utente',
-       NS_PROJECT          => $wgMetaNamespace,
-       NS_PROJECT_TALK     => 'Discussion_'.$wgMetaNamespace,
-       NS_IMAGE            => 'Imagine',
-       NS_IMAGE_TALK       => 'Discussion_imagine',
-       NS_MEDIAWIKI        => 'MediaWiki',
-       NS_MEDIAWIKI_TALK   => 'Discussion_MediaWiki',
-       NS_TEMPLATE         => 'Template',
-       NS_TEMPLATE_TALK    => 'Discussion_template',
-       NS_HELP             => 'Aiuto',
-       NS_HELP_TALK        => 'Discussion_aiuto',
-       NS_CATEGORY         => 'Categoria',
-       NS_CATEGORY_TALK    => 'Discussion_categoria'
-);
-
-/* private */ $wgQuickbarSettingsIt = array(
-       'Nessun', 'Fisso a sinistra', 'Fisso a destra', 'Fluttuante a sinistra'
-);
-
 if (!$wgCachedMessageArrays) {
        require_once('MessagesVec.php');
 }
 
 class LanguageVec extends LanguageIt {
-       #FIXME: inherit almost everything for now
+       private $mMessagesVec, $mNamespaceNamesVec = null;
+
+       private $mQuickbarSettingsVec = array(
+               'Nessun', 'Fisso a sinistra', 'Fisso a destra', 'Fluttuante a sinistra'
+       );
+
+       function __construct() {
+               parent::__construct();
+
+               global $wgAllMessagesVec;
+               $this->mMessagesVec =& $wgAllMessagesVec;
+
+               global $wgMetaNamespace;
+               $this->mNamespaceNamesVec = array(              
+                       NS_MEDIA            => 'Media',
+                       NS_SPECIAL          => 'Speciale',
+                       NS_MAIN             => '',
+                       NS_TALK             => 'Discussion',
+                       NS_USER             => 'Utente',
+                       NS_USER_TALK        => 'Discussion_utente',
+                       NS_PROJECT          => $wgMetaNamespace,
+                       NS_PROJECT_TALK     => 'Discussion_' . $wgMetaNamespace,
+                       NS_IMAGE            => 'Imagine',
+                       NS_IMAGE_TALK       => 'Discussion_imagine',
+                       NS_MEDIAWIKI        => 'MediaWiki',
+                       NS_MEDIAWIKI_TALK   => 'Discussion_MediaWiki',
+                       NS_TEMPLATE         => 'Template',
+                       NS_TEMPLATE_TALK    => 'Discussion_template',
+                       NS_HELP             => 'Aiuto',
+                       NS_HELP_TALK        => 'Discussion_aiuto',
+                       NS_CATEGORY         => 'Categoria',
+                       NS_CATEGORY_TALK    => 'Discussion_categoria'
+               );
+
+       }
+
+       function getFallbackLanguage() {
+               return 'it';
+       }
 
        function getNamespaces() {
-               global $wgNamespaceNamesVec;
-               return $wgNamespaceNamesVec;
+               return $this->mNamespaceNamesVec + parent::getNamespaces();
        }
 
        function getQuickbarSettings() {
-               global $wgQuickbarSettingsVec;
-               return $wgQuickbarSettingsVec;
+               return $this->mQuickbarSettingsVec;
        }
 
        function getMessage( $key ) {
-               global $wgAllMessagesVec;
-               if(array_key_exists($key, $wgAllMessagesVec))
-                       return $wgAllMessagesVec[$key];
-               else
-                       return parent::getMessage($key);
+               if( isset( $this->mMessagesVec[$key] ) ) {
+                       return $this->mMessagesVec[$key];
+               } else {
+                       return parent::getMessage( $key );
+               }
        }
+
+       function getAllMessages() {
+               return $this->mMessagesVec;
+       }
+
 }
+
 ?>