added starttls support
[squirrelmail.git] / src / options.php
index 24b45cfedde8b1d8aba64364ace9b74f09187720..9607582d80af4ba56ed948fff4fcec6c67bb3a75 100644 (file)
@@ -3,14 +3,14 @@
 /**
  * options.php
  *
- * Copyright (c) 1999-2004 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.
  *
+ * @copyright © 1999-2006 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package squirrelmail
+ * @subpackage prefs
  */
 
 /**
 define('SM_PATH','../');
 
 /* SquirrelMail required files. */
-require_once(SM_PATH . 'include/validate.php');
-require_once(SM_PATH . 'functions/global.php');
-require_once(SM_PATH . 'functions/display_messages.php');
-require_once(SM_PATH . 'functions/imap.php');
-require_once(SM_PATH . 'functions/options.php');
-require_once(SM_PATH . 'functions/strings.php');
-require_once(SM_PATH . 'functions/html.php');
-require_once(SM_PATH . 'functions/forms.php');
+include_once(SM_PATH . 'include/validate.php');
+include_once(SM_PATH . 'functions/global.php');
+include_once(SM_PATH . 'functions/display_messages.php');
+include_once(SM_PATH . 'functions/imap.php');
+include_once(SM_PATH . 'functions/options.php');
+include_once(SM_PATH . 'functions/strings.php');
+include_once(SM_PATH . 'functions/html.php');
+include_once(SM_PATH . 'functions/forms.php');
 
 /*********************************/
 /*** Build the resultant page. ***/
@@ -40,6 +40,7 @@ define('SMOPT_MODE_LINK', 'link');
 define('SMOPT_PAGE_MAIN', 'main');
 define('SMOPT_PAGE_PERSONAL', 'personal');
 define('SMOPT_PAGE_DISPLAY', 'display');
+define('SMOPT_PAGE_COMPOSE', 'compose');
 define('SMOPT_PAGE_HIGHLIGHT', 'highlight');
 define('SMOPT_PAGE_FOLDER', 'folder');
 define('SMOPT_PAGE_ORDER', 'order');
@@ -142,7 +143,7 @@ if (!isset($optmode)) {
 }
 
 /*
- * First, set the load information for each option page.   
+ * First, set the load information for each option page.
  */
 
 /* Initialize load information variables. */
