From f7bfc9de130bee088a27ad93403bedca22cd122f Mon Sep 17 00:00:00 2001 From: lkehresman Date: Sun, 20 May 2001 14:51:01 +0000 Subject: [PATCH] auto create sent/trash folders git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@1376 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- ChangeLog | 7 ++++--- config/conf.pl | 30 +++++++++++++++++++++++++++++- src/folders.php | 32 -------------------------------- src/left_main.php | 15 ++++++++++++++- 4 files changed, 47 insertions(+), 37 deletions(-) diff --git a/ChangeLog b/ChangeLog index fb510d1e..6c6e76a1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,10 @@ Version 1.1.2 -- DEVELOPMENT ---------------------------- +- Added option (3 -> 14 in conf.pl) to auto create sent and trash folders. +- Updated Czech translation - Support for multiple identities -- Support for Russian Apache removed. It is now deemed easier to just - turn off Charset Recoding in the Russian Apache config. See - doc/README.russian_apache +- Support for Russian Apache removed. It is now deemed easier to just turn + off Charset Recoding in the Russian Apache config. See doc/README.russian_apache Version 1.1.1 -- April 30, 2001 ------------------------------- diff --git a/config/conf.pl b/config/conf.pl index 5c73500d..90e9b0e2 100755 --- a/config/conf.pl +++ b/config/conf.pl @@ -245,6 +245,9 @@ if (!$optional_delimiter) { if (!$use_authenticated_smtp) { $use_authenticated_smtp = "false"; } +if (!$auto_create_special) { + $auto_create_special = "false"; +} ##################################################################################### if ($config_use_color == 1) { @@ -325,6 +328,7 @@ while (($command ne "q") && ($command ne "Q")) { print "11. Show 'Contain Sub.' Option : $WHT$show_contain_subfolders_option$NRM\n"; print "12. Default Unseen Notify : $WHT$default_unseen_notify$NRM\n"; print "13. Default Unseen Type : $WHT$default_unseen_type$NRM\n"; + print "14. Auto create Sent and Trash : $WHT$auto_create_special$NRM\n"; print "\n"; print "R Return to Main Menu\n"; } elsif ($menu == 4) { @@ -480,6 +484,7 @@ while (($command ne "q") && ($command ne "Q")) { elsif ($command == 11){ $show_contain_subfolders_option = command211(); } elsif ($command == 12){ $default_unseen_notify = command212(); } elsif ($command == 13){ $default_unseen_type = command213(); } + elsif ($command == 14){ $auto_create_special = command214(); } } elsif ($menu == 4) { if ($command == 1) { $default_charset = command31 (); } elsif ($command == 2) { $data_dir = command33 (); } @@ -1141,6 +1146,28 @@ sub command213 { return $default_unseen_type; } +# Auto create special folders +sub command214 { + print "Would you like the Sent and Trash folders to be created automatically for\n"; + print "you when a user loggs in? If the user accidentally deletes their special\n"; + print "folders, this option will automatically create it again for them.\n"; + print "\n"; + + if ($auto_create_special eq "true") { + $default_value = "y"; + } else { + $default_value = "n"; + } + print "Auto create special folders? (y/n) [$WHT$default_value$NRM]: $WHT"; + $new_show = ; + if (($new_show =~ /^y\n/i) || (($new_show =~ /^\n/) && ($default_value eq "y"))) { + $auto_create_special = "true"; + } else { + $auto_create_special = "false"; + } + return $auto_create_special; +} + ############# GENERAL OPTIONS ##################### @@ -1630,7 +1657,7 @@ sub save_data { print FILE "\tglobal \$show_prefix_option, \$list_special_folders_first;\n"; print FILE "\tglobal \$use_special_folder_color, \$auto_expunge, \$default_sub_of_inbox;\n"; print FILE "\tglobal \$show_contain_subfolders_option, \$default_unseen_notify;\n"; - print FILE "\tglobal \$default_unseen_type;\n"; + print FILE "\tglobal \$default_unseen_type, \$auto_create_special;\n"; print FILE "\t\$default_folder_prefix = \"$default_folder_prefix\";\n"; print FILE "\t\$trash_folder = \"$trash_folder\";\n"; print FILE "\t\$sent_folder = \"$sent_folder\";\n"; @@ -1644,6 +1671,7 @@ sub save_data { print FILE "\t\$show_contain_subfolders_option = $show_contain_subfolders_option;\n"; print FILE "\t\$default_unseen_notify = $default_unseen_notify;\n"; print FILE "\t\$default_unseen_type = $default_unseen_type;\n"; + print FILE "\t\$auto_create_special = $auto_create_special;\n"; print FILE "\n"; print FILE "\tglobal \$default_charset, \$data_dir, \$attachment_dir;\n"; diff --git a/src/folders.php b/src/folders.php index ed1dac5d..7c7ee384 100644 --- a/src/folders.php +++ b/src/folders.php @@ -47,16 +47,6 @@ echo "" . _("Created folder successfully!") . "
"; } else if ($success == "rename") { echo "" . _("Renamed successfully!") . "
"; - } else if (($sent_create == "true") || ($trash_create == "true")) { - $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 0); - if ($sent_create == "true") { - sqimap_mailbox_create ($imapConnection, $sent_folder, ""); - } - if ($trash_create == "true") { - sqimap_mailbox_create ($imapConnection, $trash_folder, ""); - } - sqimap_logout($imapConnection); - echo _("Folders created successfully!"); } echo " " . _("refresh folder list") . ""; @@ -66,28 +56,6 @@ $imapConnection = sqimap_login ($username, $key, $imapServerAddress, $imapPort, 0); $boxes = sqimap_mailbox_list($imapConnection); - //display form option for creating Sent and Trash folder - if ($imap_server_type == "cyrus" && ($sent_folder != "none" || $trash_folder != "none")) { - if ((!sqimap_mailbox_exists ($imapConnection, $sent_folder)) || - (!sqimap_mailbox_exists ($imapConnection, $trash_folder))) { - echo "\n"; - echo ""; - echo "
"; - echo _("Special Folder Options"); - echo "
"; - echo _("In order for SquirrelMail to provide the full set of options you need to create the special folders listed below. Just click the check box and hit the create button."); - echo "
\n"; - if (!sqimap_mailbox_exists ($imapConnection, $sent_folder) && $sent_folder != "none") { - echo _("Create Sent") . "
\n"; - } - if (!sqimap_mailbox_exists ($imapConnection, $trash_folder) && $trash_folder != "none"){ - echo _("Create Trash") . "
\n"; - } - echo ""; - echo "

"; - } - } - /** DELETING FOLDERS **/ echo "\n"; echo "
"; diff --git a/src/left_main.php b/src/left_main.php index 324f0a80..dac7f1e0 100644 --- a/src/left_main.php +++ b/src/left_main.php @@ -17,9 +17,22 @@ // open a connection on the imap port (143) $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 10); // the 10 is to hide the output - + displayHtmlHeader(); + if ($auto_create_special) { + if (isset ($sent_folder) && $sent_folder != "none") { + if (!sqimap_mailbox_exists ($imapConnection, $sent_folder)) { + sqimap_mailbox_create ($imapConnection, $sent_folder, ""); + } + } + if (isset ($trash_folder) && $trash_folder != "none") { + if (!sqimap_mailbox_exists ($imapConnection, $trash_folder)) { + sqimap_mailbox_create ($imapConnection, $trash_folder, ""); + } + } + } + function formatMailboxName($imapConnection, $box_array, $delimeter) { global $folder_prefix, $trash_folder, $sent_folder; global $color, $move_to_sent, $move_to_trash; -- 2.25.1