From 442f37c3139c21a7fc2d0bc81f9ac52ba157e986 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Wed, 30 Oct 2013 11:02:34 +0100 Subject: Fix list update after archive action on search result --- plugins/archive/archive.js | 2 +- plugins/archive/archive.php | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/archive/archive.js b/plugins/archive/archive.js index 5097b53fa..17a1ecdb4 100644 --- a/plugins/archive/archive.js +++ b/plugins/archive/archive.js @@ -53,7 +53,7 @@ if (window.rcmail) { // callback for server response rcmail.addEventListener('plugin.move2archive_response', function(result) { if (result.update) - rcmail.command('checkmail'); // refresh list + rcmail.command('list'); // refresh list }); }) } diff --git a/plugins/archive/archive.php b/plugins/archive/archive.php index ca32e7325..4a00d5f58 100644 --- a/plugins/archive/archive.php +++ b/plugins/archive/archive.php @@ -123,6 +123,7 @@ class archive extends rcube_plugin $result = array('reload' => false, 'update' => false, 'errors' => array()); $folders = array(); $uids = rcube_utils::get_input_value('_uid', RCUBE_INPUT_POST); + $search_request = get_input_value('_search', RCUBE_INPUT_GPC); if ($uids == '*') { $index = $storage->index(null, rcmail_sort_column(), rcmail_sort_order()); @@ -216,6 +217,11 @@ class archive extends rcube_plugin $rcmail->output->show_message($this->gettext('archived'), 'confirmation'); } + // refresh saved search set after moving some messages + if ($search_request && $rcmail->storage->get_search_set()) { + $_SESSION['search'] = $rcmail->storage->refresh_search(); + } + if ($_POST['_from'] == 'show' && !empty($result['update'])) { if ($next = get_input_value('_next_uid', RCUBE_INPUT_GPC)) { $rcmail->output->command('show_message', $next); -- cgit v1.2.3