Explorar o código

Sent dumbfolders and special folders fixed for Cyrus. (Philippe Mingo
on Bunzo's Box)

thomppj %!s(int64=23) %!d(string=hai) anos
pai
achega
0a957948c7
Modificáronse 2 ficheiros con 18 adicións e 14 borrados
  1. 8 5
      functions/imap_mailbox.php
  2. 10 9
      plugins/sent_subfolders/setup.php

+ 8 - 5
functions/imap_mailbox.php

@@ -19,16 +19,19 @@ function isSpecialMailbox( $box ) {
 
     global $trash_folder, $sent_folder, $draft_folder,
            $move_to_trash, $move_to_sent, $save_as_draft,
-           $delimiter, $folder_prefix;
+           $delimiter, $folder_prefix, $imap_server_type;
 
     if ( $move_to_sent  ) {
-        $i = strpos( $sent_folder, $delimiter, strlen( $folder_prefix ) );
-        if ( $i === FALSE ) {
+        if ( $imap_server_type == 'uw' ) {
+            $i = strpos( $sent_folder, $delimiter, strlen( $folder_prefix ) );
+            if ( $i === FALSE ) {
+                $i = strlen( $box );
+            }
+        } else {
             $i = strlen( $box );
         }
-        
     }
-    
+
     $ret = ( (strtolower($box) == 'inbox') ||
              ($box == $trash_folder &&
               $move_to_trash) ||

+ 10 - 9
plugins/sent_subfolders/setup.php

@@ -160,16 +160,22 @@ function sent_subfolders_update_sentfolder() {
             Multiple year holders with messages in it. level 1.
             Multiple year folders with holders in it. level 2.
         */
+
+        if( $imap_server_type == 'uw' ) {
+            $cnd_delimiter = '';
+        } else {
+            $cnd_delimiter = $delimiter;
+        }
+                                        
         switch ($sent_subfolders_setting) {
         case SMPREF_SENT_SUBFOLDERS_YEARLY:
             $level = 1;
-            $sent_subfolder = $sent_subfolders_base
+            $sent_subfolder = $sent_subfolders_base . $cnd_delimiter
                             . $year;
-            $year_folder = $sent_subfolder;
             break;
         case SMPREF_SENT_SUBFOLDERS_QUARTERLY:
             $level = 2;
-            $sent_subfolder = $sent_subfolders_base
+            $sent_subfolder = $sent_subfolders_base . $cnd_delimiter 
                             . $year
                             . $delimiter . $quarter;
             $year_folder = $sent_subfolders_base
@@ -177,7 +183,7 @@ function sent_subfolders_update_sentfolder() {
             break;
         case SMPREF_SENT_SUBFOLDERS_MONTHLY:
             $level = 2;
-            $sent_subfolder = $sent_subfolders_base
+            $sent_subfolder = $sent_subfolders_base . $cnd_delimiter
                             . $year
                             . $delimiter . $month;
             $year_folder = $sent_subfolders_base . $year;
@@ -189,11 +195,6 @@ function sent_subfolders_update_sentfolder() {
             $year_folder = $sent_folder;
         }
 
-        if( $sent_subfolders_setting <> SMPREF_SENT_SUBFOLDERS_DISABLED && 
-            $imap_server_type <> 'uw' ) {
-            $year_folder .= $delimiter;            
-        }
-
         /* If this folder is NOT the current sent folder, update stuff. */
         if ($sent_subfolder != $sent_folder) {
             /* First, update the sent folder. */