Pārlūkot izejas kodu

filter fix on folder/rename is back in. added hooks back to imap_mailbox.php, reworked function in filters.php. should work now.

jmunro 23 gadi atpakaļ
vecāks
revīzija
0a4194b3fb

+ 3 - 3
functions/imap_mailbox.php

@@ -184,7 +184,7 @@ function sqimap_mailbox_delete ($imap_stream, $mailbox)
     $read_ary = sqimap_run_command($imap_stream, "DELETE \"$mailbox\"",
                                  TRUE, $response, $message);
     sqimap_unsubscribe ($imap_stream, $mailbox);
- //   do_hook("rename_or_delete_folder");
+  	do_hook_function("rename_or_delete_folder",$args = array($mailbox, 'delete', ''));
 }
 
 /***********************************************************************
@@ -222,7 +222,7 @@ function sqimap_mailbox_rename( $imap_stream, $old_name, $new_name ) {
                                  TRUE, $response, $message);
         sqimap_unsubscribe($imap_stream, $old_name.$postfix);
         sqimap_subscribe($imap_stream, $new_name.$postfix);
-//        do_hook("rename_or_delete_folder");
+        do_hook_function("rename_or_delete_folder",$args = array($old_name, 'rename', $new_name));
         $l = strlen( $old_name ) + 1;
         $p = 'unformatted';
         foreach ( $boxesall as $box ) {
@@ -235,7 +235,7 @@ function sqimap_mailbox_rename( $imap_stream, $old_name, $new_name ) {
                 }
                 sqimap_unsubscribe($imap_stream, $box[$p]);
                 sqimap_subscribe($imap_stream, $new_sub);
-            //    do_hook("rename_or_delete_folder");
+        		do_hook_function("rename_or_delete_folder",$args = array($box[$p], 'rename', $new_sub));
             }
         }
     }

+ 4 - 1
plugins/filters/filters.php

@@ -707,7 +707,10 @@ function filter_swap($id1, $id2) {
 
 /* This update the filter rules when
    renaming or deleting folders */
-function update_for_folder ($old_folder, $action, $new_folder = 'INBOX') {
+function update_for_folder ($args) {
+    $old_folder = $args[0];
+	$new_folder = $args[2];
+	$action = $args[1];
     global $plugins, $data_dir, $username;
     $filters = array();
     $filters = load_filters();

+ 1 - 1
plugins/filters/setup.php

@@ -86,7 +86,7 @@ function squirrelmail_plugin_init_filters() {
     }
     $squirrelmail_plugin_hooks['optpage_register_block']['filters'] = 'squirrelmail_plugin_optpage_register_block';
 #    $squirrelmail_plugin_hooks['special_mailbox']['filters'] = 'filters_special_mailbox';
-//    $squirrelmail_plugin_hooks['rename_or_delete_folder']['filters'] = 'update_for_folder';
+    $squirrelmail_plugin_hooks['rename_or_delete_folder']['filters'] = 'update_for_folder';
 }
 
 function filters_special_mailbox( $mb ) {