From 409476e2b6779d94bdcaf6949b1fcfacf0119e2a Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Mon, 9 Feb 2009 18:17:36 -0700 Subject: [PATCH] Optimizations --- imp/js/contacts.js | 2 +- imp/js/src/contacts.js | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/imp/js/contacts.js b/imp/js/contacts.js index 38a193693..85d2dfdc0 100644 --- a/imp/js/contacts.js +++ b/imp/js/contacts.js @@ -1 +1 @@ -var ImpContacts={_passAddresses:function(){var a="";$("selected_addresses").childElements().each(function(b){if(b.value){a+=b.value+"|"}});$("sa").setValue(a)},sameOption:function(e,d,a){var c=e+": "+d.value,b=a.value;return Try.these(function(){return(c==b)||(decodeURIComponent(c)==decodeURIComponent(b))},function(){return(c==b)})},addAddress:function(e){var g,a,c,b=$("search_results");if(!$F(b).size()){alert(IMP.text.contacts_select)}else{g=$("selected_addresses");a=$A(g).size();b.childElements().each(function(d){if(d.value&&d.selected){if(!$A(g).any(function(f){return this.sameOption(e,d,f)}.bind(this))){c=e+": "+d.value;g[a++]=new Option(c,c)}}}.bind(this))}},updateMessage:function(){if(parent.opener.closed){alert(IMP.text.contacts_closed);window.close();return}if(!parent.opener.document[this.formname]){alert(IMP.text.contacts_called);window.close();return}$("selected_addresses").childElements().each(function(c){var a=c.value,d,e=null,g,b;g=a.indexOf(":");d=a.substring(0,g);a=a.substring(g+2,a.length);if(d=="to"){e=parent.opener.document[this.formname].to}else{if(!this.to_only&&d=="cc"){e=parent.opener.document[this.formname].cc}else{if(!this.to_only&&d=="bcc"){e=parent.opener.document[this.formname].bcc}}}if(!e){return}if(e.value.length){b=e.value.replace(/, +/g,",").split(",").findAll(function(f){return f});e.value=b.join(", ");if(e.value.lastIndexOf(";")!=e.value.length-1){e.value+=","}e.value+=" "+a}else{e.value=a}if(a.lastIndexOf(";")!=a.length-1){e.value+=", "}}.bind(this));window.close()},removeAddress:function(){$("selected_addresses").childElements().each(function(a){if(a.selected){a.remove()}})},onDomLoad:function(){$("contacts").observe("submit",this._passAddresses.bind(this));document.observe("change",this._changeHandler.bindAsEventListener(this));document.observe("click",this._clickHandler.bindAsEventListener(this));document.observe("dblclick",this._dblclickHandler.bindAsEventListener(this))},_changeHandler:function(a){var b=a.element().readAttribute("id");switch(b){case"search_results":$(b)[0].selected=false;break}},_clickHandler:function(a){var b=a.element().readAttribute("id");switch(b){case"btn_add_to":case"btn_add_cc":case"btn_add_bcc":this.addAddress(b.substring(8));break;case"btn_update":this.updateMessage();break;case"btn_delete":this.removeAddress();break;case"btn_cancel":window.close();break}},_dblclickHandler:function(b){var a=b.element();if(!a.match("SELECT")){a=a.up("SELECT")}switch(a.readAttribute("id")){case"search_results":this.addAddress("to");break;case"selected_addresses":this.removeAddress();break}}};document.observe("dom:loaded",ImpContacts.onDomLoad.bind(ImpContacts)); \ No newline at end of file +var ImpContacts={_passAddresses:function(){var a="";$("selected_addresses").childElements().each(function(b){if(b.value){a+=b.value+"|"}});$("sa").setValue(a)},sameOption:function(e,d,a){var c=e+": "+d.value,b=a.value;return Try.these(function(){return(c==b)||(decodeURIComponent(c)==decodeURIComponent(b))},function(){return(c==b)})},addAddress:function(e){var g,a,c,b=$("search_results");if(!$F(b).size()){alert(IMP.text.contacts_select)}else{g=$("selected_addresses");a=$A(g).size();b.childElements().each(function(d){if(d.value&&d.selected){if(!$A(g).any(function(f){return this.sameOption(e,d,f)},this)){c=e+": "+d.value;g[a++]=new Option(c,c)}}},this)}},updateMessage:function(){if(parent.opener.closed){alert(IMP.text.contacts_closed);window.close();return}if(!parent.opener.document[this.formname]){alert(IMP.text.contacts_called);window.close();return}$("selected_addresses").childElements().each(function(c){var a=c.value,d,e=null,g,b;g=a.indexOf(":");d=a.substring(0,g);a=a.substring(g+2,a.length);if(d=="to"){e=parent.opener.document[this.formname].to}else{if(!this.to_only&&d=="cc"){e=parent.opener.document[this.formname].cc}else{if(!this.to_only&&d=="bcc"){e=parent.opener.document[this.formname].bcc}}}if(!e){return}if(e.value.length){b=e.value.replace(/, +/g,",").split(",").findAll(function(f){return f});e.value=b.join(", ");if(e.value.lastIndexOf(";")!=e.value.length-1){e.value+=","}e.value+=" "+a}else{e.value=a}if(a.lastIndexOf(";")!=a.length-1){e.value+=", "}},this);window.close()},removeAddress:function(){$("selected_addresses").childElements().each(function(a){if(a.selected){a.remove()}})},onDomLoad:function(){$("contacts").observe("submit",this._passAddresses.bind(this));document.observe("change",this._changeHandler.bindAsEventListener(this));document.observe("click",this._clickHandler.bindAsEventListener(this));document.observe("dblclick",this._dblclickHandler.bindAsEventListener(this))},_changeHandler:function(a){var b=a.element().readAttribute("id");switch(b){case"search_results":$(b)[0].selected=false;break}},_clickHandler:function(a){var b=a.element().readAttribute("id");switch(b){case"btn_add_to":case"btn_add_cc":case"btn_add_bcc":this.addAddress(b.substring(8));break;case"btn_update":this.updateMessage();break;case"btn_delete":this.removeAddress();break;case"btn_cancel":window.close();break}},_dblclickHandler:function(b){var a=b.element();if(!a.match("SELECT")){a=a.up("SELECT")}switch(a.readAttribute("id")){case"search_results":this.addAddress("to");break;case"selected_addresses":this.removeAddress();break}}};document.observe("dom:loaded",ImpContacts.onDomLoad.bind(ImpContacts)); \ No newline at end of file diff --git a/imp/js/src/contacts.js b/imp/js/src/contacts.js index f3c66554b..f8d207ceb 100644 --- a/imp/js/src/contacts.js +++ b/imp/js/src/contacts.js @@ -51,12 +51,12 @@ var ImpContacts = { if (i.value && i.selected) { if (!$A(d).any(function(j) { return this.sameOption(f, i, j); - }.bind(this))) { + }, this)) { option = f + ': ' + i.value; d[l++] = new Option(option, option); } } - }.bind(this)); + }, this); } }, @@ -106,7 +106,7 @@ var ImpContacts = { if (address.lastIndexOf(';') != address.length - 1) { field.value += ', '; } - }.bind(this)); + }, this); window.close(); }, -- 2.11.0