- Timestamp:
- 01/06/09 16:43:13 (15 years ago)
- Location:
- trunk/expressoMail1_2
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/inc/class.imap_functions.inc.php
r539 r569 412 412 $return['Size'] = $header->Size; 413 413 $return['reply_toaddress'] = $header->reply_toaddress; 414 $return['reuse_border'] = $params['reuse_border']; 414 415 415 416 return $return; -
trunk/expressoMail1_2/index.php
r564 r569 95 95 'auto_save_draft' => $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['auto_save_draft'] ? $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['auto_save_draft'] : "0", 96 96 'use_dynamic_contacts' => $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['use_dynamic_contacts'] ? $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['use_dynamic_contacts'] : "0", 97 'number_of_contacts' => $current_config['expressoMail_Number_of_dynamic_contacts'] ? $current_config['expressoMail_Number_of_dynamic_contacts'] : "0" 97 'number_of_contacts' => $current_config['expressoMail_Number_of_dynamic_contacts'] ? $current_config['expressoMail_Number_of_dynamic_contacts'] : "0", 98 'use_cache' => $current_config['expressoMail_enable_cache'] 99 100 98 101 99 102 ); … … 128 131 129 132 $_SESSION['phpgw_info']['server']['expressomail']['expressoMail_enable_log_messages'] = $current_config['expressoMail_enable_log_messages']; 133 130 134 // Begin Set Anti-Spam options. 131 135 $_SESSION['phpgw_info']['server']['expressomail']['expressoMail_command_for_ham'] = $current_config['expressoMail_command_for_ham']; -
trunk/expressoMail1_2/js/common_functions.js
r566 r569 111 111 remove_className(tr_message, 'selected_msg'); 112 112 add_className(tr_message, 'tr_msg_read'); 113 purgeCache(); 113 114 return true; 114 115 } … … 520 521 } 521 522 522 523 function Element(element){ 524 return document.getElementById(element); 523 function Element (el) { 524 return document.getElementById(el); 525 525 } 526 526 -
trunk/expressoMail1_2/js/connector.js
r446 r569 154 154 return null; 155 155 } 156 156 157 157 return str_data; 158 158 } … … 268 268 break; 269 269 } 270 271 270 return data; 272 271 } … … 345 344 document.getElementById("debug_controller").innerHTML += oxmlhttp.responseText; 346 345 document.getElementById("debug_controller").innerHTML += "<br>-------------------------------------------------------------------------------------<br>"; 347 } 346 } 348 347 handler(data); 348 addToCache(id,data); 349 349 delete _thisObject.requests[id]; 350 350 _thisObject.requests[id] = null; … … 475 475 var id = null; 476 476 477 var connectorCache = { 478 'valid' : [], 479 'result' : [] 480 }; 481 var acertos = 0; 482 var naoacertos = 0; 483 var expurgatedCache = new Array(); // Data to purge from cache 484 485 function queryConnectorCache(url,handler){ 486 if (connectorCache.valid[url]) 487 { 488 handler(connectorCache.result[url]); 489 return true; 490 } 491 else 492 return false; 493 } 494 function purgeCache(){ 495 var i; 496 for (i=0; i<= expurgatedCache.length; i++) 497 { 498 connectorCache.valid[expurgatedCache[i]] = false; 499 delete connectorCache.result[expurgatedCache[i]]; 500 } 501 } 502 function addToCache(id,data){ 503 if (preferences.use_cache != 'True') 504 return false; 505 var func = id.substr(id.lastIndexOf('.')+1); 506 if (func.indexOf('&') > 0) 507 func = func.substr(0,func.indexOf('&')); 508 switch (func){ 509 // functions that enters in cache 510 case 'get_preferences': 511 case 'getSharedUsersFrom': 512 case 'get_organizations': 513 case 'get_catalogs': 514 case 'get_dropdown_contacts': 515 case 'get_cc_contacts': 516 case 'get_cc_groups': 517 case 'get_info_msg': 518 case 'getUsersByEmail': 519 case 'br': 520 case 'search_for': 521 case 'quicksearch': 522 connectorCache.valid[id] = true; 523 connectorCache.result[id] = data; 524 break; 525 // function that needs expire 526 case 'get_range_msgs2': 527 case 'get_folders_list': 528 case 'search_msg': 529 connectorCache.valid[id] = true; 530 connectorCache.result[id] = data; 531 var i = expurgatedCache.length; 532 expurgatedCache[i+1] = id; 533 break; 534 //functions that expires the cache 535 case 'move_messages': 536 case 'getReturnExecuteForm': 537 case 'set_messages_flag': 538 purgeCache(); 539 default: // no cache 540 break; 541 } 542 } 543 477 544 // Function executes AJAX 478 545 // cExecute (url, handler, params) … … 490 557 return; 491 558 } 492 559 493 560 url = DEFAULT_URL + url; 494 495 if(params) 561 562 if (queryConnectorCache(url,handler)) 563 return; 564 565 if(params) 496 566 method = "POST"; 497 498 else 567 else 499 568 method = "GET"; 500 501 569 570 id = url; 502 571 connector.newRequest(id, url, method, handler, params); 503 572 } 504 505 573 574 // This function executes submit values to Controller (POST) 506 575 // The return is void. 507 576 // cExecuteForm (url, form) -
trunk/expressoMail1_2/js/draw_api.js
r470 r569 39 39 } 40 40 } 41 cExecute ("$this.imap_functions.get_folders_list &folder="+current_folder, update_tree_folders);41 cExecute ("$this.imap_functions.get_folders_list", update_tree_folders); 42 42 return; 43 43 } … … 757 757 img_next_msg.title = get_lang('Next'); 758 758 img_next_msg.style.cursor = 'pointer'; 759 img_next_msg.onclick = function () {cExecute ("$this.imap_functions.get_info_next_msg&msg_number="+ info_msg.msg_number + "&msg_folder="+ info_msg.msg_folder + "&sort_box_type="+ sort_box_type + "&search_box_type="+ search_box_type +"&sort_box_reverse="+ sort_box_reverse +"&reuse_border="+ID, show_msg)}; 759 760 // Old 761 //img_next_msg.onclick = function () {cExecute ("$this.imap_functions.get_info_next_msg&msg_number="+ info_msg.msg_number + "&msg_folder="+ info_msg.msg_folder + "&sort_box_type="+ sort_box_type + "&search_box_type="+ search_box_type +"&sort_box_reverse="+ sort_box_reverse +"&reuse_border="+ID, show_msg)}; 762 var folder = document.getElementById(ID.substr(0, ID.indexOf('_'))); 763 if (!folder) 764 delete_border(ID); 765 if (folder.nextSibling) 766 { 767 var inbox = folder.nextSibling.name; 768 if (inbox) 769 info_msg.msg_folder = inbox; 770 771 var next_msg = folder.nextSibling.id; 772 img_next_msg.onclick = function() 773 { 774 cExecute("$this.imap_functions.get_info_msg&msg_number="+next_msg+"&msg_folder=" + info_msg.msg_folder+"&reuse_border="+ID, show_msg); 775 }; 776 } 777 else 778 img_next_msg.onclick = function() 779 { 780 current_page++; 781 msg_range_end = (current_page*preferences.max_email_per_page); 782 msg_range_begin = (msg_range_end-(preferences.max_email_per_page)+1); 783 kill_current_box(); 784 cExecute ('$this.imap_functions.get_range_msgs2&folder='+get_current_folder()+'&msg_range_begin='+msg_range_begin+'&msg_range_end='+msg_range_end+'&sort_box_reverse=1', function handler(data){draw_box(data, get_current_folder());}) 785 delete_border(ID); 786 }; 787 760 788 var img_space = document.createElement("SPAN"); 761 789 img_space.innerHTML = " "; … … 765 793 img_previous_msg.title = get_lang('Previous'); 766 794 img_previous_msg.style.cursor = 'pointer'; 767 img_previous_msg.onclick = function () {cExecute ("$this.imap_functions.get_info_previous_msg&msgs_number="+ info_msg.msg_number + "&folder="+ info_msg.msg_folder + "&sort_box_type="+ sort_box_type+ "&search_box_type="+ search_box_type + "&sort_box_reverse="+ sort_box_reverse +"&reuse_border="+ID, show_msg)} 795 796 //Old 797 //img_previous_msg.onclick = function () {cExecute ("$this.imap_functions.get_info_previous_msg&msgs_number="+ info_msg.msg_number + "&folder="+ info_msg.msg_folder + "&sort_box_type="+ sort_box_type+ "&search_box_type="+ search_box_type + "&sort_box_reverse="+ sort_box_reverse +"&reuse_border="+ID, show_msg)} 798 folder = document.getElementById(ID.substr(0, ID.indexOf('_'))); 799 if (!folder) 800 delete_border(ID); 801 if (folder.previousSibling) 802 { 803 var inbox = folder.previousSibling.name; 804 if (inbox) 805 info_msg.msg_folder = inbox; 806 807 var previous_msg = folder.previousSibling.id; 808 img_previous_msg.onclick = function() 809 { 810 cExecute("$this.imap_functions.get_info_msg&msg_number="+previous_msg+"&msg_folder=" + info_msg.msg_folder+"&reuse_border="+ID, show_msg); 811 }; 812 } 813 else 814 img_previous_msg.onclick = function() 815 { 816 delete_border(ID); 817 }; 818 768 819 next_previous_msg_td.appendChild(img_previous_msg); 769 820 next_previous_msg_td.appendChild(img_space); -
trunk/expressoMail1_2/js/main.js
r565 r569 118 118 119 119 //Change msg class to read. 120 set_msg_as_read(msg_info['msg_number'], true); 120 if (msg_info.Unseen == 'U') 121 set_msg_as_read(msg_info['msg_number'], true); 121 122 122 123 if ((msg_info.DispositionNotificationTo) && ((msg_info.Unseen == 'U') || (msg_info.Recent == 'N'))){ … … 162 163 update_quota(get_current_folder()); 163 164 } 165 if(data.new_msgs > 0 || data.msgs_to_delete.length > 0) 166 purgeCache(); 164 167 } 165 168 update_menu(); … … 271 274 write_msg(get_lang("The messages were moved to folder ") + lang_folder(data.new_folder_name)); 272 275 } 273 276 274 277 selected_messages = selected_messages.split(","); 275 278 for (i = 0; i < selected_messages.length; i++){ … … 280 283 281 284 if (selected_messages){ 285 var selected_param = ""; 286 if (selected_messages.indexOf(',') != -1) 287 { 288 selected_msg_array = selected_messages.split(","); 289 for (i = 0; i < selected_msg_array.length; i++){ 290 var tr = Element(selected_msg_array[i]); 291 selected_param += ','+tr.name+';'+tr.id; 292 } 293 } 294 else 295 { 296 var tr=Element(selected_messages); 297 selected_param=tr.name+';'+tr.id; 298 } 282 299 var params = ""; 283 300 if (!new_folder && parseInt(preferences.save_deleted_msg)){ … … 286 303 params = "&delete=true"; 287 304 } 288 params += "&selected_messages="+url_encode(selected_messages); 305 306 params += "&selected_messages="+url_encode(selected_param); 289 307 if(new_folder) { 290 308 params += "&new_folder="+url_encode(new_folder); … … 406 424 for (j; j<(main_list.length); j++) 407 425 { 408 if (main_list[j].id.indexOf(';') == -1) 409 { 410 check_box = Element("check_box_message_"+main_list[j].id); 411 if ( (check_box) && (check_box.checked) ) 412 selected_messages += main_list[j].id + ','; 413 } 414 else 415 { // Message from search tab 416 check_box = Element("check_box_message_"+main_list[j].id.substr(main_list[j].id.indexOf(';')+1)); 417 if ( (check_box) && (check_box.checked) ) 418 selected_messages += main_list[j].id.substr(main_list[j].id.indexOf(';')+1) + ','; 419 } 426 check_box = Element("check_box_message_"+main_list[j].id); 427 if ( (check_box) && (check_box.checked) ) 428 selected_messages += main_list[j].id + ','; 420 429 421 430 if (preferences.use_shortcuts == '1') -
trunk/expressoMail1_2/js/search.js
r372 r569 301 301 var mailbox = aux[0]; 302 302 var uid_msg = aux[5]; 303 tr.id = mailbox + ";" + uid_msg; 303 tr.id = uid_msg; 304 tr.name = mailbox; 304 305 var td = document.createElement("TD"); 305 306 … … 308 309 td.style.width = "1%"; 309 310 var subject_encode = url_encode(aux[2]); 310 var td1 = '<input type="checkbox" id="check_box_message_'+ tr.id.substr(tr.id.indexOf(';')+1)+'"></input>';311 var td1 = '<input type="checkbox" id="check_box_message_'+uid_msg+'"></input>'; 311 312 } 312 313 if( j == 1){ … … 350 351 } 351 352 } 352 aux.splice(0,(aux.length)); 353 aux.splice(0,(aux.length)); 353 354 354 355 subject = tr.firstChild; -
trunk/expressoMail1_2/templates/default/config.tpl
r413 r569 21 21 </select> path: /home/expresso/mail_senders.log 22 22 </td> 23 </tr> 24 <tr bgcolor="{row_on}"> 25 <td>{lang_Do_you_want_to_cache_php_requests_in_javascript?}</td> 26 <td> 27 <select name="newsettings[expressoMail_enable_cache]"> 28 <option value=""{selected_expressoMail_enable_cache_False}>{lang_No}</option> 29 <option value="True"{selected_expressoMail_enable_cache_True}>{lang_Yes}</option> 30 </select> 31 </td> 23 32 </tr> 24 33 <tr bgcolor="{row_off}">
Note: See TracChangeset
for help on using the changeset viewer.