X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=src%2Foptions.php;h=8b78c4914c8b36611c715879359d1fbb648e3662;hp=b8acd1e838baa617f73a13207fdc2e68646c53eb;hb=fd87494d30afbfc69dafcaaaec43e287be4bc22c;hpb=9d157cec2821461fe4d348a47e2312db5e84c052 diff --git a/src/options.php b/src/options.php index b8acd1e8..8b78c491 100644 --- a/src/options.php +++ b/src/options.php @@ -1,437 +1,306 @@ - echo "\n"; - echo " \n"; - echo "
\n"; - echo _("Options"); - echo "
\n"; +
+ + +
+
- echo "
\n"; - echo "\n"; - // FULL NAME - echo " "; - echo " "; - echo " "; - echo " "; - // FROM-ADDRESS - echo " "; - echo " "; - echo " "; - echo " "; - // REPLY-TO - echo " "; - echo " "; - echo " "; - echo " "; - // DEFAULT FOLDERS - if ($show_prefix_option == true) { - echo " "; - echo " "; - echo " "; - echo " "; - } - // THEME - echo " "; - echo " "; - echo " "; - echo " "; - - - // LEFT_REFRESH - echo " "; - echo " "; - echo " "; - echo " "; - echo "
"; - echo _("Full Name:"); - echo " "; - echo "
"; - echo "
"; - echo _("E-mail address:"); - echo " "; - echo "
"; - echo "
"; - echo _("Reply-to:"); - echo " "; - echo "
"; - echo "
"; - echo _("Folder path:"); - echo " "; - if (isset ($folder_prefix)) - echo "
"; - else - echo "
"; - echo "
"; - echo _("Theme:"); - echo " "; + + "; - echo " "; - // LANGUAGE - echo " "; - echo " "; - echo " "; - echo " "; + echo '
'._("Successfully saved display preferences!").'
'; + echo '' . _("Refresh Page") . '
'; + } else if (isset($submit_folder)) { + /* Save folder preferences. */ + if ($trash != 'none') { + setPref($data_dir, $username, 'move_to_trash', true); + setPref($data_dir, $username, 'trash_folder', $trash); + } else { + setPref($data_dir, $username, 'move_to_trash', '0'); + setPref($data_dir, $username, 'trash_folder', 'none'); + } + if ($sent != 'none') { + setPref($data_dir, $username, 'move_to_sent', true); + setPref($data_dir, $username, 'sent_folder', $sent); + } else { + setPref($data_dir, $username, 'move_to_sent', '0'); + setPref($data_dir, $username, 'sent_folder', 'none'); + } + if ($draft != 'none') { + setPref($data_dir, $username, 'save_as_draft', true); + setPref($data_dir, $username, 'draft_folder', $draft); + } else { + setPref($data_dir, $username, 'save_as_draft', '0'); + setPref($data_dir, $username, 'draft_folder', 'none'); + } + if (isset($folderprefix)) { + setPref($data_dir, $username, 'folder_prefix', $folderprefix); + } else { + setPref($data_dir, $username, 'folder_prefix', ''); + } + setPref($data_dir, $username, 'unseen_notify', $unseennotify); + setPref($data_dir, $username, 'unseen_type', $unseentype); + if (isset($collapsefolders)) + setPref($data_dir, $username, 'collapse_folders', $collapsefolders); + else + removePref($data_dir, $username, 'collapse_folders'); + setPref($data_dir, $username, 'date_format', $dateformat); + setPref($data_dir, $username, 'hour_format', $hourformat); + do_hook('options_folders_save'); + echo '
'._("Successfully saved folder preferences!").'
'; + echo '' . _("Refresh Folder List") . '
'; + } else { + do_hook('options_save'); + } + /****************************************/ + /* Now build our array of option pages. */ + /****************************************/ - // TRASH FOLDER - echo ""; + /* Build a section for Display Options. */ + $optionpages[] = array( + 'name' => _("Display Preferences"), + 'url' => 'options_display.php', + 'desc' => _("You can change the way that SquirrelMail looks and displays information to you, such as the colors, the language, and other settings."), + 'js' => false + ); - // SENT FOLDER - echo ""; + /* Build a section for Folder Options. */ + $optionpages[] = array( + 'name' => _("Folder Preferences"), + 'url' => 'options_folder.php', + 'desc' => _("These settings change the way your folders are displayed and manipulated."), + 'js' => false + ); + /* Build a section for Index Order Options. */ + $optionpages[] = array( + 'name' => _("Index Order"), + 'url' => 'options_order.php', + 'desc' => _("The order of the message index can be rearanged and changed to contain the headers in any order you want."), + 'js' => false + ); + /* Build a section for plugins wanting to register an optionpage. */ + do_hook('options_register'); - echo "
- echo " "; - echo "
"; - echo _("Language:"); - echo " "; +'._("Successfully saved personal information!").'
'; + } else if (isset($submit_display)) { + /* Do checking to make sure $new_theme is in the array. */ + $theme_in_array = false; + for ($i=0; $i < count($theme); $i++) { + if ($theme[$i]['PATH'] == $new_chosen_theme) { + $theme_in_array = true; + break; + } + } + if (!$theme_in_array) { + $new_chosen_theme = ''; + } + + /* Save display preferences. */ + setPref($data_dir, $username, 'chosen_theme', $new_chosen_theme); + setPref($data_dir, $username, 'language', $new_language); + setPref($data_dir, $username, 'use_javascript_addr_book', $new_use_javascript_addr_book); + setPref($data_dir, $username, 'javascript_setting', $new_javascript_setting); + setPref($data_dir, $username, 'show_num', $new_show_num); + setPref($data_dir, $username, 'wrap_at', $new_wrap_at); + setPref($data_dir, $username, 'editor_size', $new_editor_size); + setPref($data_dir, $username, 'location_of_buttons', $new_location_of_buttons); + setPref($data_dir, $username, 'location_of_bar', $new_location_of_bar); + setPref($data_dir, $username, 'left_size', $new_left_size); + setPref($data_dir, $username, 'left_refresh', $new_left_refresh); + setPref($data_dir, $username, 'alt_index_colors', $new_alt_index_colors); + setPref($data_dir, $username, 'show_html_default', $new_show_html_default); + setPref($data_dir, $username, 'include_self_reply_all', $new_include_self_reply_all); + setPref($data_dir, $username, 'page_selector', $new_page_selector); + setPref($data_dir, $username, 'page_selector_max', $new_page_selector_max); - echo " "; + do_hook('options_display_save'); - echo "
"; - echo _("Trash Folder:"); - echo ""; - echo "\n"; - echo "
"; - echo _("Sent Folder:"); - echo ""; - echo "\n"; - echo "
"; + /*****************************************************/ + /* Let's sort Javascript Option Pages to the bottom. */ + /*****************************************************/ + foreach ($optionpages as $optpage) { + if (!$optpage['js']) { + $reg_optionpages[] = $optpage; + } else if ($javascript_on == SMPREF_JS_ON) { + $js_optionpages[] = $optpage; + } + } + $optionpages = array_merge($reg_optionpages, $js_optionpages); - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
\n"; - echo " " . _("Use javascript version of address book?") . "\n"; - echo "
\n"; - if ($use_javascript_addr_book == true) { - echo "   " . _("Yes") . "
"; - echo "   " . _("No") . "
"; - } else { - echo "   " . _("Yes") . "
"; - echo "   " . _("No") . "
"; - } - echo "
\n"; - - echo "\n"; + /********************************************/ + /* Now, print out each option page section. */ + /********************************************/ + $first_optpage = false; + foreach ($optionpages as $next_optpage) { + if ($first_optpage == false) { + $first_optpage = $next_optpage; + } else { + print_optionpages_row($first_optpage, $next_optpage); + $first_optpage = false; + } + } - // SHOW_NUM - echo " "; - echo " "; - echo " "; - echo " "; - - // WRAP_AT - echo " "; - echo " "; - echo " "; - echo " "; + if ($first_optpage != false) { + print_optionpages_row($first_optpage); + } - // EDITOR_SIZE - echo " "; - echo " "; - echo " "; - echo " "; + do_hook('options_link_and_description'); - // LEFT_SIZE - echo " "; - echo " "; - echo " +
"; - echo _("Number of Messages to Index:"); - echo " "; - if (isset($wrap_at)) - echo "
"; - else - echo "
"; - echo "
"; - echo _("Wrap incoming text at:"); - echo " "; - if (isset($wrap_at)) - echo "
"; - else - echo "
"; - echo "
"; - echo _("Size of editor window (in characters):"); - echo " "; - if ($editor_size >= 5) - echo "
"; - else - echo "
"; - echo "
"; - echo _("Width of left folder list:"); - echo " \n"; - echo "
- echo " "; - echo "
"; - echo _("Time between auto refresh of folder list:"); - echo " "; - echo " "; - echo "
"; +
- // SIGNATURE - echo "
"; - if ($use_signature == true) - echo "  Use a signature?
"; - else { - echo "  "; - echo _("Use a signature?"); - echo "
"; - } + - if ($editor_size < 5) - $sig_size = 76; - else - $sig_size = $editor_size; +Signature:

