summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
Diffstat (limited to 'program')
-rw-r--r--program/js/app.js3
-rw-r--r--program/steps/mail/folders.inc24
2 files changed, 14 insertions, 13 deletions
diff --git a/program/js/app.js b/program/js/app.js
index 0288fad79..66b7de05b 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3495,10 +3495,7 @@ function rcube_webmail()
this.check_for_recent = function()
{
if (this.busy)
- {
- this.send_keep_alive();
return;
- }
this.set_busy(true, 'checkingmail');
this.http_request('check-recent', (this.env.search_request ? '_search='+this.env.search_request+'&' : '') + '_t='+(new Date().getTime()), true);
diff --git a/program/steps/mail/folders.inc b/program/steps/mail/folders.inc
index c7c39fbea..b84398f26 100644
--- a/program/steps/mail/folders.inc
+++ b/program/steps/mail/folders.inc
@@ -39,18 +39,22 @@ if ($_action=='expunge' && ($mbox = get_input_value('_mbox', RCUBE_INPUT_POST)))
// clear mailbox
else if ($_action=='purge' && ($mbox = get_input_value('_mbox', RCUBE_INPUT_POST)))
{
- $success = $IMAP->clear_mailbox($mbox);
-
- if ($success && !empty($_REQUEST['_reload']))
+ // we should only be purging trash and junk
+ if($mbox == $CONFIG['trash_mbox'] || $mbox == $CONFIG['junk_mbox'])
{
- $OUTPUT->set_env('messagecount', 0);
- $OUTPUT->set_env('pagecount', 0);
- $OUTPUT->command('message_list.clear');
- $OUTPUT->command('set_rowcount', rcmail_get_messagecount_text());
- $OUTPUT->command('set_unread_count', $mbox_name, 0);
+ $success = $IMAP->clear_mailbox($mbox);
+
+ if ($success && !empty($_REQUEST['_reload']))
+ {
+ $OUTPUT->set_env('messagecount', 0);
+ $OUTPUT->set_env('pagecount', 0);
+ $OUTPUT->command('message_list.clear');
+ $OUTPUT->command('set_rowcount', rcmail_get_messagecount_text());
+ $OUTPUT->command('set_unread_count', $mbox_name, 0);
+ }
+ else
+ $commands = "// purged: $success";
}
- else
- $commands = "// purged: $success";
}
$OUTPUT->send($commands);