Getting ready for 1.2.0 release.
[squirrelmail.git] / src / options.php
index 1b296972a41d21978af3644d3e0f22634f828b30..f42ed118fc9f94ff13bd617f5ad55e625443b1c3 100644 (file)
@@ -1,16 +1,16 @@
 <?php
 
-   /**
   **  options.php
   **
   **  Copyright (c) 1999-2001 The SquirrelMail Development Team
   **  Licensed under the GNU GPL. For full terms see the file COPYING.
   **
   **  Displays the options page. Pulls from proper user preference files
   **  and config.php. Displays preferences as selected and other options.
   **
   **  $Id$
   */
+/**
* options.php
+ *
* Copyright (c) 1999-2002 The SquirrelMail Project Team
* Licensed under the GNU GPL. For full terms see the file COPYING.
+ *
* Displays the options page. Pulls from proper user preference files
* and config.php. Displays preferences as selected and other options.
+ *
* $Id$
+ */
 
 require_once('../src/validate.php');
 require_once('../functions/display_messages.php');
@@ -97,31 +97,36 @@ $optpage_loader = '';
 switch ($optpage) {
     case SMOPT_PAGE_MAIN: break;
     case SMOPT_PAGE_PERSONAL:
-        $optpage_name   = _("Personal Information");
-        $optpage_file   = 'options_personal.php';
-        $optpage_loader = 'load_optpage_data_personal';
+        $optpage_name     = _("Personal Information");
+        $optpage_file     = '../src/options_personal.php';
+        $optpage_loader   = 'load_optpage_data_personal';
+        $optpage_loadhook = 'optpage_loadhook_personal';
         break;
     case SMOPT_PAGE_DISPLAY:
         $optpage_name   = _("Display Preferences");
-        $optpage_file   = 'options_display.php';
+        $optpage_file   = '../src/options_display.php';
         $optpage_loader = 'load_optpage_data_display';
+        $optpage_loadhook = 'optpage_loadhook_display';
         break;
     case SMOPT_PAGE_HIGHLIGHT:
         $optpage_name   = _("Message Highlighting");
-        $optpage_file   = 'options_highlight.php';
+        $optpage_file   = '../src/options_highlight.php';
         $optpage_loader = 'load_optpage_data_highlight';
+        $optpage_loadhook = 'optpage_loadhook_highlight';
         break;
     case SMOPT_PAGE_FOLDER:
         $optpage_name   = _("Folder Preferences");
-        $optpage_file   = 'options_folder.php';
+        $optpage_file   = '../src/options_folder.php';
         $optpage_loader = 'load_optpage_data_folder';
+        $optpage_loadhook = 'optpage_loadhook_folder';
         break;
     case SMOPT_PAGE_ORDER:
         $optpage_name = _("Index Order");
-        $optpage_file = 'options_order.php';
+        $optpage_file = '../src/options_order.php';
         $optpage_loader = 'load_optpage_data_order';
+        $optpage_loadhook = 'optpage_loadhook_order';
         break;
-    default: do_hook('set_optpage_loadinfo');
+    default: do_hook('optpage_set_loadinfo');
 }
 
 /**********************************************************/
@@ -135,6 +140,7 @@ if ($optpage != SMOPT_PAGE_MAIN) {
     /* Assemble the data for this option page. */
     $optpage_data = array();
     $optpage_data = $optpage_loader();
+    do_hook($optpage_loadhook);
     $optpage_data['options'] =
         create_option_groups($optpage_data['grps'], $optpage_data['vals']);
 }
@@ -143,15 +149,16 @@ if ($optpage != SMOPT_PAGE_MAIN) {
 /*** Next, process anything that needs to be processed. ***/
 /***********************************************************/
 
-switch ($optmode) {
-    case SMOPT_MODE_SUBMIT:
-        $max_refresh = process_optionmode_submit($optpage, $optpage_data);
-        break;
-    case SMOPT_MODE_LINK:
-        $max_refresh = process_optionmode_link($optpage, $optpage_data);
-        break;
+if ( isset( $optpage_data ) ) {
+    switch ($optmode) {
+        case SMOPT_MODE_SUBMIT:
+            $max_refresh = process_optionmode_submit($optpage, $optpage_data);
+            break;
+        case SMOPT_MODE_LINK:
+            $max_refresh = process_optionmode_link($optpage, $optpage_data);
+            break;
+    }
 }
-
 /*** MOVE THIS DISPLAY CODE DOWN EVENTUALLY!!! ***/
 
 $optpage_title = _("Options");
@@ -187,7 +194,8 @@ if ($optmode == SMOPT_MODE_SUBMIT)   {
         case SMOPT_PAGE_FOLDER:
             $save_hook_name = 'options_folder_save';
             break;
-        default: $save_hook_name = 'options_save';
+        default: 
+            $save_hook_name = 'options_save';
             break;
     }
 
@@ -321,16 +329,13 @@ if ($optpage == SMOPT_PAGE_MAIN) {
 /*************************************************************************/
 } else {
     echo '<FORM NAME="f" ACTION="options.php" METHOD="POST"><BR>' . "\n"
-       . '<TABLE WIDTH="100%" CELLPADDING="2" CELLSPACING="0" BORDER="0">' . "\n"
+       . '<TABLE WIDTH="100%" CELLPADDING=2 CELLSPACING=0 BORDER=0>' . "\n"
        . create_optpage_element($optpage)
        . create_optmode_element(SMOPT_MODE_SUBMIT);
 
     /* Output the option groups for this page. */
     print_option_groups($optpage_data['options']);
 
-    /*** FIXME: CURRENTLY, THIS NEXT SWITCH STATEMENT DOES NOT TAKE
-     *** INTO ACCOUNT FOR PLUGINS. NEED TO FIX IT. ***/
     /* Set the inside_hook_name and submit_name. */
     switch ($optpage) {
         case SMOPT_PAGE_PERSONAL:
@@ -345,12 +350,12 @@ if ($optpage == SMOPT_PAGE_MAIN) {
             break;
         case SMOPT_PAGE_HIGHLIGHT:
             $inside_hook_name = 'options_highlight_inside';
-            $bottom_hook_name = 'options_display_bottom';
+            $bottom_hook_name = 'options_highlight_bottom';
             $submit_name = 'submit_highlight';
             break;
         case SMOPT_PAGE_FOLDER:
             $inside_hook_name = 'options_folder_inside';
-            $bottom_hook_name = 'options_display_bottom';
+            $bottom_hook_name = 'options_folder_bottom';
             $submit_name = 'submit_folder';
             break;
         case SMOPT_PAGE_ORDER:
@@ -451,4 +456,4 @@ if ($optpage == SMOPT_PAGE_MAIN) {
              "</TABLE>\n";
     }
 
-?>
\ No newline at end of file
+?>