X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fleft_main.php;h=112ad87b7aca3dc1a961b526acf28b002e0a17f4;hb=6b6381715922c24dc8664cc62464096814d6a291;hp=db84533b8c3f7f6c2532e892884ce2ba8ae830cb;hpb=f3d17401a7a558f09baac5c349324c9cf372c705;p=squirrelmail.git diff --git a/src/left_main.php b/src/left_main.php index db84533b..112ad87b 100644 --- a/src/left_main.php +++ b/src/left_main.php @@ -1,121 +1,154 @@ - - -"; - if ($unseen) + + + if (!isset($config_php)) + include("../config/config.php"); + if (!isset($array_php)) + include("../functions/array.php"); + if (!isset($strings_php)) + include("../functions/strings.php"); + if (!isset($imap_php)) + include("../functions/imap.php"); + if (!isset($page_header_php)) + include("../functions/page_header.php"); + if (!isset($i18n_php)) + include("../functions/i18n.php"); + if (!isset($plugin_php)) + include("../functions/plugin.php"); + + displayHtmlHeader(); + + function formatMailboxName($imapConnection, $mailbox, $real_box, $delimeter, $unseen) { + global $folder_prefix, $trash_folder, $sent_folder; + global $color, $move_to_sent, $move_to_trash; + global $unseen_notify, $unseen_type; + + $mailboxURL = urlencode($real_box); + + if ($unseen_notify == 2 && $real_box == "INBOX") { + $unseen = sqimap_unseen_messages($imapConnection, $numUnseen, $real_box); + if ($unseen_type == 1 && $unseen > 0) { + $unseen_string = "($unseen)"; + $unseen_found = true; + } else if ($unseen_type == 2) { + $numMessages = sqimap_get_num_messages($imapConnection, $real_box); + $unseen_string = "($unseen/$numMessages)"; + $unseen_found = true; + } + } else if ($unseen_notify == 3) { + $unseen = sqimap_unseen_messages($imapConnection, $numUnseen, $real_box); + if ($unseen_type == 1 && $unseen > 0) { + $unseen_string = "($unseen)"; + $unseen_found = true; + } else if ($unseen_type == 2) { + $numMessages = sqimap_get_num_messages($imapConnection, $real_box); + $unseen_string = "($unseen/$numMessages)"; + $unseen_found = true; + } + } + + $line .= ""; + if ($unseen > 0) $line .= ""; $special_color = false; - for ($i = 0; $i < count($special_folders); $i++) { - if (($special_folders[$i] == $mailbox) && ($use_special_folder_color == true)) - $special_color = true; - } + if ((strtolower($real_box) == "inbox") || + (($real_box == $trash_folder) && ($move_to_trash)) || + (($real_box == $sent_folder) && ($move_to_sent))) + $special_color = true; if ($special_color == true) { - $line .= ""; - $line .= readShortMailboxName($mailbox, $delimeter); + $line .= ""; + $line .= replace_spaces($mailbox); $line .= ""; } else { - $line .= ""; - $line .= readShortMailboxName($mailbox, $delimeter); - $line .= ""; + $line .= ""; + $line .= replace_spaces($mailbox); + $line .= ""; } - if ($unseen) + if ($unseen > 0) $line .= ""; - if ($numUnseen > 0) { - $line .= " ($numUnseen)"; + if ($unseen_found) { + $line .= " $unseen_string"; } - if (($move_to_trash == true) && (trim($mailbox) == $trash_folder)) { - $urlMailbox = urlencode($mailbox); - $line .= ""; - $line .= "    (empty)"; - $line .= "\n"; + if (($move_to_trash == true) && ($real_box == $trash_folder)) { + $urlMailbox = urlencode($real_box); + $line .= "\n\n"; + $line .= "   ("._("purge").")"; + $line .= "\n\n"; } - - echo ""; + $line .= ""; return $line; } // open a connection on the imap port (143) - $imapConnection = loginToImapServer($username, $key, $imapServerAddress, 10); // the 10 is to hide the output + $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 10); // the 10 is to hide the output /** If it was a successful login, lets load their preferences **/ include("../src/load_prefs.php"); - checkForPrefs($data_dir, $username); - echo ""; - echo ""; - getFolderList($imapConnection, $boxes); + if (isset($left_refresh) && ($left_refresh != "None") && ($left_refresh != "")) { + echo "\n"; + echo "\n"; + echo "\n"; + } + + echo "\n\n\n"; - echo "
"; - echo "Folders
"; + do_hook("left_main_before"); - echo "(refresh folder list)

"; - echo "\n"; - $delimeter = findMailboxDelimeter($imapConnection); - for ($i = 0;$i < count($boxes); $i++) { - $mailbox = $boxes[$i]["UNFORMATTED"]; - $boxFlags = getMailboxFlags($boxes[$i]["RAW"]); + $boxes = sqimap_mailbox_list($imapConnection); + + echo "
"; + echo _("Folders") . "
\n\n"; - $boxCount = countCharInString($mailbox, $delimeter); + echo "("; + echo _("refresh folder list"); + echo ")

"; + $delimeter = sqimap_get_delimiter($imapConnection); + for ($i = 0;$i < count($boxes); $i++) { $line = ""; - // indent the correct number of spaces. - for ($j = 0;$j < $boxCount;$j++) - $line .= "  "; + $mailbox = $boxes[$i]["formatted"]; - if (trim($boxFlags[0]) != "") { + if ($boxes[$i]["flags"]) { $noselect = false; - for ($h = 0; $h < count($boxFlags); $h++) { - if (strtolower($boxFlags[$h]) == "noselect") + for ($h = 0; $h < count($boxes[$i]["flags"]); $h++) { + if (strtolower($boxes[$i]["flags"][$h]) == "noselect") $noselect = true; } - if ($noselect == true) { - $line .= ""; - $line .= readShortMailboxName($mailbox, $delimeter); - $line .= ""; + $line .= ""; + $line .= replace_spaces(readShortMailboxName($mailbox, $delimeter)); + $line .= ""; } else { - $line .= formatMailboxName($imapConnection, $mailbox, $delimeter, $color); + $line .= formatMailboxName($imapConnection, $mailbox, $boxes[$i]["unformatted"], $delimeter, $boxes[$i]["unseen"]); } } else { - $line .= formatMailboxName($imapConnection, $mailbox, $delimeter, $color); + $line .= formatMailboxName($imapConnection, $mailbox, $boxes[$i]["unformatted"], $delimeter, $boxes[$i]["unseen"]); } - echo "$line
"; + echo "\n$line
\n"; } - - echo "
"; - - fclose($imapConnection); - + sqimap_logout($imapConnection); + do_hook("left_main_after"); ?> -
+