X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Ffolders.php;h=ad9c7232799e3efae3269ddc5256466ccf83c0f2;hb=5bdd722368a3fac32defc2242e9dd3f1e567a527;hp=5ce49644ae9e93fab82b478f3bff2d34ce588559;hpb=8c7dfc9960e03539b2ab145a37a3752cb8b31b4d;p=squirrelmail.git diff --git a/src/folders.php b/src/folders.php index 5ce49644..ad9c7232 100644 --- a/src/folders.php +++ b/src/folders.php @@ -1,94 +1,317 @@ - -\n"; - echo " \n"; - echo " Folders\n"; - echo " \n"; - echo "\n"; +"; - echo "$errorNumber : $errorString
"; - exit; - } - $serverInfo = fgets($imapConnection, 256); + session_start(); + + if (!isset($config_php)) + include("../config/config.php"); + if (!isset($strings_php)) + include("../functions/strings.php"); + if (!isset($page_header_php)) + include("../functions/page_header.php"); + if (!isset($imap_php)) + include("../functions/imap.php"); + if (!isset($array_php)) + include("../functions/array.php"); + if (!isset($plugin_php)) + include("../functions/plugin.php"); + + include("../src/load_prefs.php"); - fputs($imapConnection, "1 login $username $key\n"); - $read = fgets($imapConnection, 1024); + displayPageHeader($color, "None"); - fputs($imapConnection, "1 list \"\" *\n"); - $str = imapReadData($imapConnection); + echo "
"; + echo "\n"; + echo " \n"; + echo "
\n"; + echo _("Folders"); + echo "
\n"; - for ($i = 0;$i < count($str); $i++) { - $mailbox = Chop($str[$i]); - // find the quote at the begining of the mailbox name. - // i subtract 1 from the strlen so it doesn't find the quote at the end of the mailbox name. - $mailbox = findMailboxName($mailbox); - $periodCount = countCharInString($mailbox, "."); + if ($success || $sent_create == "true" || $trash_create == "true") { + echo "\n"; + echo " \n"; + echo "
\n"; + if ($success == "subscribe") { + echo "" . _("Subscribed successfully!") . "
"; + } else if ($success == "unsubscribe") { + echo "" . _("Unsubscribed successfully!") . "
"; + } else if ($success == "delete") { + echo "" . _("Deleted folder successfully!") . "
"; + } else if ($success == "create") { + 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!"); + } - // indent the correct number of spaces. - for ($j = 0;$j < $periodCount;$j++) - $boxes[$i] = "$boxes[$i]   "; + echo " " . _("refresh folder list") . ""; + echo "

\n"; + } + $imapConnection = sqimap_login ($username, $key, $imapServerAddress, $imapPort, 0); + $boxes = sqimap_mailbox_list($imapConnection); - $boxes[$i] = $boxes[$i] . readShortMailboxName($mailbox, "."); - $long_name_boxes[$i] = $mailbox; + //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 "\n"; + for ($i = 0; $i < count($boxes); $i++) { + $use_folder = true; + if ((strtolower($boxes[$i]["unformatted"]) != "inbox") && + ($boxes[$i]["unformatted"] != $trash_folder) && + ($boxes[$i]["unformatted"] != $sent_folder) && + (strtolower($imap_server_type) != "courier" || + strtolower($boxes[$i]["unformatted"]) != "inbox.trash")) + { + $box = $boxes[$i]["unformatted-dm"]; + $box2 = replace_spaces($boxes[$i]["formatted"]); + echo "
\n"; + } else { + echo _("No folders found") . "

"; } - echo "\n"; - echo "\n"; - echo "
\n"; + + echo " \n"; /** CREATING FOLDERS **/ - echo "
\n"; - echo "\n"; - echo "  as a subfolder of  "; - echo "
\n"; + echo _("as a subfolder of"); + echo "
"; + echo "\n"; - echo "\n"; - echo "
\n"; + + for ($i = 0; $i < count($boxes); $i++) { + if (count($boxes[$i]["flags"]) > 0) { + $noinf = false; + for ($j = 0; $j < count($boxes[$i]["flags"]); $j++) { + if ($boxes[$i]["flags"][$j] == "noinferiors") { + $noinf = true; + continue; + } + } + if ($noinf == false) { + if ((strtolower($boxes[$i]["unformatted"]) == "inbox") && ($default_sub_of_inbox == true)) { + $box = $boxes[$i]["unformatted"]; + $box2 = replace_spaces($boxes[$i]["formatted"]); + echo "

\n"; + if ($show_contain_subfolders_option) { + echo "  "; + echo _("Let this folder contain subfolders"); + echo "
"; + } + echo "\n"; + echo "\n"; + + echo " \n"; /** RENAMING FOLDERS **/ - echo "
\n"; - echo "\n"; + for ($i = 0; $i < count($boxes); $i++) { + $use_folder = true; + + if ((strtolower($boxes[$i]["unformatted"]) != "inbox") && + ($boxes[$i]["unformatted"] != $trash_folder) && + ($boxes[$i]["unformatted"] != $sent_folder)) + { + $box = $boxes[$i]["unformatted-dm"]; + $box2 = replace_spaces($boxes[$i]["formatted"]); + if (strtolower($imap_server_type) != "courier" || strtolower($box) != "inbox.trash") + echo "
\n"; + } else { + echo _("No folders found") . "

"; + } + $boxes_sub = $boxes; + + echo " \n"; + + /** UNSUBSCRIBE FOLDERS **/ + echo "\n"; + echo ""; + echo "\n"; + } else { + echo _("No folders were found to unsubscribe from!") . ""; + } + $boxes_sub = $boxes; + + echo ""; + + /** SUBSCRIBE TO FOLDERS **/ + echo "
"; + echo _("Unsubscribe") . "/" . _("Subscribe"); + echo "
"; + if ($count_special_folders < count($boxes)) { + echo "
\n"; + echo "
\n"; + echo "\n"; + echo "
 "; + $imap_stream = sqimap_login ($username, $key, $imapServerAddress, $imapPort, 1); + $boxes_all = sqimap_mailbox_list_all ($imap_stream); + + $box = ""; + $box2 = ""; + for ($i = 0, $q = 0; $i < count($boxes_all); $i++) { $use_folder = true; - for ($p = 0; $p < count($special_folders); $p++) { - if ($special_folders[$p] == $long_name_boxes[$i]) - $use_folder = false; + for ($p = 0; $p < count ($boxes); $p++) { + if ($boxes_all[$i]["unformatted"] == $boxes[$p]["unformatted"]) { + $use_folder = false; + continue; + } else if ($boxes_all[$i]["unformatted-dm"] == $folder_prefix) { + $use_folder = false; + } + } + if ($use_folder == true) { + $box[$q] = $boxes_all[$i]["unformatted-dm"]; + $box2[$q] = $boxes_all[$i]["unformatted"]; + $q++; } - if ($use_folder == true) - echo "

\n"; + } else { + echo _("No folders were found to subscribe to!") . ""; + } + do_hook("folders_bottom"); + sqimap_logout($imapConnection); ?> - \ No newline at end of file +