"; - echo "
"; + /*******************************************************************/ + /* Please be warned. The code below this point sucks. This is just */ + /* my first implementation to make the option rows work for both */ + /* Javascript and non-Javascript option chunks. */ + /* */ + /* Please, someone make these better for me. All three functions */ + /* below REALLY do close to the same thing. */ + /* */ + /* This code would be GREATLY improved by a templating system. */ + /* Don't try to implement that now, however. That will come later. */ + /*******************************************************************/ - // MESSAGE HIGHLIGHTING - echo "
\n"; - echo "
" . _("Message Highlighting") . " - [" . _("New") . "]

\n"; - if (count($message_highlight_list) >= 1) { - echo "\n"; - for ($i=0; $i < count($message_highlight_list); $i++) { - echo "\n"; - echo " "; - echo " \n"; - echo " \n"; - echo "\n"; - } - echo "
\n"; - echo "[" . _("Edit") . "] ["._("Delete")."]\n"; - echo " \n"; - echo " " . $message_highlight_list[$i]["name"]; - echo " \n"; - echo " " . $message_highlight_list[$i]["value"]; - echo "
\n"; - } else { - echo "
" . _("No highlighting is defined") . "

\n"; - } - echo "
\n"; + /*******************************************************************/ + /* Actually, now that I think about it, don't do anything with */ + /* this code yet. There is ACTUALLY supposed to be a difference */ + /* between the three functions that write the option rows. I just */ + /* have not yet gotten to integrating that yet. */ + /*******************************************************************/ - // SUBMIT BUTTON - echo "
\n"; - echo ""; + /** + * This function prints out an option page row. + */ + function print_optionpages_row($leftopt, $rightopt = false) { + global $color; + + echo "" . + '' . + "
' . + '' . + '' . + "'. + ""; + if( $rightopt ) { + echo "'; + } else { + echo ""; + } + + echo '' . + '' . + "' . + ""; + if( $rightopt ) { + echo "'; + }else { + echo ""; + } + + echo '' . + '
" . + '' . $leftopt['name'] . ''. + ' " . + '' . $rightopt['name'] . '' . + ' 
" . + $leftopt['desc'] . + ' " . + $rightopt['desc'] . + ' 
' . + '
\n"; + } - echo ""; ?>