\n";
- echo "";
- echo _("Delete Folder");
- echo " ";
- echo "";
- $count_special_folders = 0;
- for ($i = 0; $i < count($special_folders); $i++) {
- for ($p = 0; $p < count($special_folders); $p++) {
- if ($boxes[$i]["unformatted"] == $special_folders[$p]) {
- $count_special_folders++;
- }
- }
- }
-
- if ($count_special_folders < count($boxes)) {
- echo " \n";
- } else {
- echo _("No mailboxes found") . "";
- }
-
-
- /** CREATING FOLDERS **/
- echo " ";
- echo _("Create Folder");
- echo " ";
- echo "";
- echo " \n";
-
- /** RENAMING FOLDERS **/
- echo "";
- echo _("Rename a Folder");
- echo " ";
- echo "";
- if ($count_special_folders < count($boxes)) {
- echo " \n";
- } else {
- echo _("No mailboxes found") . " ";
- }
- $boxes_sub = $boxes;
-
- /** UNSUBSCRIBE FOLDERS **/
- echo "";
- echo _("Unsubscribe/Subscribe");
- echo " ";
- echo "";
- if ($count_special_folders < count($boxes)) {
- echo " \n";
+
+echo html_tag( 'tr',
+ html_tag( 'td', ' ', 'left', $color[4] )
+ ) ."\n";
+
+/** count special folders **/
+
+// FIX ME, why not check if the folders are defined IMHO move_to_sent, move_to_trash has nothing todo with it
+$count_special_folders = 0;
+$num_max = 1;
+if (strtolower($imap_server_type) == "courier" || $move_to_trash) {
+ $num_max++;
+}
+if ($move_to_sent) {
+ $num_max++;
+}
+if ($save_as_draft) {
+ $num_max++;
+}
+
+// What if move_to_sent = false and $sent_folder is set? Should it still be skipped?
+
+for ($p = 0, $cnt = count($boxes); $p < $cnt && $count_special_folders < $num_max; $p++) {
+ switch ($boxes[$p]['unformatted']) {
+ case (strtoupper($boxes[$p]['unformatted']) == 'INBOX'):
+ ++$count_special_folders;
+ $skip_folders[] = $boxes[$p]['unformatted'];
+ break;
+ // FIX ME inbox.trash should be set in conf.pl
+ case 'inbox.trash':
+ if (strtolower($imap_server_type) == 'courier') {
+ ++$count_special_folders;
+ }
+ break;
+ case $trash_folder:
+ ++$count_special_folders;
+ $skip_folders[] = $trash_folder;
+ break;
+ case $sent_folder:
+ ++$count_special_folders;
+ $skip_folders[] = $sent_folder;
+ break;
+ case $draft_folder:
+ ++$count_special_folders;
+ $skip_folders[] = $draft_folder;
+ break;
+ default: break;
+ }
+}
+
+
+/** RENAMING FOLDERS **/
+echo html_tag( 'tr',
+ html_tag( 'td', '' . _("Rename a Folder") . ' ', 'center', $color[9] )
+ ) .
+ html_tag( 'tr' ) .
+ html_tag( 'td', '', 'center', $color[0] );
+
+/* show only if we have folders to rename */
+if ($count_special_folders < count($boxes)) {
+ echo addForm('folders.php')
+ . addHidden('smaction', 'rename')
+ . "\n"
+ . ' [ ' . _("Select a folder") . " ] \n";
+
+ // use existing IMAP connection, we have no special values to show,
+ // but we do include values to skip. Use the pre-created $boxes to save an IMAP query.
+ // send NULL for the flag - ALL folders are eligible for rename!
+ // use long format to make sure folder names make sense when parents may be missing.
+ echo sqimap_mailbox_option_list($imapConnection, 0, $skip_folders, $boxes, NULL, true);
+
+ echo " \n".
+ ' \n".
+ "\n";
+} else {
+ echo _("No folders found") . ' ';
+}
+
+echo html_tag( 'tr',
+ html_tag( 'td', ' ', 'left', $color[4] )
+ ) ."\n";
+
+/** DELETING FOLDERS **/
+echo html_tag( 'tr',
+ html_tag( 'td', '' . _("Delete Folder") . ' ', 'center', $color[9] )
+ ) .
+ html_tag( 'tr' ) .
+ html_tag( 'td', '', 'center', $color[0] );
+
+/* show only if we have folders to delete */
+if ($count_special_folders < count($boxes)) {
+ echo addForm('folders.php')
+ . addHidden('smaction', 'delete')
+ . "\n"
+ . ' [ ' . _("Select a folder") . " ] \n";
+
+ // send NULL for the flag - ALL folders are eligible for delete (except what we've got in skiplist)
+ // use long format to make sure folder names make sense when parents may be missing.
+ echo sqimap_mailbox_option_list($imapConnection, 0, $skip_folders, $boxes, NULL, true);
+
+ echo " \n"
+ . ' \n"
+ . "\n";
+} else {
+ echo _("No folders found") . " ";
+}
+
+echo html_tag( 'tr',
+ html_tag( 'td', ' ', 'left', $color[4] )
+ ) ."
\n";
+
+
+if ($show_only_subscribed_folders) {
+
+ /** UNSUBSCRIBE FOLDERS **/
+ echo html_tag( 'table', '', 'center', '', 'width="70%" cellpadding="4" cellspacing="0" border="0"' ) .
+ html_tag( 'tr',
+ html_tag( 'td', '