moved filter update on folder rename/delete to
the filter plugin (sorry folks).
This commit is contained in:
parent
c6cd43df6f
commit
0dbbf72335
1 changed files with 3 additions and 36 deletions
|
@ -184,7 +184,7 @@ function sqimap_mailbox_delete ($imap_stream, $mailbox)
|
||||||
$read_ary = sqimap_run_command($imap_stream, "DELETE \"$mailbox\"",
|
$read_ary = sqimap_run_command($imap_stream, "DELETE \"$mailbox\"",
|
||||||
TRUE, $response, $message);
|
TRUE, $response, $message);
|
||||||
sqimap_unsubscribe ($imap_stream, $mailbox);
|
sqimap_unsubscribe ($imap_stream, $mailbox);
|
||||||
filter_check($mailbox, 'delete');
|
do_hook("rename_or_delete_folder");
|
||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
|
@ -201,39 +201,6 @@ function sqimap_mailbox_is_subscribed($imap_stream, $folder) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* fix filters when renaming/deleting folders */
|
|
||||||
|
|
||||||
function filter_check ($old_folder, $action, $new_folder = 'INBOX') {
|
|
||||||
global $plugins, $data_dir, $username;
|
|
||||||
$filters = array();
|
|
||||||
$count = count($plugins);
|
|
||||||
for ($i=0;$i<$count;$i++) {
|
|
||||||
if ($plugins[$i] == 'filters') {
|
|
||||||
require_once("../plugins/filters/filters.php");
|
|
||||||
$filters = load_filters();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (empty($filters)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$filter_count = count($filters);
|
|
||||||
$p=0;
|
|
||||||
for ($i=0;$i<$filter_count;$i++) {
|
|
||||||
if ($old_folder == $filters[$i]['folder']) {
|
|
||||||
if ($action == 'rename') {
|
|
||||||
$filters[$i]['folder'] = $new_folder;
|
|
||||||
setPref($data_dir, $username, "filter".$i, $filters[$i]['where'].",".$filters[$i]['what'].",".$new_folder);
|
|
||||||
}
|
|
||||||
elseif ($action == 'delete') {
|
|
||||||
remove_filter($p);
|
|
||||||
$p = $p-1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$p++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Renames a mailbox
|
Renames a mailbox
|
||||||
|
@ -255,7 +222,7 @@ function sqimap_mailbox_rename( $imap_stream, $old_name, $new_name ) {
|
||||||
TRUE, $response, $message);
|
TRUE, $response, $message);
|
||||||
sqimap_unsubscribe($imap_stream, $old_name.$postfix);
|
sqimap_unsubscribe($imap_stream, $old_name.$postfix);
|
||||||
sqimap_subscribe($imap_stream, $new_name.$postfix);
|
sqimap_subscribe($imap_stream, $new_name.$postfix);
|
||||||
filter_check($old_name, 'rename', $new_name);
|
do_hook("rename_or_delete_folder");
|
||||||
$l = strlen( $old_name ) + 1;
|
$l = strlen( $old_name ) + 1;
|
||||||
$p = 'unformatted';
|
$p = 'unformatted';
|
||||||
foreach ( $boxesall as $box ) {
|
foreach ( $boxesall as $box ) {
|
||||||
|
@ -268,7 +235,7 @@ function sqimap_mailbox_rename( $imap_stream, $old_name, $new_name ) {
|
||||||
}
|
}
|
||||||
sqimap_unsubscribe($imap_stream, $box[$p]);
|
sqimap_unsubscribe($imap_stream, $box[$p]);
|
||||||
sqimap_subscribe($imap_stream, $new_sub);
|
sqimap_subscribe($imap_stream, $new_sub);
|
||||||
filter_check($box[$p], 'rename', $new_sub);
|
do_hook("rename_or_delete_folder");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue