Changeset 2714
- Timestamp:
- 05/06/10 09:12:42 (14 years ago)
- Location:
- trunk/expressoMail1_2
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/inc/class.imap_functions.inc.php
r2684 r2714 2983 2983 { 2984 2984 $params['status'] = 'false'; 2985 $params[' command_to_exec'] = "delete_border('". $reuse_border ."');";2985 $params['delete_border'] = $reuse_border; 2986 2986 return $params; 2987 2987 } … … 3020 3020 { 3021 3021 $params['status'] = 'false'; 3022 $params[' command_to_exec'] = "delete_border('". $reuse_border ."');";3022 $params['delete_border'] = $reuse_border; 3023 3023 return $params; 3024 3024 } -
trunk/expressoMail1_2/js/jscode/abas.js
r2642 r2714 1 var openTab = { 2 'type' : [], // 8 types of tabs, further info. see expressolivre.org/dev/wiki/mail/Documentacao 3 'content_id' : [], 4 'imapUid' : [], // Stores the imap email number of current tab 5 'countFile' : [0,0,0,0,0,0,0,0,0,0], // Stores the number of files attached in current tab 6 'imapBox' : [], // Stores the folder name 7 'toPreserve' : [], // Check if the message should be removed from draft after send 8 'autosave_timer' : [] // The timeout timer for autosave function 9 }; 10 var tabTypes = { 11 'new':4, 12 'forward':6, 13 'reply_with_history':7, 14 'reply_to_all_with_history':7, 15 'reply_without_history':7, 16 'reply_to_all_without_history':7, 17 'edit':5 18 }; 19 var currentTab,numBox = 0; // Open Tab and num of mailboxes opened at context 20 1 21 function setBorderAttributes(ID) 2 22 { -
trunk/expressoMail1_2/js/jscode/draw_api_folders.js
r2699 r2714 1036 1036 td_element3.setAttribute("width", "20%"); 1037 1037 var _onclick = function(){ 1038 InfoContact.hide();proxy_mensagens.get_msg(headers_msgs .msg_number, msg_folder,true, show_msg);1038 InfoContact.hide();proxy_mensagens.get_msg(headers_msgs, msg_folder,true, show_msg); 1039 1039 }; 1040 1040 td_element3.onclick = _onclick; … … 1140 1140 } 1141 1141 1142 1142 folderHeaders = []; 1143 1143 // Draw the inbox and another folders 1144 1144 function draw_box(headers_msgs, msg_folder, alternate){ … … 1155 1155 openTab.imapBox[numBox] = msg_folder; 1156 1156 openTab.type[numBox] = 0; 1157 folderHeaders[msg_folder] = headers_msgs; 1157 1158 1158 1159 table_message_header_box = document.getElementById("table_message_header_box_"+numBox); … … 1363 1364 } 1364 1365 else if(msg_folder && msg_number){ 1365 expresso.connector.cacheNextRequest(); 1366 cExecute("expressoMail1_2.imap_functions.get_info_msg&msg_number="+ msg_number + "&msg_folder=" + url_encode(msg_folder), show_msg); 1366 proxy_mensagens.get_msg(headers_msgs, url_encode(msg_folder),true, show_msg); 1367 1367 Element('msg_folder').value = ''; 1368 1368 Element('msg_number').value = ''; -
trunk/expressoMail1_2/js/jscode/draw_api_messages.js
r2708 r2714 1 var openTab = {2 'type' : [], // 8 types of tabs, further info. see expressolivre.org/dev/wiki/mail/Documentacao3 'content_id' : [],4 'imapUid' : [], // Stores the imap email number of current tab5 'countFile' : [0,0,0,0,0,0,0,0,0,0], // Stores the number of files attached in current tab6 'imapBox' : [], // Stores the folder name7 'toPreserve' : [], // Check if the message should be removed from draft after send8 'autosave_timer' : [] // The timeout timer for autosave function9 };10 var tabTypes = {11 'new':4,12 'forward':6,13 'reply_with_history':7,14 'reply_to_all_with_history':7,15 'reply_without_history':7,16 'reply_to_all_without_history':7,17 'edit':518 };19 var currentTab,numBox = 0; // Open Tab and num of mailboxes opened at context20 21 1 // Objeto Map, talvez o ideal fosse adicionar este objeto à Api do egroupware, e carregá-lo 22 2 // aqui no expressoMail. … … 80 60 } 81 61 82 function createNxtPrevButtons( info_msg,ID,folder_id){62 function createNxtPrevButtons(msg_folder,ID,folder_id){ 83 63 var next_previous_msg_td = createAndSet("TD",[ "noWrap", "align", "width" ], [ "true", "right", "40px"]); 84 64 var img_next_msg = createAndSet("IMG", [ 'id', 'src', 'title' ], [ … … 91 71 if (folder){ // mensagem local criptografada nao tem ID da pasta local 92 72 if (folder.nextSibling){ 93 var nextMsgBox = folder.nextSibling.name?folder.nextSibling.name: info_msg.msg_folder;73 var nextMsgBox = folder.nextSibling.name?folder.nextSibling.name:msg_folder; 94 74 95 75 if (nextMsgBox == "INBOX/decifradas")// teste para ver se a mensagem vem da pasta oculta decifradas … … 98 78 img_next_msg.onclick = function() 99 79 { 100 currentTab = ID; 101 openTab.type[ID] = 2; 102 proxy_mensagens.get_msg(folder.nextSibling.id,nextMsgBox,true,show_msg); 80 openTab.type[currentTab] = 2; 81 if ( nextMsgBox == undefined ) 82 nextMsgBox = current_folder; 83 var allHeaders = folderHeaders[nextMsgBox]; 84 for (i in allHeaders) 85 if (allHeaders[i].msg_number == folder.nextSibling.id){ 86 var nextHeader = allHeaders[i]; 87 break; 88 } 89 proxy_mensagens.get_msg(nextHeader,nextMsgBox,true,show_msg,currentTab); 103 90 }; 104 91 } … … 107 94 img_next_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.gray.button.png'; 108 95 img_next_msg.style.cursor = 'default'; 109 110 96 } 111 97 } … … 114 100 img_next_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.gray.button.png'; 115 101 img_next_msg.style.cursor = 'default'; 116 if (!proxy_mensagens.is_local_folder(get_current_folder()) && !( info_msg.msg_folder == "INBOX/decifradas")) // testa se a mensagem e local102 if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(msg_folder == "INBOX/decifradas")) // testa se a mensagem e local 117 103 { 118 104 img_next_msg.onclick = function() … … 137 123 if (folder.previousSibling) 138 124 { 139 var previousMsgBox = folder.previousSibling.name?folder.previousSibling.name: info_msg.msg_folder;125 var previousMsgBox = folder.previousSibling.name?folder.previousSibling.name:msg_folder; 140 126 141 127 if (previousMsgBox == "INBOX/decifradas") // teste para ver se a mensagem vem da pasta oculta decifradas … … 144 130 img_previous_msg.onclick = function() 145 131 { 146 currentTab = ID; 147 openTab.type[ID] = 2; 148 proxy_mensagens.get_msg(folder.previousSibling.id,previousMsgBox,true,show_msg); 132 openTab.type[currentTab] = 2; 133 if ( previousMsgBox == undefined ) 134 previousMsgBox = current_folder; 135 var allHeaders = folderHeaders[previousMsgBox]; 136 for (i in allHeaders) 137 if (allHeaders[i].msg_number == folder.previousSibling.id){ 138 var previousHeader = allHeaders[i]; 139 break; 140 } 141 proxy_mensagens.get_msg(previousHeader,previousMsgBox,true,show_msg,currentTab); 149 142 }; 150 143 } … … 159 152 img_previous_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/up.gray.button.png'; 160 153 img_previous_msg.style.cursor = 'default'; 161 if (!proxy_mensagens.is_local_folder(get_current_folder()) && !( info_msg.msg_folder == "INBOX/decifradas")) // testa se a mensagem e local154 if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(msg_folder == "INBOX/decifradas")) // testa se a mensagem e local 162 155 { 163 156 img_previous_msg.onclick = function() … … 282 275 } 283 276 284 var next_previous_msg_td = createNxtPrevButtons(info_msg ,ID,folder_id);277 var next_previous_msg_td = createNxtPrevButtons(info_msg.msg_folder,ID,folder_id); 285 278 if (typeof(next_previous_msg_td) == 'undefined') 286 279 return false; … … 298 291 _name = info_msg.from.email.length > _maxChar ? info_msg.from.email.substring(0,_maxChar) + "..." : info_msg.from.email; 299 292 300 td.innerHTML = _name.bold() + ', ' + info_msg. smalldate;301 if (info_msg.attachment s.length > 0)302 td.innerHTML += " <img style='cursor:pointer' onclick='javascript:Element(\"option_hide_more_"+ID+"\").onclick()' src ='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/clip.gif' title='"+info_msg.attachment s.names+"'>";293 td.innerHTML = _name.bold() + ', ' + info_msg.udate; 294 if (info_msg.attachment.names.length > 0) 295 td.innerHTML += " <img style='cursor:pointer' onclick='javascript:Element(\"option_hide_more_"+ID+"\").onclick()' src ='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/clip.gif' title='"+info_msg.attachment.names+"'>"; 303 296 304 297 if (typeof(info_msg.signature) == 'string') … … 321 314 var option_hide_more = createAndSet("SPAN",['class','value','id'],['message_options','more_options','option_hide_more_'+ID],get_lang('show details')); 322 315 option_hide_more.onclick = function(){ 323 var _height = Element("div_message_scroll_"+ID).style.height; 316 try{ 317 var _height = Element("div_message_scroll_"+ID).style.height; 318 } 319 catch(e){ 320 return; 321 } 324 322 _height = parseInt(_height.replace("px","")); 325 323 var _offset = 35; … … 464 462 return true; 465 463 } 466 function draw_message(info_msg, ID){ 467 var content = document.getElementById('content_id_' + ID); 464 465 function draw_message_header(header,border_id){ 468 466 var defaultWidth = document.body.offsetWidth - 37; 469 467 if(Element("folderscol").style.display != 'none') 470 468 defaultWidth -= Element("folderscol").offsetWidth; 471 469 472 473 var table_message = createAndSet("TABLE",['border','width'],["0",defaultWidth]);470 var table_message = createAndSet("TABLE",['id','border','width'],['table_message_'+border_id,"0",defaultWidth]); 471 table_message.id = 'table_message_'+border_id; 474 472 var tbody_message = document.createElement("TBODY"); 475 476 if (!make_options_message(info_msg,tbody_message)) 473 if (!make_options_message(header,tbody_message)) 477 474 return; 478 475 476 table_message.appendChild(tbody_message); 477 var content = document.getElementById('content_id_' + border_id); 478 content.appendChild(table_message); 479 loading_img = content.appendChild(loading_img); 480 } 481 482 483 function draw_message(info_msg, ID){ 484 var defaultWidth = document.body.offsetWidth - 37; 485 if(Element("folderscol").style.display != 'none') 486 defaultWidth -= Element("folderscol").offsetWidth; 487 488 var table_message = Element('table_message_'+ID); 489 var tbody_message = table_message.childNodes[0]; 479 490 480 491 var tbody_message_others_options = document.createElement("TBODY"); … … 658 669 div.style.background = 'WHITE'; 659 670 div.style.height = document.body.clientHeight - offset - 125; 660 content.style.height = document.body.clientHeight - offset - 90;661 671 div.style.overflow = "auto"; 662 672 div.style.width = defaultWidth - (is_ie ? 5 : 0); … … 714 724 } 715 725 716 table_message.appendChild(tbody_message); 717 content.appendChild(table_message); 726 718 727 var msg_number = createAndSet("INPUT",['id','type','value'],["msg_number_" + ID, "hidden", info_msg.msg_number]); 728 var content = document.getElementById('content_id_' + ID); 729 loading_img = content.removeChild( loading_img ); 730 content.style.height = document.body.clientHeight - offset - 90; 719 731 content.appendChild(msg_number); 720 732 ////////////////////////////////////////////////////////////////////////////////////////////////////// -
trunk/expressoMail1_2/js/jscode/filters.js
r2673 r2714 74 74 75 75 cfilterSh.prototype.list_rules = function(){ 76 if(filter.criticalError || filter.rulest.length == 0)76 if(filter.criticalError) 77 77 return false; 78 78 else -
trunk/expressoMail1_2/js/jscode/globals.js
r2712 r2714 70 70 var wfolders; 71 71 var use_spam_filter; 72 73 var loading_img = document.createElement( 'center' ); 74 loading_img.appendChild( createAndSet("IMG",['src','style'],[URL_SERVER+'phpgwapi/templates/'+template+'/images/loading.gif','padding-top: 20px']) ); -
trunk/expressoMail1_2/js/jscode/main.js
r2656 r2714 290 290 if (typeof(msg_info) != 'object') 291 291 alert(get_lang("Error in show_msg param is not object")); 292 292 293 293 if (msg_info.status_get_msg_info == 'false') 294 294 { … … 296 296 return; 297 297 } 298 299 298 var handler_sendNotification = function(data){ 300 299 if (data) … … 303 302 write_msg(get_lang("Error in SMTP sending read confirmation.")); 304 303 }; 305 304 306 305 if(msg_info.source) 307 306 { 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 307 // Abrindo um e-mail criptografado 308 // Verifica se existe o objeto applet 309 if (!Element('cert_applet')){ 310 // se não existir, mostra mensagem de erro. 311 write_msg(get_lang('The preference "%1" isn\'t enabled.', get_lang('Enable digitally sign/cipher the message?'))); 312 } else { 313 // se existir prepara os dados para serem enviados e chama a 314 // operação na applet 315 316 expresso.connector.showProgressBar(); 317 318 // if ((msg_info.DispositionNotificationTo) && ((msg_info.Unseen == 'U') || (msg_info.Recent == 'N'))){ 319 /* var confNotification = confirm(get_lang("The sender waits your notification of reading. Do you want to confirm this?"), ""); 320 if (confNotification)*/ 321 // cExecute ("expressoMail1_2.imap_functions.send_notification¬ificationto="+msg_info.DispositionNotificationTo+"&subject="+url_encode(msg_info.subject), handler_sendNotification); 322 // } 323 324 Element('cert_applet').doButtonClickAction('decript', 325 msg_info.msg_number, 326 msg_info.source, 327 msg_info.msg_folder); // Passa os dados para a applet 328 } 330 329 return; 331 330 332 331 } 333 332 334 335 if (msg_info.status_get_msg_info == 'false')336 {337 write_msg(get_lang("Problems reading your message")+ ".");338 return;339 }340 341 333 if (msg_info.status == 'false'){ 342 eval(msg_info.command_to_exec);334 delete_border(msg_info.reuse_border); 343 335 } 344 336 else{ 345 346 337 var ID = msg_info.original_ID ? msg_info.original_ID : msg_info.msg_number; 338 var id_msg_read = ID+"_r"; 347 339 348 340 if (preferences.use_shortcuts == '1') … … 350 342 // Call function to draw message 351 343 // If needed, delete old border 352 if (openTab.type[currentTab] == 2 || openTab.type[currentTab] == 3) 353 delete_border(currentTab,'false'); 354 355 356 if(Element("border_id_" + id_msg_read)) 357 alternate_border(id_msg_read); 358 else { 359 var border_id = create_border(msg_info.subject, id_msg_read); 360 if(border_id) 344 if(currentTab) 345 { 346 draw_message(msg_info,currentTab); 347 var unseen_sort = document.getElementById('span_flag_UNSEEN').getAttribute('onclick'); 348 unseen_sort = unseen_sort.toString(); 349 if ( !(unseen_sort.indexOf("'UNSEEN' == 'UNSEEN'") < 0) ) 361 350 { 362 openTab.type[border_id] = 2; 363 draw_message(msg_info,border_id); 364 var unseen_sort = document.getElementById('span_flag_UNSEEN').getAttribute('onclick'); 365 unseen_sort = unseen_sort.toString(); 366 if ( !(unseen_sort.indexOf("'UNSEEN' == 'UNSEEN'") < 0) ) 367 { 368 var sort_type = sort_box_type; 369 sort_box_type = null; 370 sort_box('UNSEEN', sort_type); 371 } 372 } 373 else 374 return; 375 } 351 var sort_type = sort_box_type; 352 sort_box_type = null; 353 sort_box('UNSEEN', sort_type); 354 } 355 } 356 else 357 return; 376 358 377 359 var domains = ""; 378 360 if ((msg_info.DispositionNotificationTo) && (!msg_is_read(ID) || (msg_info.Recent == 'N'))) 379 { 361 { 380 362 if (preferences.notification_domains != undefined && preferences.notification_domains != "") 381 363 { 382 364 domains = preferences.notification_domains.split(','); 383 365 } 384 366 else 385 { 367 { 386 368 var confNotification = true; 387 369 } 388 370 for (var i = 0; i < domains.length; i++) 389 371 if (msg_info.DispositionNotificationTo.match(domains[i]+">")) … … 392 374 break; 393 375 } 394 if (confNotification == undefined) 395 var confNotification = confirm(get_lang("The sender:\n%1\nwaits your notification of reading. Do you want to confirm this?",msg_info.DispositionNotificationTo), ""); 396 376 if (confNotification == undefined) 377 var confNotification = confirm(get_lang("The sender:\n%1\nwaits your notification of reading. Do you want to confirm this?",msg_info.DispositionNotificationTo), ""); 397 378 if (confNotification) 398 379 cExecute ("expressoMail1_2.imap_functions.send_notification¬ificationto="+msg_info.DispositionNotificationTo+"&subject="+url_encode(msg_info.subject), handler_sendNotification); … … 401 382 if (!msg_is_read(ID)) 402 383 { 403 384 set_msg_as_read(ID, true); 404 385 if (msg_info.cacheHit || (!proxy_mensagens.is_local_folder(get_current_folder()) && msg_info.original_ID)) 405 386 { 406 387 set_message_flag(ID, "seen"); // avoid caducous (lazy) data 407 408 388 } 389 } 409 390 } 410 391 } -
trunk/expressoMail1_2/js/jscode/messages_controller.js
r2676 r2714 20 20 }; 21 21 22 messages_proxy.prototype.get_msg = function( msg_number,msg_folder,set_flag,call_back) {22 messages_proxy.prototype.get_msg = function(header,msg_folder,set_flag,call_back,deleteTab) { 23 23 if(this.is_local_folder(msg_folder)) { 24 24 if(set_flag) 25 25 // expresso_local_messages.set_messages_flag(msg_number,"seen"); 26 var data = expresso_local_messages.get_local_mail( msg_number);26 var data = expresso_local_messages.get_local_mail(header.msg_number); 27 27 28 28 eval("call_back(data)"); 29 29 }else { 30 30 expresso.connector.cacheNextRequest(); 31 cExecute("expressoMail1_2.imap_functions.get_info_msg&msg_number="+ msg_number + "&msg_folder=" + url_encode(msg_folder), call_back); 31 cExecute("expressoMail1_2.imap_functions.get_info_msg&msg_number="+ header.msg_number + "&msg_folder=" + current_folder, call_back); 32 var id_msg_read = header.msg_number+"_r"; 33 34 if (openTab.type[deleteTab] == 2) 35 delete_border(deleteTab); 36 currentTab = create_border(header.subject, id_msg_read); 37 if(currentTab) 38 { 39 openTab.type[currentTab] = 2; 40 draw_message_header(header,currentTab); 41 } 32 42 } 33 43 };
Note: See TracChangeset
for help on using the changeset viewer.