Changeset 2699 for trunk/expressoMail1_2
- Timestamp:
- 05/04/10 11:07:41 (14 years ago)
- Location:
- trunk/expressoMail1_2/js/jscode
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/js/jscode/draw_api_folders.js
r2692 r2699 177 177 table.appendChild(tbody); 178 178 content_id_0.appendChild(table); 179 }180 var idx_cc = 0;181 function draw_plugin_cc(ID, addrs)182 {183 expresso.connector.loadScript("jscode/ccQuickAdd");184 185 var array_addrs = '';186 var array_name = '';187 var cc_data = new Array();188 if(typeof(addrs.name) != 'undefined') {189 array_name = LTrim(addrs.name).split(" ");190 array_addrs = new Array(addrs.email);191 }192 else {193 array_addrs = (typeof addrs == 'object' ? addrs.toString().split("\" ") : addrs.split("\" "));194 array_name = LTrim(array_addrs[0]).replace('"','').split(" ");195 }196 197 var _split = array_name[0].split('@');198 cc_data[0] = _split[0];199 cc_data[1] = _split[0];200 cc_data[2] = '';201 202 for (i=1; i < array_name.length; i++)203 cc_data[2] += array_name[i] + " ";204 205 206 if(array_addrs.length > 1)207 cc_data[3] = array_addrs[1] ? array_addrs[1].replace("<",'').replace(">",'') : '';208 else209 cc_data[3] = array_addrs[0];210 211 var sm_envelope_img1 = '<img style="cursor:'+ (is_ie ? 'hand' : 'pointer') +'" title="' + get_lang("Add Contact") +212 '" onclick="ccQuickAddOne.showList(\''+cc_data+'\')" src="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/user_card.png">';213 var to_addybook_add = "<SPAN id='insert_plugin_"+idx_cc+"_"+ID+"'>";214 to_addybook_add += addrs;215 to_addybook_add += sm_envelope_img1;216 idx_cc++;217 to_addybook_add += "</SPAN>";218 return to_addybook_add;219 179 } 220 180 -
trunk/expressoMail1_2/js/jscode/draw_api_messages.js
r2695 r2699 173 173 174 174 } 175 var idx_cc = 0; 176 function draw_plugin_cc(ID, addrs) 177 { 178 expresso.connector.loadScript("jscode/ccQuickAdd"); 179 180 var array_addrs = ''; 181 var array_name = ''; 182 var cc_data = new Array(); 183 if(typeof(addrs.name) != 'undefined') { 184 array_name = LTrim(addrs.name).split(" "); 185 array_addrs = new Array(addrs.email); 186 } 187 else { 188 array_addrs = (typeof addrs == 'object' ? addrs.toString().split("\" ") : addrs.split("\" ")); 189 array_name = LTrim(array_addrs[0]).replace('"','').split(" "); 190 } 191 192 var _split = array_name[0].split('@'); 193 cc_data[0] = _split[0]; 194 cc_data[1] = _split[0]; 195 cc_data[2] = ''; 196 197 for (i=1; i < array_name.length; i++) 198 cc_data[2] += array_name[i] + " "; 199 200 201 if(array_addrs.length > 1) 202 cc_data[3] = array_addrs[1] ? array_addrs[1].replace("<",'').replace(">",'') : ''; 203 else 204 cc_data[3] = array_addrs[0]; 205 206 var sm_envelope_img1 = '<img style="cursor:'+ (is_ie ? 'hand' : 'pointer') +'" title="' + get_lang("Add Contact") + 207 '" onclick="ccQuickAddOne.showList(\''+cc_data+'\')" src="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/user_card.png">'; 208 var to_addybook_add = "<SPAN id='insert_plugin_"+idx_cc+"_"+ID+"'>"; 209 to_addybook_add += addrs; 210 to_addybook_add += sm_envelope_img1; 211 idx_cc++; 212 to_addybook_add += "</SPAN>"; 213 return to_addybook_add; 214 } 215 175 216 176 217 function putSignature(ID,info_msg){ … … 299 340 _height = parseInt(_height.replace("px","")); 300 341 var _offset = 35; 301 if (this.value == 'more_options'){342 if (this.value != 'hide_options'){ 302 343 this.innerHTML = "<b><u>"+get_lang('hide details')+"</u></b>"; 303 344 this.value = 'hide_options'; … … 331 372 option_forward.onclick = function(){new_message('forward', ID);}; 332 373 appendChilds(options,option_hide_more,createAndSet('SPAN',false,false,' | '),option_forward); 374 333 375 var option_reply_options = createAndSet("IMG",['id', 'src', 'value'],['msg_opt_reply_options_'+ID,URL_SERVER+'expressoMail1_2/templates/default/images/down.png','show']); 334 376 option_reply_options.onmouseover = function(){ … … 346 388 }; 347 389 option_reply_options.onclick = function(){ 348 if (this.value == 'show'){390 if (this.value != 'hide'){ 349 391 this.value = 'hide'; 350 392 option_reply_options.src= URL_SERVER+'expressoMail1_2/templates/default/images/pressed.png'; … … 415 457 _height = parseInt(_height.replace("px","")); 416 458 var _offset = 35; 417 if (this.value == 'more_options'){459 if (this.value != 'hide_options'){ 418 460 this.innerHTML = "<b><u>"+get_lang('Hide details')+"</u></b>"; 419 461 this.value = 'hide_options'; … … 471 513 } 472 514 var from_values = createAndSet('INPUT',['id','type','value'],["from_values_"+ID,"HIDDEN",info_msg.from.full]); 473 474 var local_message = document.createElement("INPUT"); 475 local_message.id = "is_local_"+ID; 476 local_message.name = "is_local"; 477 local_message.type = "HIDDEN"; 478 local_message.value = (info_msg.local_message)?"1":"0"; 479 515 var local_message = createAndSet("INPUT",['id','name','type','value'],["is_local_"+ID,"is_local","HIDDEN",(info_msg.local_message)?"1":"0"]); 480 516 appendChilds(tr1,td1,from,from_values,local_message); 481 517 … … 483 519 var tr11 = document.createElement("TR"); 484 520 tr11.className = "tr_message_header"; 485 var td11 = document.createElement("TD"); 486 td11.innerHTML = get_lang("Reply to")+": "; 487 td11.setAttribute("noWrap","true"); 488 var reply_to = document.createElement("TD"); 489 reply_to.id = "reply_to_"+ID; 490 491 var reply_to_values = document.createElement("INPUT"); 492 reply_to_values.id = "reply_to_values_"+ID; 493 reply_to_values.type = "HIDDEN"; 494 reply_to_values.value = info_msg.reply_to; //Veio do IMAP, sem images nem links. 495 reply_to.innerHTML = draw_plugin_cc(ID, info_msg.reply_to); 496 reply_to.className = "header_message_field"; 497 tbody_message_others_options.appendChild(appendChilds(tr11,td11,reply_to,reply_to_values)); 521 var _td11 = createAndSet('TD',['noWrap'],['true'],get_lang("Reply to")+": "); 522 var _reply_to = createAndSet('TD',['id', 'class'],["reply_to_"+ID, "header_message_field"],draw_plugin_cc(ID, info_msg.reply_to)); 523 var _reply_to_values = createAndSet('INPUT',['id', 'type', 'value'],["reply_to_values_"+ID,"HIDDEN",info_msg.reply_to]); 524 tbody_message_others_options.appendChild(appendChilds(tr11,_td11,_reply_to,_reply_to_values)); 498 525 } 499 526 ////////////////////////////////////////////////////////////////////////////////////////////////////// … … 505 532 to.id = "to_"+ID; 506 533 507 var to_values = document.createElement("INPUT"); 508 to_values.id = "to_values_"+ID; 509 to_values.type = "HIDDEN"; 510 to_values.value = info_msg.toaddress2; //Veio do IMAP, sem images nem links. 511 534 var _to_values = createAndSet('INPUT',['id', 'type', 'value'],["to_values_"+ID, "HIDDEN", info_msg.toaddress2]); 512 535 // Salva a pasta da mensagem 513 var input_current_folder = document.createElement('input'); 514 input_current_folder.id = "input_folder_"+ID; 515 input_current_folder.name = "input_folder"; 516 input_current_folder.type = "hidden"; 517 input_current_folder.value = info_msg.msg_folder; 518 td2.appendChild(input_current_folder); 519 // fim 536 var _input_cfolder = createAndSet('INPUT',['id', 'name', 'type', 'value'],["input_folder_"+ID, "input_folder", "hidden", info_msg.msg_folder]); 537 td2.appendChild(_input_cfolder); 538 520 539 toaddress_array[ID] = info_msg.toaddress2.split(","); 521 540 if (toaddress_array[ID].length > 1){ 522 541 to.innerHTML += draw_plugin_cc(ID, toaddress_array[ID][0]); 523 var div_toaddress = document.createElement("SPAN"); 524 div_toaddress.id = "div_toaddress_"+ID; 525 div_toaddress.style.display=""; 526 div_toaddress.innerHTML += " (<a STYLE='color: RED;' onclick=javascript:show_div_address_full('"+ID+"','to');>"+get_lang('more')+"</a>)"; 527 to.appendChild(div_toaddress); 542 var _div_toaddrs = createAndSet('SPAN',['id','style'],["div_toaddress_"+ID,'display: inline']," (<a STYLE='color: RED;' onclick=javascript:show_div_address_full('"+ID+"','to');>"+get_lang('more')+"</a>)"); 543 to.appendChild(_div_toaddrs); 528 544 } 529 545 else { … … 531 547 } 532 548 to.className = "header_message_field"; 533 tbody_message_others_options.appendChild(appendChilds(tr2,td2,to, to_values));549 tbody_message_others_options.appendChild(appendChilds(tr2,td2,to,_to_values)); 534 550 535 551 if (info_msg.cc){ … … 538 554 var td3 = document.createElement("TD"); 539 555 td3.innerHTML = "CC: "; 540 var cc = document.createElement("TD"); 541 cc.id = "cc_"+ID; 542 543 var cc_values = document.createElement("INPUT"); 544 cc_values.id = "cc_values_"+ID; 545 cc_values.type = "HIDDEN"; 546 cc_values.value = info_msg.cc; 547 556 var cc = createAndSet("TD",['id', 'class'],["cc_"+ID,"header_message_field"]); 557 558 var cc_values = createAndSet("INPUT",['id', 'type', 'value'],["cc_values_"+ID, "HIDDEN", info_msg.cc]); 548 559 ccaddress_array[ID] = info_msg.cc.split(","); 549 560 if (ccaddress_array[ID].length > 1){ 550 561 var div_ccaddress = document.createElement("SPAN"); 551 562 div_ccaddress.id = "div_ccaddress_"+ID; 552 var div_ccaddress_full = document.createElement("SPAN"); 553 div_ccaddress_full.id = "div_ccaddress_full_"+ID; 554 div_ccaddress.style.display=""; 563 var div_ccaddress_full = createAndSet("SPAN",['id', 'style'],["div_ccaddress_full_"+ID, "display: inline"]); 555 564 cc.innerHTML = draw_plugin_cc(ID, ccaddress_array[ID][0]); 556 565 div_ccaddress.innerHTML += " (<a STYLE='color: RED;' onclick=javascript:show_div_address_full('"+ID+"','cc');>"+get_lang('more')+"</a>)"; … … 560 569 cc.innerHTML = draw_plugin_cc(ID, info_msg.cc); 561 570 } 562 cc.className = "header_message_field";563 571 tbody_message_others_options.appendChild(appendChilds(tr3,td3,cc,cc_values)); 564 572 } … … 578 586 cco.id = "cco_"+ID; 579 587 580 var cco_values = document.createElement("input"); 581 cco_values.id = "cco_values_"+ID; 582 cco_values.type = "hidden"; 583 cco_values.value = info_msg.bcc; 584 588 var cco_values = createAndSet("INPUT",['id', 'type', 'value'],["cco_values_"+ID,"hidden",info_msg.bcc]); 585 589 ccoaddress_array[ID] = info_msg.bcc.split(","); 586 590 if (ccoaddress_array[ID].length > 1){ 587 591 var div_ccoaddress = document.createElement("SPAN"); 588 592 div_ccoaddress.id = "div_ccoaddress_"+ID; 589 var div_ccoaddress_full = document.createElement("SPAN"); 590 div_ccoaddress_full.id = "div_ccoaddress_full_"+ID; 591 div_ccoaddress.style.display=""; 592 593 var div_ccoaddress_full = createAndSet("SPAN",['id', 'style'],["div_ccoaddress_full_"+ID, "display:inline"]); 593 594 /* 594 595 * The function below is ugly, doesn't possible use this. … … 618 619 var td4 = document.createElement("TD"); 619 620 td4.innerHTML = get_lang("Date: "); 620 var date = document.createElement("TD"); 621 date.id = "date_"+ID; 622 date.innerHTML = info_msg.fulldate; 623 var date_day = document.createElement("INPUT"); 624 date_day.id = "date_day_"+ID; 625 date_day.type = "HIDDEN"; 626 date_day.value = info_msg.msg_day; 627 var date_hour = document.createElement("INPUT"); 628 date_hour.id = "date_hour_"+ID; 629 date_hour.type = "HIDDEN"; 630 date_hour.value = info_msg.msg_hour; 631 date.className = "header_message_field"; 621 var date = createAndSet('TD',['id','class'],["date_"+ID,"header_message_field"],info_msg.fulldate); 622 var date_day = createAndSet('INPUT',['id', 'type', 'value'],["date_day_"+ID, "HIDDEN", info_msg.msg_day]); 623 var date_hour = createAndSet('INPUT',['id', 'type', 'value'],["date_hour_"+ID, "HIDDEN", info_msg.msg_hour]); 632 624 tbody_message_others_options.appendChild(appendChilds(tr4,td4,date,date_day,date_hour)); 633 625 … … 636 628 var td5 = document.createElement("TD"); 637 629 td5.innerHTML = get_lang("Subject"); 638 var subject = document.createElement("TD"); 639 subject.id = "subject_"+ID; 640 subject.innerHTML = info_msg.subject; 641 subject.className = "header_message_field"; 630 var subject = createAndSet('TD',['id', 'class'],["subject_"+ID, "header_message_field"],info_msg.subject); 642 631 tbody_message_others_options.appendChild(appendChilds(tr5,td5,subject)); 643 632 if (info_msg.attachments.length > 0){ … … 648 637 649 638 var attachments = document.createElement("TD"); 639 attachments.align='left'; 650 640 td6.vAlign = "top"; 651 attachments.align='left'; 641 652 642 var zipped_attachments = ''; 653 643 if(info_msg.attachments.length >= 1) { 654 var zipped_attachments = document.createElement("TABLE"); 655 zipped_attachments.style.marginBottom = "4px"; 656 zipped_attachments.cellPadding="0"; 657 zipped_attachments.cellSpacing="0"; 644 var zipped_attachments = createAndSet("TABLE",['style','cellPadding','cellSpacing'],['margin-bottom: 4px','0','0']); 658 645 var td = document.createElement("TD"); 659 646 if(info_msg.attachments.length > 1) { … … 692 679 if((url_decode(info_msg.attachments[i].name).indexOf(".ics")!=-1) || (url_decode(info_msg.attachments[i].name).indexOf(".vcard")!=-1)){ 693 680 //Link para importar calendário 694 var link_import_attachment = new Image(); 695 link_import_attachment.src = "templates/"+template+"/images/new.png"; 696 link_import_attachment.setAttribute("onclick","javascript:import_calendar('"+info_msg.msg_folder+"&msg_number="+info_msg.msg_number+"&msg_part="+info_msg.attachments[i].pid+"&idx_file="+i+"&encoding="+info_msg.attachments[i].encoding+"');"); 697 link_import_attachment.title = get_lang("Import to calendar"); 698 link_import_attachment.align = "top"; 699 link_import_attachment.style.cursor = "pointer"; 681 var link_import_attachment = createAndSet("IMG",['src','onclick','title','align','style'],["templates/"+template+"/images/new.png","javascript:import_calendar('"+info_msg.msg_folder+"&msg_number="+info_msg.msg_number+"&msg_part="+info_msg.attachments[i].pid+"&idx_file="+i+"&encoding="+info_msg.attachments[i].encoding+"');",get_lang("Import to calendar"),"top","cursor: pointer"]); 700 682 var space = document.createElement("span"); 701 683 space.innerHTML = " "; … … 733 715 td.colSpan = '2'; 734 716 735 var imgTag = info_msg.body.match(/(<img[^>]*src[^>=]*=['"]?[^'">]*["']?[^>]*>)|(<[^>]*(style[^=>]*=['"][^>]*background(-image)?:[^:;>]*url\()[^>]*>)/gi); 736 737 var newBody = info_msg.body; 738 if(!info_msg.showImg && imgTag) 739 { 740 var domains = ''; 741 var blocked = false; 742 var forbidden = true; 743 744 if (preferences.notification_domains != null && typeof(preferences.notification_domains) != 'undefined') 745 { 746 domains = preferences.notification_domains.split(','); 747 for(var j = 0; j < imgTag.length; j++) 748 { 749 for (var i = 0; i < domains.length; i++) 750 { 751 if (imgTag[j].match(/cid:([\w\d]){5,}/) || imgTag[j].match(/src=\"\.\/inc\/show_embedded_attach\.php/g)) 752 { 753 forbidden = false; 754 continue; 755 } 756 imgSource = imgTag[j].match(/=['"](http:\/\/)+[^'"\/]*/); 757 if (imgSource && imgSource.toString().substr(5).match(domains[i])) 758 forbidden = false; 759 } 760 if (forbidden) 761 { 762 newBody = newBody.replace(imgTag[j],"<img src='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/forbidden.jpg'>"); 763 blocked=true; 764 } 765 } 766 if (blocked) 767 { 768 var showImgLink = document.createElement('DIV'); 769 showImgLink.id="show_img_link_"+ID; 770 showImgLink.onclick = function(){show_msg_img(info_msg.msg_number,info_msg.msg_folder)}; 771 showImgLink.className="show_img_link"; 772 showImgLink.innerHTML = get_lang("Show images from")+": "+info_msg.from.email; 773 td.appendChild(showImgLink); 774 } 775 } 776 } 717 var newBody = blockImage(info_msg,ID,td); 718 777 719 td.appendChild(div); 778 720 tr.appendChild(td); … … 854 796 table_message.appendChild(tbody_message); 855 797 content.appendChild(table_message); 856 var msg_number = document.createElement('INPUT'); 857 msg_number.id = "msg_number_" + ID; 858 msg_number.type = "hidden"; 859 msg_number.value = info_msg.msg_number; 798 var msg_number = createAndSet("INPUT",['id','type','value'],["msg_number_" + ID, "hidden", info_msg.msg_number]); 860 799 content.appendChild(msg_number); 861 800 ////////////////////////////////////////////////////////////////////////////////////////////////////// … … 875 814 } 876 815 } 816 817 } 818 819 function blockImage(info_msg,ID,td){ 820 var imgTag = info_msg.body.match(/(<img[^>]*src[^>=]*=['"]?[^'">]*["']?[^>]*>)|(<[^>]*(style[^=>]*=['"][^>]*background(-image)?:[^:;>]*url\()[^>]*>)/gi); 821 822 var newBody = info_msg.body; 823 if(!info_msg.showImg && imgTag) 824 { 825 var domains = ''; 826 var blocked = false; 827 var forbidden = true; 828 829 if (preferences.notification_domains != null && typeof(preferences.notification_domains) != 'undefined') 830 { 831 domains = preferences.notification_domains.split(','); 832 for(var j = 0; j < imgTag.length; j++) 833 { 834 for (var i = 0; i < domains.length; i++) 835 { 836 if (imgTag[j].match(/cid:([\w\d]){5,}/) || imgTag[j].match(/src=\"\.\/inc\/show_embedded_attach\.php/g)) 837 { 838 forbidden = false; 839 continue; 840 } 841 imgSource = imgTag[j].match(/=['"](http:\/\/)+[^'"\/]*/); 842 if (imgSource && imgSource.toString().substr(5).match(domains[i])) 843 forbidden = false; 844 } 845 if (forbidden) 846 { 847 newBody = newBody.replace(imgTag[j],"<img src='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/forbidden.jpg'>"); 848 blocked=true; 849 } 850 } 851 if (blocked) 852 { 853 var showImgLink = document.createElement('DIV'); 854 showImgLink.id="show_img_link_"+ID; 855 showImgLink.onclick = function(){show_msg_img(info_msg.msg_number,info_msg.msg_folder)}; 856 showImgLink.className="show_img_link"; 857 showImgLink.innerHTML = get_lang("Show images from")+": "+info_msg.from.email; 858 td.appendChild(showImgLink); 859 } 860 } 861 } 862 return newBody; 877 863 878 864 }
Note: See TracChangeset
for help on using the changeset viewer.