@@ -152,7 +153,7 @@ $optpage_loader = '';
 
 /* Set the load information for each page. */
 switch ($optpage) {
-    case SMOPT_PAGE_MAIN: 
+    case SMOPT_PAGE_MAIN:
         break;
     case SMOPT_PAGE_PERSONAL:
         $optpage_name     = _("Personal Information");
@@ -166,6 +167,12 @@ switch ($optpage) {
         $optpage_loader = 'load_optpage_data_display';
         $optpage_loadhook = 'optpage_loadhook_display';
         break;
+    case SMOPT_PAGE_COMPOSE:
+        $optpage_name   = _("Compose Preferences");
+        $optpage_file   = SM_PATH . 'include/options/compose.php';
+        $optpage_loader = 'load_optpage_data_compose';
+        $optpage_loadhook = 'optpage_loadhook_compose';
+        break;
     case SMOPT_PAGE_HIGHLIGHT:
         $optpage_name   = _("Message Highlighting");
         $optpage_file   = SM_PATH . 'include/options/highlight.php';
@@ -195,7 +202,7 @@ if ( !@is_file( $optpage_file ) ) {
     $optpage = SMOPT_PAGE_MAIN;
 } else if ($optpage != SMOPT_PAGE_MAIN ) {
     /* Include the file for this optionpage. */
-    
+
     require_once($optpage_file);
 
     /* Assemble the data for this option page. */
@@ -242,10 +249,13 @@ if ($optmode == SMOPT_MODE_SUBMIT) {
         case SMOPT_PAGE_DISPLAY:
             $save_hook_name = 'options_display_save';
             break;
+        case SMOPT_PAGE_COMPOSE:
+            $save_hook_name = 'options_compose_save';
+            break;
         case SMOPT_PAGE_FOLDER:
             $save_hook_name = 'options_folder_save';
             break;
-        default: 
+        default:
             $save_hook_name = 'options_save';
             break;
     }
@@ -293,13 +303,13 @@ if ($optpage == SMOPT_PAGE_MAIN) {
         }
 
         if (isset($optpage_save_error) && $optpage_save_error!=array()) {
-            echo "<font color=\"$color[2]\"><b>" . _("Error(s) happened while saving your options") . "</b></font><br />\n";
+            echo "<font color=\"$color[2]\"><b>" . _("Error(s) occurred while saving your options") . "</b></font><br />\n";
             echo "<ul>\n";
             foreach ($optpage_save_error as $error_message) {
                 echo '<li><small>' . $error_message . "</small></li>\n";
             }
             echo "</ul>\n";
-            echo '<b>' . _("Some of your preference changes are not applied.") . "</b><br />\n";
+            echo '<b>' . _("Some of your preference changes were not applied.") . "</b><br />\n";
         } else {
             /* Display a message indicating a successful save. */
             echo '<b>' . _("Successfully Saved Options") . ": $optpage_name</b><br />\n";
@@ -358,6 +368,14 @@ if ($optpage == SMOPT_PAGE_MAIN) {
         'js'   => false
     );
 
+    /* Build a section for Compose Options. */
+    $optpage_blocks[] = array(
+        'name' => _("Compose Preferences"),
+        'url'  => 'options.php?optpage=' . SMOPT_PAGE_COMPOSE,
+        'desc' => _("Control the behaviour and layout of writing new mail messages, replying to and forwarding messages."),
+        'js'   => false
+    );
+
     /* Build a section for plugins wanting to register an optionpage. */
     do_hook('optpage_register_block');
 
@@ -407,12 +425,10 @@ if ($optpage == SMOPT_PAGE_MAIN) {
 /* If we are not looking at the main option page, display the page here. */
 /*************************************************************************/
 } else {
-    echo addForm('options.php', 'POST', 'f')
+    echo addForm('options.php', 'post', 'f')
        . create_optpage_element($optpage)
        . create_optmode_element(SMOPT_MODE_SUBMIT)
-       . html_tag( 'table', '', '', '', 'width="100%" cellpadding="2" cellspacing="0" border="0"' ) . "\n"
-       . html_tag( 'tr' ) . "\n"
-       . html_tag( 'td', '', 'left' ) . "\n";
+       . html_tag( 'table', '', '', '', 'width="100%" cellpadding="2" cellspacing="0" border="0"' ) . "\n";
 
     /* Output the option groups for this page. */
     print_option_groups($optpage_data['options']);
@@ -429,6 +445,11 @@ if ($optpage == SMOPT_PAGE_MAIN) {
             $bottom_hook_name = 'options_display_bottom';
             $submit_name = 'submit_display';
             break;
+        case SMOPT_PAGE_COMPOSE:
+            $inside_hook_name = 'options_compose_inside';
+            $bottom_hook_name = 'options_compose_bottom';
+            $submit_name = 'submit_compose';
+            break;
         case SMOPT_PAGE_HIGHLIGHT:
             $inside_hook_name = 'options_highlight_inside';
             $bottom_hook_name = 'options_highlight_bottom';
@@ -452,21 +473,24 @@ if ($optpage == SMOPT_PAGE_MAIN) {
 
     /* If it is not empty, trigger the inside hook. */
     if ($inside_hook_name != '') {
-        do_hook($inside_hook_name);    
+        do_hook($inside_hook_name);
     }
 
     /* Spit out a submit button. */
     OptionSubmit($submit_name);
-    echo '</td></tr></table></form>';
+    echo '</table></form>';
 
     /* If it is not empty, trigger the bottom hook. */
     if ($bottom_hook_name != '') {
-        do_hook($bottom_hook_name);    
+        do_hook($bottom_hook_name);
     }
 }
+
 ?>
 </td></tr>
 </table>
 </td></tr>
 </table>
-</body></html>
+<?php
+$oTemplate->display('footer.tpl');
+?>
\ No newline at end of file