summaryrefslogtreecommitdiff
path: root/program/js
diff options
context:
space:
mode:
Diffstat (limited to 'program/js')
-rw-r--r--program/js/app.js115
1 files changed, 52 insertions, 63 deletions
diff --git a/program/js/app.js b/program/js/app.js
index 9c5df7661..01601a6c0 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -2591,16 +2591,14 @@ function rcube_webmail()
this.init_address_input_events($("[name='_cc']"));
this.init_address_input_events($("[name='_bcc']"));
- if (!html_mode)
+ if (!html_mode) {
+ // add signature according to selected identity
+ // if we have HTML editor, signature is added in callback
+ if (input_from.attr('type') == 'select-one' && $("input[name='_draft_saveid']").val() == '') {
+ this.change_identity(input_from[0]);
+ }
this.set_caret_pos(input_message, this.env.top_posting ? 0 : $(input_message).val().length);
-
- // add signature according to selected identity
- if (input_from.attr('type') == 'select-one' && $("input[name='_draft_saveid']").val() == ''
- && !html_mode) { // if we have HTML editor, signature is added in callback
- this.change_identity(input_from[0]);
}
- else if (!html_mode)
- this.set_caret_pos(input_message, this.env.top_posting ? 0 : $(input_message).val().length);
if (input_to.val() == '')
input_to.focus();
@@ -2635,21 +2633,19 @@ function rcube_webmail()
var input_message = $("[name='_message']");
// check sender (if have no identities)
- if (input_from.attr('type') == 'text' && !rcube_check_email(input_from.val(), true))
- {
+ if (input_from.attr('type') == 'text' && !rcube_check_email(input_from.val(), true)) {
alert(this.get_label('nosenderwarning'));
input_from.focus();
return false;
- }
+ }
// check for empty recipient
var recipients = input_to.val() ? input_to.val() : (input_cc.val() ? input_cc.val() : input_bcc.val());
- if (!rcube_check_email(recipients.replace(/^\s+/, '').replace(/[\s,;]+$/, ''), true))
- {
+ if (!rcube_check_email(recipients.replace(/^\s+/, '').replace(/[\s,;]+$/, ''), true)) {
alert(this.get_label('norecipientwarning'));
input_to.focus();
return false;
- }
+ }
// check if all files has been uploaded
for (var key in this.env.attachments) {
@@ -2711,31 +2707,31 @@ function rcube_webmail()
this.stop_spellchecking();
$(this.env.spellcheck.spell_container).css('visibility', vis ? 'visible' : 'hidden');
- }
+ }
};
this.set_spellcheck_state = function(s)
- {
+ {
this.spellcheck_ready = (s == 'ready' || s == 'no_error_found');
this.enable_command('spellcheck', this.spellcheck_ready);
- };
+ };
this.set_draft_id = function(id)
- {
+ {
$("input[name='_draft_saveid']").val(id);
- };
+ };
this.auto_save_start = function()
- {
+ {
if (this.env.draft_autosave)
this.save_timer = self.setTimeout(function(){ ref.command("savedraft"); }, this.env.draft_autosave * 1000);
// Unlock interface now that saving is complete
this.busy = false;
- };
+ };
this.compose_field_hash = function(save)
- {
+ {
// check input fields
var value_to = $("[name='_to']").val();
var value_cc = $("[name='_cc']").val();
@@ -2766,7 +2762,7 @@ function rcube_webmail()
this.cmp_hash = str;
return str;
- };
+ };
this.change_identity = function(obj, show_sig)
{
@@ -2898,22 +2894,20 @@ function rcube_webmail()
};
this.show_attachment_form = function(a)
- {
+ {
if (!this.gui_objects.uploadbox)
return false;
var elm, list;
- if (elm = this.gui_objects.uploadbox)
- {
- if (a && (list = this.gui_objects.attachmentlist))
- {
+ if (elm = this.gui_objects.uploadbox) {
+ if (a && (list = this.gui_objects.attachmentlist)) {
var pos = $(list).offset();
elm.style.top = (pos.top + list.offsetHeight + 10) + 'px';
elm.style.left = pos.left + 'px';
- }
+ }
$(elm).toggle();
- }
+ }
// clear upload form
try {
@@ -2923,38 +2917,34 @@ function rcube_webmail()
catch(e){} // ignore errors
return true;
- };
+ };
// upload attachment file
this.upload_file = function(form)
- {
+ {
if (!form)
return false;
// get file input fields
var send = false;
for (var n=0; n<form.elements.length; n++)
- if (form.elements[n].type=='file' && form.elements[n].value)
- {
+ if (form.elements[n].type=='file' && form.elements[n].value) {
send = true;
break;
- }
+ }
// create hidden iframe and post upload form
- if (send)
- {
+ if (send) {
var ts = new Date().getTime();
var frame_name = 'rcmupload'+ts;
// have to do it this way for IE
// otherwise the form will be posted to a new window
- if(document.all)
- {
+ if (document.all) {
var html = '<iframe name="'+frame_name+'" src="program/blank.gif" style="width:0;height:0;visibility:hidden;"></iframe>';
document.body.insertAdjacentHTML('BeforeEnd',html);
- }
- else // for standards-compilant browsers
- {
+ }
+ else { // for standards-compilant browsers
var frame = document.createElement('iframe');
frame.name = frame_name;
frame.style.border = 'none';
@@ -2962,7 +2952,7 @@ function rcube_webmail()
frame.style.height = 0;
frame.style.visibility = 'hidden';
document.body.appendChild(frame);
- }
+ }
// handle upload errors, parsing iframe content in onload
var fr = document.getElementsByName(frame_name)[0];
@@ -3000,12 +2990,12 @@ function rcube_webmail()
if (this.env.cancelicon)
content = '<a title="'+this.get_label('cancel')+'" onclick="return rcmail.cancel_attachment_upload(\''+ts+'\', \''+frame_name+'\');" href="#cancelupload"><img src="'+this.env.cancelicon+'" alt="" /></a>'+content;
this.add2attachment_list(ts, { name:'', html:content, complete:false });
- }
+ }
// set reference to the form object
this.gui_objects.attachmentform = form;
return true;
- };
+ };
// add file name to attachment list
// called from upload page
@@ -3048,37 +3038,36 @@ function rcube_webmail()
};
this.remove_attachment = function(name)
- {
+ {
if (name && this.env.attachments[name])
this.http_post('remove-attachment', '_file='+urlencode(name));
return true;
- };
+ };
this.cancel_attachment_upload = function(name, frame_name)
- {
+ {
if (!name || !frame_name)
return false;
this.remove_from_attachment_list(name);
$("iframe[name='"+frame_name+"']").remove();
return false;
- };
+ };
// send remote request to add a new contact
this.add_contact = function(value)
- {
+ {
if (value)
this.http_post('addcontact', '_address='+value);
return true;
- };
+ };
// send remote request to search mail or contacts
this.qsearch = function(value)
- {
- if (value != '')
- {
+ {
+ if (value != '') {
var addurl = '';
if (this.message_list) {
this.message_list.clear();
@@ -3089,12 +3078,12 @@ function rcube_webmail()
for (var n in mods)
head_arr.push(n);
addurl += '&_headers='+head_arr.join(',');
- }
}
- } else if (this.contact_list) {
+ }
+ } else if (this.contact_list) {
this.contact_list.clear(true);
this.show_contentframe(false);
- }
+ }
if (this.gui_objects.search_filter)
addurl += '&_filter=' + this.gui_objects.search_filter.value;
@@ -3107,25 +3096,25 @@ function rcube_webmail()
+ (this.env.source ? '&_source='+urlencode(this.env.source) : '')
+ (this.env.group ? '&_gid='+urlencode(this.env.group) : '')
+ (addurl ? addurl : ''), true);
- }
+ }
return true;
- };
+ };
// reset quick-search form
this.reset_qsearch = function()
- {
+ {
if (this.gui_objects.qsearchbox)
this.gui_objects.qsearchbox.value = '';
this.env.search_request = null;
return true;
- };
+ };
this.sent_successfully = function(type, msg)
- {
+ {
this.list_mailbox();
this.display_message(msg, type, true);
- }
+ };
/*********************************************************/