skin names now in associative array, provides fallback for the three main skins
authorGabriel Wicke <gwicke@users.mediawiki.org>
Fri, 26 Mar 2004 22:25:57 +0000 (22:25 +0000)
committerGabriel Wicke <gwicke@users.mediawiki.org>
Fri, 26 Mar 2004 22:25:57 +0000 (22:25 +0000)
includes/Skin.php
includes/User.php
languages/Language.php

index 78da8c4..48cd2e3 100644 (file)
@@ -9,15 +9,17 @@ include_once( "Feed.php" );
 # Language class has internationalized names
 #
 /* private */ $wgValidSkinNames = array(
-       "Standard", "Nostalgia", "CologneBlue"
+       'standard' => "Standard", 
+       'nostalgia' => "Nostalgia",
+       'cologneblue' => "CologneBlue"
 );
 if( $wgUseSmarty ) {
-       $wgValidSkinNames[] = "Smarty";
-       $wgValidSkinNames[] = "Montparnasse";
+       $wgValidSkinNames['smarty'] = "Smarty";
+       $wgValidSkinNames['montparnasse'] = "Montparnasse";
 }
 if( $wgUsePHPTal ) {
     #$wgValidSkinNames[] = "PHPTal";
-    $wgValidSkinNames[] = "DaVinci";
+    $wgValidSkinNames['davinci'] = "DaVinci";
 }
 
 include_once( "RecentChange.php" );
index 7024b98..1f6ff8f 100644 (file)
@@ -434,10 +434,21 @@ class User {
                if ( ! isset( $this->mSkin ) ) {
                        $skinNames = Skin::getSkinNames();
                        $s = $this->getOption( "skin" );
-                       if ( "" == $s ) { $s = 0; }
-
-                       if ( $s >= count( $skinNames ) ) { $sn = "SkinStandard"; }
-                       else $sn = "Skin" . $skinNames[$s];
+                       if ( "" == $s ) { $s = 'standard'; }
+
+                       if ( !isset( $skinNames[$s] ) ) {
+                               $fallback = array(
+                                       'standard' => "Standard",
+                                       'nostalgia' => "Nostalgia",
+                                       'cologneblue' => "Cologne Blue");
+                               if(is_int($s) && isset( $fallback[$s]) ){
+                                       $sn = $fallback[$s];
+                               } else {
+                                       $sn = "SkinStandard";
+                               }
+                       } else {
+                               $sn = "Skin" . $skinNames[$s];
+                       }
                        $this->mSkin = new $sn;
                }
                return $this->mSkin;
index c1a8e82..92de762 100644 (file)
@@ -82,7 +82,7 @@ if($wgMetaNamespace === FALSE)
        "quickbar" => 1, "underline" => 1, "hover" => 1,
        "cols" => 80, "rows" => 25, "searchlimit" => 20,
        "contextlines" => 5, "contextchars" => 50,
-       "skin" => 0, "math" => 1, "rcdays" => 7, "rclimit" => 50,
+       "skin" => 'standard', "math" => 1, "rcdays" => 7, "rclimit" => 50,
        "highlightbroken" => 1, "stubthreshold" => 0,
        "previewontop" => 1, "editsection"=>0,"editsectiononrightclick"=>0, "showtoc"=>1,
        "showtoolbar" =>1,
@@ -94,7 +94,12 @@ if($wgMetaNamespace === FALSE)
 );
 
 /* private */ $wgSkinNamesEn = array(
-       "Standard", "Nostalgia", "Cologne Blue", "Paddington", "Montparnasse", "DaVinci"
+       'standard' => "Standard",
+       'nostalgia' => "Nostalgia",
+       'cologneblue' => "Cologne Blue",
+       'smarty' => "Paddington",
+       'montparnasse' => "Montparnasse",
+       'davinci' => "DaVinci"
 );
 
 /* private */ $wgMathNamesEn = array(