bugfix
[squirrelmail.git] / functions / options.php
index e1de4e73880e08eae49b8a5d153fd80c897e152f..0137114c74023db4f98de46ff78893bb7a46e2aa 100644 (file)
@@ -1,15 +1,15 @@
 <?php
 
-    /**
    ** options.php
    **
    ** Copyright (c) 1999-2001 The Squirrelmail Development Team
    ** Licensed under the GNU GPL. For full terms see the file COPYING.
    **
    ** Functions needed to display the options pages.
    **
    ** $Id$
    **/
+/**
+ * options.php
+ *
* Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Licensed under the GNU GPL. For full terms see the file COPYING.
+ *
+ * Functions needed to display the options pages.
+ *
+ * $Id$
+ */
 
 /**********************************************/
 /* Define constants used in the options code. */
@@ -36,6 +36,7 @@ define('SMOPT_SIZE_SMALL', 1);
 define('SMOPT_SIZE_MEDIUM', 2);
 define('SMOPT_SIZE_LARGE', 3);
 define('SMOPT_SIZE_HUGE', 4);
+define('SMOPT_SIZE_NORMAL', 5);
 
 define('SMOPT_SAVE_DEFAULT', 'save_option');
 define('SMOPT_SAVE_NOOP', 'save_option_noop');
@@ -96,7 +97,7 @@ class SquirrelOption {
         }
 
         /* Set the default save function. */
-        if ((type != SMOPT_TYPE_HIDDEN) && ($type != SMOPT_TYPE_COMMENT)) {
+        if (($type != SMOPT_TYPE_HIDDEN) && ($type != SMOPT_TYPE_COMMENT)) {
             $this->save_function = SMOPT_SAVE_DEFAULT;
         } else {
             $this->save_function = SMOPT_SAVE_NOOP;
@@ -163,7 +164,7 @@ class SquirrelOption {
                 $result = $this->createWidget_Comment();
                 break;
             default:
-               $result = '<FONT COLOR=RED>'
+               $result = '<FONT COLOR="' . $color[2] . '">'
                        . sprintf(_("Option Type '%s' Not Found"), $this->type)
                        . '</FONT>';
         }
@@ -177,12 +178,21 @@ class SquirrelOption {
 
     function createWidget_String() {
         switch ($this->size) {
-            case SMOPT_SIZE_TINY:  $width = 5; break;
-            case SMOPT_SIZE_SMALL: $width = 12; break;
-            case SMOPT_SIZE_LARGE: $width = 38; break;
-            case SMOPT_SIZE_HUGE:  $width = 50; break;
+            case SMOPT_SIZE_TINY:
+                $width = 5;
+                break;
+            case SMOPT_SIZE_SMALL:
+                $width = 12;
+                break;
+            case SMOPT_SIZE_LARGE:
+                $width = 38;
+                break;
+            case SMOPT_SIZE_HUGE:
+                $width = 50;
+                break;
             case SMOPT_SIZE_NORMAL:
-            default: $width = 25;
+            default:
+                $width = 25;
         }
 
         $result = "<INPUT NAME=\"new_$this->name\" VALUE=\"$this->value\" SIZE=\"$width\">";
@@ -288,7 +298,7 @@ function save_option($option) {
     setPref($data_dir, $username, $option->name, $option->new_value);
 
     /* I do not know if this next line does any good. */
-    $GLOBALS[$name] = $option->new_value;
+    $GLOBALS[$option->name] = $option->new_value;
 }
 
 function save_option_noop($option) {
@@ -310,11 +320,6 @@ function create_hidden_element($name, $value) {
     return ($result);
 }
 
-
-function createOptionGroups($optgrps, $optvals) {
-    return create_option_groups($optgrps, $optvals);
-}
-
 function create_option_groups($optgrps, $optvals) {
     /* Build a simple array with which to start. */
     $result = array();
@@ -377,14 +382,17 @@ function create_option_groups($optgrps, $optvals) {
     return ($result);
 }
 
-function printOptionGroups($option_groups) {
-    print_option_groups($option_groups);
-}
-
 function print_option_groups($option_groups) {
+    /* Print each option group. */
     foreach ($option_groups as $next_optgrp) {
-        echo '<TR><TD ALIGN="CENTER" VALIGN="MIDDLE" COLSPAN="2" NOWRAP><B>'
-           . $next_optgrp['name'] . "</B></TD></TR>\n";
+        /* If it is not blank, print the name for this option group. */
+        if ($next_optgrp['name'] != '') {
+            echo '<TR><TD ALIGN=CENTER VALIGN=MIDDLE COLSPAN=2 NOWRAP><B>'
+               .   $next_optgrp['name']
+               . "</B></TD></TR>\n";
+        }
+
+        /* Print each option in this option group. */
         foreach ($next_optgrp['options'] as $option) {
             if ($option->type != SMOPT_TYPE_HIDDEN) {
                 echo "<TR>\n";
@@ -396,6 +404,8 @@ function print_option_groups($option_groups) {
                 echo $option->createHTMLWidget();
             }
         }
+
+        /* Print an empty row after this option group. */
         echo "<TR><TD COLSPAN=\"2\">&nbsp;</TD></TR>\n";
     }
 }