Matt Kaatman wrote:
> Can anyone open up Robin's two emails from 9:19 and 9:51 within roundmail?
>
> I get a blank screen and in the log I get:
Weird.
Well, forget those two anyway. I didn't preload the confirmation
message. Here's a new patch. I'll stop posting half patches for now.
sorry, again.
I'll attach the patch, and copy&paste it as well since it's not that
big, so you can at least read it :)
Robin
Index: program/localization/nl_NL/messages.inc
===================================================================
--- program/localization/nl_NL/messages.inc (revision 368)
+++ program/localization/nl_NL/messages.inc (working copy)
@@ -68,6 +68,8 @@
$messages['deletecontactconfirm'] = 'Weet u zeker dat u de
geselecteerde contactperso(o)n/en wilt verwijderen?';
+$messages['deletemessagesconfirm'] = 'Weet u zeker dat u de
geselecteerde bericht(en) wilt verwijderen?';
+
$messages['deletefolderconfirm'] = 'Weet u zeker dat u deze map wilt
verwijderen?';
$messages['purgefolderconfirm'] = 'Weet u zeker dat u alle berichten
in deze map wilt verwijderen?';
Index: program/localization/en_US/messages.inc
===================================================================
--- program/localization/en_US/messages.inc (revision 368)
+++ program/localization/en_US/messages.inc (working copy)
@@ -68,6 +68,8 @@
$messages['deletecontactconfirm'] = 'Do you really want to delete the
selected contact(s)?';
+$messages['deletemessagesconfirm'] = 'Do you really want to delete the
selected message(s)?';
+
$messages['deletefolderconfirm'] = 'Do you really want to delete this
folder?';
$messages['purgefolderconfirm'] = 'Do you really want to delete all
messages in this folder?';
Index: program/js/list.js
===================================================================
--- program/js/list.js (revision 368)
+++ program/js/list.js (working copy)
@@ -32,6 +32,8 @@
this.rows = [];
this.selection = [];
+ this.shiftkey = false;
+
this.multiselect = false;
this.draggable = false;
this.keyboard = false;
@@ -504,6 +506,8 @@
if (this.focused != true)
return true;
+ this.shiftkey = e.shiftKey;
+
var keyCode = document.layers ? e.which : document.all ?
event.keyCode : document.getElementById ? e.keyCode : 0;
var mod_key = rcube_event.get_modifier(e);
switch (keyCode)
Index: program/js/app.js
===================================================================
--- program/js/app.js (revision 368)
+++ program/js/app.js (working copy)
@@ -1314,7 +1314,14 @@
// if there is a trash mailbox defined and we're not currently in it:
if (this.env.trash_mailbox &&
String(this.env.mailbox).toLowerCase()!=String(this.env.trash_mailbox).toLowerCase())
- this.move_messages(this.env.trash_mailbox);
+ // if shift was pressed delete it immediately
+ if (this.message_list.shiftkey)
+ {
+ if (confirm(this.get_label('deletemessagesconfirm')))
+ this.permanently_remove_messages();
+ }
+ else
+ this.move_messages(this.env.trash_mailbox);
// if there is a trash mailbox defined but we *are* in it:
else if (this.env.trash_mailbox &&
String(this.env.mailbox).toLowerCase() ==
String(this.env.trash_mailbox).toLowerCase())
this.permanently_remove_messages();
Index: program/steps/mail/func.inc
===================================================================
--- program/steps/mail/func.inc (revision 368)
+++ program/steps/mail/func.inc (working copy)
@@ -79,6 +79,7 @@
// add some labels to client
rcube_add_label('purgefolderconfirm');
+ rcube_add_label('deletemessagesconfirm');
// $mboxlist_start = rcube_timer();
Index: program/localization/nl_NL/messages.inc
===================================================================
--- program/localization/nl_NL/messages.inc (revision 368)
+++ program/localization/nl_NL/messages.inc (working copy)
@@ -68,6 +68,8 @@
$messages['deletecontactconfirm'] = 'Weet u zeker dat u de geselecteerde
contactperso(o)n/en wilt verwijderen?';
+$messages['deletemessagesconfirm'] = 'Weet u zeker dat u de geselecteerde
bericht(en) wilt verwijderen?';
+
$messages['deletefolderconfirm'] = 'Weet u zeker dat u deze map wilt
verwijderen?';
$messages['purgefolderconfirm'] = 'Weet u zeker dat u alle berichten in deze
map wilt verwijderen?';
Index: program/localization/en_US/messages.inc
===================================================================
--- program/localization/en_US/messages.inc (revision 368)
+++ program/localization/en_US/messages.inc (working copy)
@@ -68,6 +68,8 @@
$messages['deletecontactconfirm'] = 'Do you really want to delete the
selected contact(s)?';
+$messages['deletemessagesconfirm'] = 'Do you really want to delete the
selected message(s)?';
+
$messages['deletefolderconfirm'] = 'Do you really want to delete this
folder?';
$messages['purgefolderconfirm'] = 'Do you really want to delete all messages
in this folder?';
Index: program/js/list.js
===================================================================
--- program/js/list.js (revision 368)
+++ program/js/list.js (working copy)
@@ -32,6 +32,8 @@
this.rows = [];
this.selection = [];
+ this.shiftkey = false;
+
this.multiselect = false;
this.draggable = false;
this.keyboard = false;
@@ -504,6 +506,8 @@
if (this.focused != true)
return true;
+ this.shiftkey = e.shiftKey;
+
var keyCode = document.layers ? e.which : document.all ? event.keyCode :
document.getElementById ? e.keyCode : 0;
var mod_key = rcube_event.get_modifier(e);
switch (keyCode)
Index: program/js/app.js
===================================================================
--- program/js/app.js (revision 368)
+++ program/js/app.js (working copy)
@@ -1314,7 +1314,14 @@
// if there is a trash mailbox defined and we're not currently in it:
if (this.env.trash_mailbox &&
String(this.env.mailbox).toLowerCase()!=String(this.env.trash_mailbox).toLowerCase())
- this.move_messages(this.env.trash_mailbox);
+ // if shift was pressed delete it immediately
+ if (this.message_list.shiftkey)
+ {
+ if (confirm(this.get_label('deletemessagesconfirm')))
+ this.permanently_remove_messages();
+ }
+ else
+ this.move_messages(this.env.trash_mailbox);
// if there is a trash mailbox defined but we *are* in it:
else if (this.env.trash_mailbox && String(this.env.mailbox).toLowerCase()
== String(this.env.trash_mailbox).toLowerCase())
this.permanently_remove_messages();
Index: program/steps/mail/func.inc
===================================================================
--- program/steps/mail/func.inc (revision 368)
+++ program/steps/mail/func.inc (working copy)
@@ -79,6 +79,7 @@
// add some labels to client
rcube_add_label('purgefolderconfirm');
+ rcube_add_label('deletemessagesconfirm');
// $mboxlist_start = rcube_timer();