From 84f9312e1d17725db6040554a993db38292d46bd Mon Sep 17 00:00:00 2001 From: svncommit <devs@roundcube.net> Date: Tue, 21 Nov 2006 07:30:48 -0500 Subject: [PATCH] Updated Russian localization --- program/js/app.js | 73 +++++++++++++++++++++++++++++------- 1 files changed, 59 insertions(+), 14 deletions(-) diff --git a/program/js/app.js b/program/js/app.js index 52ab5fa..8157159 100644 --- a/program/js/app.js +++ b/program/js/app.js @@ -141,9 +141,15 @@ { this.enable_command('show', 'reply', 'reply-all', 'forward', 'moveto', 'delete', 'viewsource', 'print', 'load-attachment', true); if (this.env.next_uid) + { this.enable_command('nextmessage', true); + this.enable_command('lastmessage', true); + } if (this.env.prev_uid) + { this.enable_command('previousmessage', true); + this.enable_command('firstmessage', true); + } } if (this.env.action=='show' && this.env.blockedobjects) @@ -478,8 +484,16 @@ this.list_page('next'); break; + case 'lastpage': + this.list_page('last'); + break; + case 'previouspage': this.list_page('prev'); + break; + + case 'firstpage': + this.list_page('first'); break; case 'expunge': @@ -656,9 +670,19 @@ this.show_message(this.env.next_uid); break; + case 'lastmessage': + if (this.env.last_uid) + this.show_message(this.env.last_uid); + break; + case 'previousmessage': if (this.env.prev_uid) this.show_message(this.env.prev_uid); + break; + + case 'firstmessage': + if (this.env.first_uid) + this.show_message(this.env.first_uid); break; case 'checkmail': @@ -1095,8 +1119,12 @@ { if (page=='next') page = this.env.current_page+1; + if (page=='last') + page = this.env.pagecount; if (page=='prev' && this.env.current_page>1) page = this.env.current_page-1; + if (page=='first' && this.env.current_page>1) + page = 1; if (page > 0 && page <= this.env.pagecount) { @@ -1232,17 +1260,20 @@ // move selected messages to the specified mailbox this.move_messages = function(mbox) { - // exit if no mailbox specified or if selection is empty - var selection = this.message_list.get_selection(); - if (!mbox || !(selection.length || this.env.uid) || mbox==this.env.mailbox) - return; - + // exit if current or no mailbox specified or if selection is empty + if (!mbox || !this.env.uid || mbox==this.env.mailbox) + { + if (!this.message_list || !this.message_list.get_selection().length) + return; + } + var a_uids = new Array(); if (this.env.uid) a_uids[a_uids.length] = this.env.uid; else { + var selection = this.message_list.get_selection(); var id; for (var n=0; n<selection.length; n++) { @@ -1270,16 +1301,19 @@ this.permanently_remove_messages = function() { // exit if no mailbox specified or if selection is empty - var selection = this.message_list.get_selection(); - if (!(selection.length || this.env.uid)) - return; - + if (!this.env.uid) + { + if (!this.message_list || !this.message_list.get_selection().length) + return; + } + var a_uids = new Array(); if (this.env.uid) a_uids[a_uids.length] = this.env.uid; else { + var selection = this.message_list.get_selection(); var id; for (var n=0; n<selection.length; n++) { @@ -1300,13 +1334,22 @@ this.delete_messages = function() { // exit if no mailbox specified or if selection is empty - var selection = this.message_list.get_selection(); - if (!(selection.length || this.env.uid)) - return; + if (!this.env.uid) + { + if (!this.message_list || !this.message_list.get_selection().length) + return; + } // 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(); @@ -2626,7 +2669,9 @@ this.set_page_buttons = function() { this.enable_command('nextpage', (this.env.pagecount > this.env.current_page)); + this.enable_command('lastpage', (this.env.pagecount > this.env.current_page)); this.enable_command('previouspage', (this.env.current_page > 1)); + this.enable_command('firstpage', (this.env.current_page > 1)); } @@ -3110,7 +3155,7 @@ case 'list': if (this.env.messagecount) - this.enable_command('purge', (this.env.mailbox==this.env.trash_mailbox)); + this.enable_command('purge', (this.env.mailbox==this.env.trash_mailbox || this.env.mailbox==this.env.junk_mailbox)); case 'expunge': this.enable_command('select-all', 'select-none', 'expunge', this.env.messagecount ? true : false); -- Gitblit v1.9.1