[2551] | 1 | |
---|
| 2 | |
---|
| 3 | var lastPage = 1; |
---|
| 4 | var numPages = 5; |
---|
| 5 | var last_folder = 'INBOX'; |
---|
| 6 | |
---|
| 7 | function draw_quota(data){ |
---|
[2676] | 8 | build_quota(data); |
---|
[2551] | 9 | } |
---|
| 10 | |
---|
| 11 | function update_quota(folder_id){ |
---|
[2676] | 12 | cExecute ("expressoMail1_2.imap_functions.get_quota&folder_id="+folder_id,build_quota); |
---|
[2551] | 13 | } |
---|
| 14 | |
---|
| 15 | function draw_search(headers_msgs){ |
---|
[2676] | 16 | Element("border_id_0").innerHTML = " " + get_lang('Search Result') + " "; |
---|
[2551] | 17 | |
---|
[2676] | 18 | var tbody = Element('tbody_box'); |
---|
| 19 | for (var i=0; i<(headers_msgs.length); i++){ |
---|
| 20 | var tr = this.make_tr_message(headers_msgs[i], headers_msgs[i].msg_folder); |
---|
| 21 | if (tr) |
---|
| 22 | tbody.appendChild(tr); |
---|
| 23 | } |
---|
[2551] | 24 | } |
---|
| 25 | |
---|
| 26 | function draw_search_header_box(){ |
---|
[2676] | 27 | var table_message_header_box = Element("table_message_header_box"); |
---|
| 28 | table_message_header_box.parentNode.removeChild(table_message_header_box); |
---|
[2551] | 29 | |
---|
[2676] | 30 | var content_id_0 = Element("content_id_0"); |
---|
| 31 | var table_element = document.createElement("TABLE"); |
---|
| 32 | var tbody_element = document.createElement("TBODY"); |
---|
| 33 | table_element.setAttribute("id", "table_message_header_box"); |
---|
| 34 | table_element.className = "table_message_header_box"; |
---|
| 35 | tr_element = document.createElement("TR"); |
---|
| 36 | tr_element.className = "message_header"; |
---|
| 37 | td_element1 = document.createElement("TD"); |
---|
| 38 | td_element1.setAttribute("width", "1%"); |
---|
| 39 | chk_box_element = document.createElement("INPUT"); |
---|
| 40 | chk_box_element.id = "chk_box_select_all_messages"; |
---|
| 41 | chk_box_element.setAttribute("type", "checkbox"); |
---|
| 42 | chk_box_element.className = "checkbox"; |
---|
| 43 | chk_box_element.onclick = function(){ |
---|
| 44 | select_all_messages(this.checked); |
---|
| 45 | }; |
---|
| 46 | chk_box_element.onmouseover = function () { |
---|
| 47 | this.title=get_lang('Select all messages.') |
---|
[2551] | 48 | }; |
---|
[2676] | 49 | chk_box_element.onkeydown = function (e){ |
---|
| 50 | if (is_ie) |
---|
| 51 | { |
---|
| 52 | if ((window.event.keyCode) == 46) |
---|
| 53 | { |
---|
| 54 | //delete_all_selected_msgs_imap(); |
---|
| 55 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 56 | } |
---|
| 57 | } |
---|
| 58 | else |
---|
| 59 | { |
---|
| 60 | if ((e.keyCode) == 46) |
---|
| 61 | { |
---|
| 62 | //delete_all_selected_msgs_imap(); |
---|
| 63 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 64 | } |
---|
| 65 | } |
---|
| 66 | }; |
---|
[2551] | 67 | |
---|
[2676] | 68 | td_element1.appendChild(chk_box_element); |
---|
| 69 | td_element2 = document.createElement("TD"); |
---|
| 70 | td_element2.setAttribute("width", "3%"); |
---|
| 71 | td_element3 = document.createElement("TD"); |
---|
| 72 | td_element3.setAttribute("width", "30%"); |
---|
| 73 | td_element3.id = "message_header_SORTFROM"; |
---|
| 74 | td_element3.align = "left"; |
---|
| 75 | td_element3.innerHTML = get_lang("From"); |
---|
| 76 | td_element4 = document.createElement("TD"); |
---|
| 77 | td_element4.setAttribute("width", "49%"); |
---|
| 78 | td_element4.id = "message_header_SORTSUBJECT"; |
---|
| 79 | td_element4.align = "left"; |
---|
| 80 | td_element4.innerHTML = get_lang("Subject"); |
---|
| 81 | td_element5 = document.createElement("TD"); |
---|
| 82 | td_element5.setAttribute("width", "10%"); |
---|
| 83 | td_element5.id = "message_header_SORTARRIVAL"; |
---|
| 84 | td_element5.align = "center"; |
---|
| 85 | td_element5.innerHTML = "<B>"+get_lang("Date")+"</B>"; |
---|
| 86 | td_element5.innerHTML += '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/arrow_descendant.gif">'; |
---|
| 87 | td_element6 = document.createElement("TD"); |
---|
| 88 | td_element6.setAttribute("width", "10%"); |
---|
| 89 | td_element6.id = "message_header_SORTSIZE"; |
---|
| 90 | td_element6.align = "right"; |
---|
| 91 | td_element6.innerHTML = get_lang("Size"); |
---|
| 92 | tr_element.appendChild(td_element1); |
---|
| 93 | tr_element.appendChild(td_element2); |
---|
| 94 | tr_element.appendChild(td_element3); |
---|
| 95 | tr_element.appendChild(td_element4); |
---|
| 96 | tr_element.appendChild(td_element5); |
---|
| 97 | tr_element.appendChild(td_element6); |
---|
[2551] | 98 | |
---|
[2676] | 99 | tbody_element.appendChild(tr_element); |
---|
| 100 | table_element.appendChild(tbody_element); |
---|
| 101 | content_id_0.appendChild(table_element); |
---|
[2551] | 102 | } |
---|
| 103 | |
---|
| 104 | function draw_search_division(msg){ |
---|
[2676] | 105 | var tbody = Element('tbody_box'); |
---|
| 106 | var tr = document.createElement("TR"); |
---|
| 107 | var td = document.createElement("TD"); |
---|
| 108 | td.colSpan = '7'; |
---|
| 109 | td.width = '100%'; |
---|
[2551] | 110 | |
---|
[2676] | 111 | var action_info_table = document.createElement("TABLE"); |
---|
| 112 | var action_info_tbody = document.createElement("TBODY"); |
---|
[2551] | 113 | |
---|
[2676] | 114 | action_info_table.className = "action_info_table"; |
---|
| 115 | action_info_table.width = "100%"; |
---|
[2551] | 116 | |
---|
[2676] | 117 | var action_info_tr = document.createElement("TR"); |
---|
[2551] | 118 | |
---|
[2676] | 119 | var action_info_th1 = document.createElement("TH"); |
---|
| 120 | action_info_th1.width = "40%"; |
---|
| 121 | action_info_th1.innerHTML = " "; |
---|
[2551] | 122 | |
---|
[2676] | 123 | var action_info_th2 = document.createElement("TH"); |
---|
[2551] | 124 | |
---|
[2676] | 125 | action_info_th2.innerHTML = msg; |
---|
| 126 | action_info_th2.className = "action_info_th"; |
---|
| 127 | action_info_th2.setAttribute("noWrap", "true"); |
---|
[2551] | 128 | |
---|
[2676] | 129 | var action_info_th3 = document.createElement("TH"); |
---|
| 130 | action_info_th3.width = "40%"; |
---|
| 131 | action_info_th3.innerHTML = " "; |
---|
[2551] | 132 | |
---|
[2676] | 133 | action_info_tr.appendChild(action_info_th1); |
---|
| 134 | action_info_tr.appendChild(action_info_th2); |
---|
| 135 | action_info_tr.appendChild(action_info_th3); |
---|
| 136 | action_info_tbody.appendChild(action_info_tr); |
---|
| 137 | action_info_table.appendChild(action_info_tbody); |
---|
[2551] | 138 | |
---|
[2676] | 139 | td.appendChild(action_info_table); |
---|
| 140 | tr.appendChild(td); |
---|
| 141 | tbody.appendChild(tr); |
---|
[2551] | 142 | } |
---|
| 143 | |
---|
| 144 | function draw_search_box(){ |
---|
[2676] | 145 | var content_id_0 = Element("content_id_0"); |
---|
| 146 | var table = document.createElement("TABLE"); |
---|
| 147 | table.id = "table_box"; |
---|
| 148 | table.width = 'auto'; |
---|
| 149 | var tbody = document.createElement("TBODY"); |
---|
| 150 | tbody.id = "tbody_box"; |
---|
[2551] | 151 | |
---|
[2676] | 152 | table.className = "table_box"; |
---|
| 153 | table.setAttribute("frame", "below"); |
---|
| 154 | table.setAttribute("rules", "none"); |
---|
| 155 | table.setAttribute("cellpadding", "0"); |
---|
| 156 | table.onkeydown = function (e){ |
---|
[2551] | 157 | if (is_ie) |
---|
[2676] | 158 | { |
---|
| 159 | if ((window.event.keyCode) == 46) |
---|
| 160 | { |
---|
| 161 | //delete_all_selected_msgs_imap(); |
---|
| 162 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 163 | } |
---|
| 164 | } |
---|
| 165 | else |
---|
| 166 | { |
---|
| 167 | if ((e.keyCode) == 46) |
---|
| 168 | { |
---|
| 169 | //delete_all_selected_msgs_imap(); |
---|
| 170 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 171 | } |
---|
| 172 | } |
---|
| 173 | }; |
---|
| 174 | if (is_ie) |
---|
| 175 | table.style.cursor = "hand"; |
---|
[2551] | 176 | |
---|
[2676] | 177 | table.appendChild(tbody); |
---|
| 178 | content_id_0.appendChild(table); |
---|
[2551] | 179 | } |
---|
| 180 | var idx_cc = 0; |
---|
| 181 | function draw_plugin_cc(ID, addrs) |
---|
| 182 | { |
---|
[2676] | 183 | expresso.connector.loadScript("jscode/ccQuickAdd"); |
---|
[2551] | 184 | |
---|
[2676] | 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 | } |
---|
[2551] | 196 | |
---|
[2676] | 197 | var _split = array_name[0].split('@'); |
---|
| 198 | cc_data[0] = _split[0]; |
---|
| 199 | cc_data[1] = _split[0]; |
---|
| 200 | cc_data[2] = ''; |
---|
[2551] | 201 | |
---|
[2676] | 202 | for (i=1; i < array_name.length; i++) |
---|
| 203 | cc_data[2] += array_name[i] + " "; |
---|
[2551] | 204 | |
---|
| 205 | |
---|
[2676] | 206 | if(array_addrs.length > 1) |
---|
| 207 | cc_data[3] = array_addrs[1] ? array_addrs[1].replace("<",'').replace(">",'') : ''; |
---|
| 208 | else |
---|
| 209 | cc_data[3] = array_addrs[0]; |
---|
[2551] | 210 | |
---|
[2676] | 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; |
---|
[2551] | 219 | } |
---|
| 220 | |
---|
| 221 | function build_quota(data){ |
---|
[2676] | 222 | id = "content_quota"; |
---|
| 223 | q_limit = data['quota_limit']; |
---|
| 224 | var div = document.getElementById(id); |
---|
| 225 | if(!q_limit){ |
---|
| 226 | div.innerHTML = '<span><font size="2" style="color:red"><strong>'+get_lang("Without Quota")+'</strong></font></span>'; |
---|
| 227 | } |
---|
| 228 | else{ |
---|
| 229 | if(div) |
---|
| 230 | { |
---|
| 231 | div.innerHTML = ''; |
---|
| 232 | value = data['quota_percent']; |
---|
| 233 | q_used = data['quota_used']; |
---|
| 234 | table = document.getElementById("table_quota"); |
---|
| 235 | if(table) |
---|
| 236 | table.parentNode.removeChild(table); |
---|
| 237 | table = document.createElement("TABLE"); |
---|
| 238 | tbody = document.createElement("TBODY"); |
---|
| 239 | table.appendChild(tbody); |
---|
| 240 | table.id = "table_quota"; |
---|
| 241 | table.width="102"; |
---|
| 242 | table.border="0"; |
---|
| 243 | table.cellSpacing = 0; |
---|
| 244 | table.cellPadding = 0; |
---|
[2551] | 245 | |
---|
[2676] | 246 | //tr1 = document.createElement("TR"); |
---|
| 247 | td11 = document.createElement("TD"); |
---|
| 248 | td11.align="center"; |
---|
| 249 | td11.setAttribute("noWrap","true"); |
---|
| 250 | td11.innerHTML += ' <span class="boxHeaderText">' + value+"% ("+q_used+"M/"+q_limit+"M)</span>"; |
---|
| 251 | //tr1.appendChild(td11); |
---|
[2551] | 252 | |
---|
[2676] | 253 | tr2 = document.createElement("TR"); |
---|
| 254 | td21 = document.createElement("TD"); |
---|
| 255 | td21.setAttribute("noWrap","true"); |
---|
| 256 | td21.height="15"; |
---|
| 257 | td22 = document.createElement("TD"); |
---|
| 258 | td21.setAttribute("background", URL_SERVER + 'phpgwapi/templates/' + template + '/images/dsunused.gif'); |
---|
| 259 | table221 = document.createElement("TABLE"); |
---|
| 260 | tbody221 = document.createElement("TBODY"); |
---|
| 261 | table221.appendChild(tbody221); |
---|
| 262 | table221.style.width=value+"%"; |
---|
| 263 | td21.width="102"; |
---|
| 264 | table221.border="0"; |
---|
| 265 | table221.cellSpacing = 0; |
---|
| 266 | table221.cellPadding = 0; |
---|
| 267 | tr221 = document.createElement("TR"); |
---|
| 268 | td221 = document.createElement("TD"); |
---|
| 269 | td221.height="15"; |
---|
| 270 | if(value > 90) { |
---|
| 271 | if(value >= 100) |
---|
| 272 | write_msg(get_lang("Your Mailbox is 100% full! You must free more space or will not receive messages.")); |
---|
| 273 | else |
---|
| 274 | write_msg(get_lang("Warning: Your Mailbox is almost full!")); |
---|
| 275 | td221.setAttribute("background","templates/"+template+"/images/dsalert.gif"); |
---|
| 276 | } |
---|
| 277 | else if(value > 80) |
---|
| 278 | td221.setAttribute("background", URL_SERVER + 'expressoMail1_2/templates/' + template + '/images/dswarn.gif'); |
---|
| 279 | else |
---|
| 280 | td221.className = 'dsused'; |
---|
[2551] | 281 | |
---|
[2676] | 282 | tr221.appendChild(td221); |
---|
| 283 | tbody221.appendChild(tr221); |
---|
| 284 | td21.appendChild(table221); |
---|
| 285 | tr2.appendChild(td21); |
---|
| 286 | tr2.appendChild(td11); |
---|
[2551] | 287 | |
---|
[2676] | 288 | //tr2.appendChild(td1); |
---|
[2551] | 289 | |
---|
[2676] | 290 | tbody.appendChild(tr2); //Desenho |
---|
| 291 | //tbody.appendChild(tr1); //Letras |
---|
| 292 | div.appendChild(table); |
---|
[2551] | 293 | } |
---|
[2676] | 294 | } |
---|
[2551] | 295 | } |
---|
| 296 | |
---|
| 297 | function draw_paging(num_msgs){ |
---|
[2676] | 298 | num_msgs = parseInt(num_msgs); |
---|
| 299 | total_pages = 1; |
---|
[2551] | 300 | |
---|
[2676] | 301 | if(last_folder != current_folder){ |
---|
| 302 | lastPage = 1; |
---|
| 303 | current_page = 1; |
---|
| 304 | last_folder = current_folder; |
---|
| 305 | } |
---|
[2551] | 306 | |
---|
[2676] | 307 | if(num_msgs > parseInt(preferences.max_email_per_page)) { |
---|
| 308 | total_pages = parseInt(num_msgs/preferences.max_email_per_page); |
---|
| 309 | if((num_msgs/preferences.max_email_per_page) > total_pages) |
---|
| 310 | total_pages++; |
---|
| 311 | } |
---|
[2551] | 312 | |
---|
[2676] | 313 | if(total_pages == 1) { |
---|
| 314 | if(span_paging = document.getElementById("span_paging")) { |
---|
| 315 | span_paging.parentNode.removeChild(span_paging); |
---|
[2551] | 316 | } |
---|
[2676] | 317 | return; |
---|
| 318 | } |
---|
[2551] | 319 | |
---|
[2676] | 320 | span_paging = document.getElementById("span_paging"); |
---|
| 321 | if(!span_paging){ |
---|
| 322 | span_paging = document.createElement("DIV"); |
---|
| 323 | span_paging.id = "span_paging"; |
---|
| 324 | span_paging.className = "boxHeaderText"; |
---|
| 325 | span_paging.align="right"; |
---|
| 326 | var div_menu_c3 = document.getElementById("div_menu_c3"); |
---|
| 327 | if ( div_menu_c3 ) |
---|
| 328 | div_menu_c3.appendChild(span_paging); |
---|
| 329 | } |
---|
| 330 | span_paging.style.width="100%"; |
---|
| 331 | span_paging.innerHTML=""; |
---|
| 332 | msg_range_begin = 1; |
---|
| 333 | msg_range_end = preferences.max_email_per_page; |
---|
| 334 | if(current_page != 1) { |
---|
| 335 | lnk_page = document.createElement("A"); |
---|
| 336 | lnk_page.setAttribute("href", "javascript:current_page=1;kill_current_box(); draw_paging("+num_msgs+"); proxy_mensagens.messages_list(get_current_folder(),"+msg_range_begin+","+msg_range_end+",'"+sort_box_type+"','"+search_box_type+"',"+sort_box_reverse+","+preferences.preview_msg_subject+","+preferences.preview_msg_tip+",function handler(data){draw_box(data, get_current_folder());});"); |
---|
| 337 | } |
---|
| 338 | else { |
---|
| 339 | lnk_page = document.createElement("SPAN"); |
---|
| 340 | } |
---|
| 341 | span_paging.appendChild(lnk_page); |
---|
[2551] | 342 | |
---|
[2676] | 343 | lnk_page.innerHTML = "<<"; |
---|
| 344 | lnk_page.title = get_lang("First"); |
---|
| 345 | span_paging.innerHTML += " "; |
---|
[2551] | 346 | |
---|
[2676] | 347 | if(current_page == lastPage + numPages) |
---|
| 348 | lastPage = current_page - 1; |
---|
| 349 | else if((lastPage != 1 && lastPage == current_page) || current_page == total_pages) |
---|
| 350 | lastPage = current_page - (numPages - 1); |
---|
| 351 | else if(current_page == 1) |
---|
| 352 | lastPage = 1; |
---|
[2551] | 353 | |
---|
[2676] | 354 | if(lastPage < 1) |
---|
| 355 | lastPage = 1; |
---|
| 356 | else if(lastPage > 1 && (lastPage > (total_pages -(numPages - 1)))) |
---|
| 357 | lastPage = total_pages -(numPages - 1); |
---|
[2551] | 358 | |
---|
[2676] | 359 | var hasMarked = false; |
---|
[2551] | 360 | |
---|
[2676] | 361 | for(i = lastPage; i <= total_pages; i++) { |
---|
[2551] | 362 | |
---|
[2676] | 363 | if(current_page == i || (i == total_pages && !hasMarked)) { |
---|
| 364 | lnk_page = document.createElement("SPAN"); |
---|
| 365 | span_paging.appendChild(lnk_page); |
---|
| 366 | lnk_page.innerHTML = " <b>"+i+"</b> "; |
---|
| 367 | hasMarked = true; |
---|
| 368 | continue; |
---|
| 369 | } |
---|
| 370 | else{ |
---|
| 371 | lnk_page = document.createElement("A"); |
---|
| 372 | span_paging.appendChild(lnk_page); |
---|
| 373 | msg_range_begin = ((i*preferences.max_email_per_page)-(preferences.max_email_per_page-1)); |
---|
| 374 | msg_range_end = (i*preferences.max_email_per_page); |
---|
| 375 | lnk_page.setAttribute("href", "javascript:current_page="+i+";kill_current_box(); draw_paging("+num_msgs+"); proxy_mensagens.messages_list(get_current_folder(),"+msg_range_begin+","+msg_range_end+",'"+sort_box_type+"','"+search_box_type+"',"+sort_box_reverse+","+preferences.preview_msg_subject+","+preferences.preview_msg_tip+",function handler(data){draw_box(data, get_current_folder());});"); |
---|
| 376 | } |
---|
[2551] | 377 | |
---|
[2676] | 378 | lnk_page.innerHTML = " ... "; |
---|
[2551] | 379 | |
---|
[2676] | 380 | if(i == (lastPage + numPages)) |
---|
| 381 | break; |
---|
| 382 | else if(lastPage == 1 || i != lastPage) |
---|
| 383 | lnk_page.innerHTML = " "+i+" "; |
---|
[2551] | 384 | |
---|
| 385 | span_paging.innerHTML += " "; |
---|
[2676] | 386 | } |
---|
[2551] | 387 | |
---|
[2676] | 388 | if(current_page != total_pages) { |
---|
| 389 | lnk_page = document.createElement("A"); |
---|
| 390 | msg_range_begin = ((total_pages*preferences.max_email_per_page)-(preferences.max_email_per_page-1)); |
---|
| 391 | msg_range_end = (total_pages*preferences.max_email_per_page); |
---|
| 392 | lnk_page.setAttribute("href", "javascript:current_page="+total_pages+";kill_current_box(); draw_paging("+num_msgs+"); proxy_mensagens.messages_list(get_current_folder(),"+msg_range_begin+","+msg_range_end+",'"+sort_box_type+"','"+search_box_type+"',"+sort_box_reverse+","+preferences.preview_msg_subject+","+preferences.preview_msg_tip+",function handler(data){draw_box(data, get_current_folder());});"); |
---|
| 393 | } |
---|
| 394 | else { |
---|
| 395 | lnk_page = document.createElement("SPAN"); |
---|
| 396 | } |
---|
| 397 | span_paging.innerHTML += " "; |
---|
| 398 | span_paging.appendChild(lnk_page); |
---|
| 399 | |
---|
| 400 | lnk_page.title = get_lang("Last"); |
---|
| 401 | lnk_page.innerHTML = ">>"; |
---|
[2551] | 402 | } |
---|
| 403 | |
---|
| 404 | |
---|
| 405 | function draw_tree_local_folders() { |
---|
[2676] | 406 | /** |
---|
[2551] | 407 | * Pastas locais |
---|
| 408 | */ |
---|
[2676] | 409 | if(preferences.use_local_messages==1 || expresso_offline) { |
---|
| 410 | var local_folders = expresso_local_messages.list_local_folders(); |
---|
| 411 | var has_changes = false; |
---|
| 412 | for (var i in local_folders) { //Coloca as pastas locais. |
---|
| 413 | if(!isNaN(i)){ |
---|
| 414 | var new_caption = local_folders[i][0]; |
---|
| 415 | if(local_folders[i][0].indexOf("/")!="-1") { |
---|
| 416 | final_pos = local_folders[i][0].lastIndexOf("/"); |
---|
| 417 | new_caption = local_folders[i][0].substr(final_pos+1); |
---|
| 418 | } |
---|
[2551] | 419 | |
---|
[2676] | 420 | var folder_unseen = Element('dftree_local_'+local_folders[i][0]+'_unseen'); |
---|
[2551] | 421 | |
---|
[2676] | 422 | if ((folder_unseen) && (local_folders[i][1] > 0)) |
---|
| 423 | { |
---|
| 424 | folder_unseen.innerHTML = local_folders[i][1]; |
---|
| 425 | has_changes = true; |
---|
| 426 | } |
---|
| 427 | else if (local_folders[i][1] > 0) |
---|
| 428 | { |
---|
| 429 | tree_folders.getNodeById("local_"+local_folders[i][0]).alter({ |
---|
| 430 | caption:lang_folder(new_caption) + '<font style=color:red> (</font><span id="dftree_local_'+local_folders[i][0]+'_unseen" style=color:red>'+local_folders[i][1]+'</span><font style=color:red>)</font>' |
---|
| 431 | }); |
---|
| 432 | tree_folders.getNodeById("local_"+local_folders[i][0])._refresh(); |
---|
| 433 | has_changes = true; |
---|
| 434 | } |
---|
| 435 | else if (local_folders[i][1] <= 0) |
---|
| 436 | { |
---|
| 437 | tree_folders.getNodeById("local_"+local_folders[i][0]).alter({ |
---|
| 438 | caption:lang_folder(new_caption) |
---|
| 439 | }); |
---|
| 440 | tree_folders.getNodeById("local_"+local_folders[i][0])._refresh(); |
---|
| 441 | has_changes = true; |
---|
| 442 | } |
---|
[2551] | 443 | |
---|
[2676] | 444 | if("local_"+local_folders[i][0] == get_current_folder()){ |
---|
| 445 | var old_new_m = isNaN(parseInt(Element('new_m').innerHTML)) ? parseInt(Element('new_m').firstChild.innerHTML) : parseInt(Element('new_m').innerHTML); |
---|
| 446 | if(!isNaN(old_new_m) && old_new_m < local_folders[i][1]){ |
---|
| 447 | Element('tot_m').innerHTML = parseInt(Element('tot_m').innerHTML) + (parseInt(local_folders[i][1])-old_new_m); |
---|
| 448 | } |
---|
| 449 | Element('new_m').innerHTML = local_folders[i][1] ? '<font color="RED">'+local_folders[i][1]+'</font>' : 0; |
---|
| 450 | draw_paging(Element('tot_m').innerHTML); |
---|
| 451 | has_changes = true; |
---|
[2551] | 452 | } |
---|
[2676] | 453 | } |
---|
| 454 | } |
---|
| 455 | if(has_changes) |
---|
| 456 | tree_folders.getNodeById("local_root").open(); |
---|
[2551] | 457 | |
---|
[2676] | 458 | } |
---|
[2551] | 459 | } |
---|
| 460 | |
---|
| 461 | function draw_tree_folders(folders){ |
---|
[2676] | 462 | // Check if the tree folders alredy exist. |
---|
| 463 | translatedFolders = new Map(); |
---|
| 464 | if (Element('dftree_tree_folders')){ |
---|
| 465 | if (!expresso_offline) { |
---|
| 466 | var update_tree_folders = function(data){ |
---|
| 467 | build_quota(data); |
---|
| 468 | var unseen_in_mailbox = 0; |
---|
| 469 | var unseen_in_shared_folders = 0; |
---|
| 470 | for (var i=0; i<data.length; i++){ |
---|
| 471 | if ( data[i].folder_unseen > 0 ) |
---|
| 472 | { |
---|
| 473 | unseen_in_mailbox = parseInt( unseen_in_mailbox + data[ i ].folder_unseen ); |
---|
| 474 | if ( data[i].folder_id.indexOf( 'INBOX' ) !== 0 ) |
---|
| 475 | unseen_in_shared_folders = parseInt( unseen_in_shared_folders + data[ i ].folder_unseen ); |
---|
| 476 | } |
---|
[2551] | 477 | |
---|
[2676] | 478 | var folder_unseen = Element('dftree_'+data[i].folder_id+'_unseen'); |
---|
[2551] | 479 | |
---|
[2676] | 480 | if ((folder_unseen) && (data[i].folder_unseen > 0)) |
---|
| 481 | { |
---|
| 482 | folder_unseen.innerHTML = data[i].folder_unseen; |
---|
| 483 | } |
---|
| 484 | else if (data[i].folder_unseen > 0) |
---|
| 485 | { |
---|
| 486 | tree_folders.getNodeById(data[i].folder_id).alter({ |
---|
| 487 | caption:lang_folder(data[i].folder_name) + '<font style=color:red> (</font><span id="dftree_'+data[i].folder_id+'_unseen" style=color:red>'+data[i].folder_unseen+'</span><font style=color:red>)</font>' |
---|
| 488 | }); |
---|
| 489 | tree_folders.getNodeById(data[i].folder_id)._refresh(); |
---|
| 490 | } |
---|
| 491 | else if (data[i].folder_unseen <= 0) |
---|
| 492 | { |
---|
| 493 | tree_folders.getNodeById(data[i].folder_id).alter({ |
---|
| 494 | caption:lang_folder(data[i].folder_name) |
---|
| 495 | }); |
---|
| 496 | tree_folders.getNodeById(data[i].folder_id)._refresh(); |
---|
| 497 | } |
---|
[2551] | 498 | |
---|
[2676] | 499 | if(data[i].folder_id == current_folder){ |
---|
| 500 | var old_new_m = isNaN(parseInt(Element('new_m').innerHTML)) ? parseInt(Element('new_m').firstChild.innerHTML) : parseInt(Element('new_m').innerHTML); |
---|
| 501 | // if(!isNaN(old_new_m) && old_new_m < data[i].folder_unseen){ |
---|
| 502 | // Element('tot_m').innerHTML = parseInt(Element('tot_m').innerHTML) + (parseInt(data[i].folder_unseen)-old_new_m); |
---|
| 503 | // } |
---|
| 504 | Element('new_m').innerHTML = data[i].folder_unseen ? '<font color="RED">'+data[i].folder_unseen+'</font>' : 0; |
---|
| 505 | draw_paging(Element('tot_m').innerHTML); |
---|
| 506 | } |
---|
| 507 | } |
---|
[2551] | 508 | |
---|
[2676] | 509 | var display_unseen_in_mailbox = tree_folders.getNodeById( 'root' ); |
---|
| 510 | //if ( unseen_in_mailbox ) |
---|
| 511 | // display_unseen_in_mailbox.alter({caption:'<font style=color:red>[</font><span id="dftree_root_unseen" style="color:red">' + unseen_in_mailbox +'</span><font style=color:red>]</font> ' + get_lang("My Folders")}); |
---|
| 512 | //else |
---|
| 513 | display_unseen_in_mailbox.alter({ |
---|
| 514 | caption:get_lang("My Folders") |
---|
| 515 | }); |
---|
| 516 | display_unseen_in_mailbox._refresh(); |
---|
[2551] | 517 | |
---|
[2676] | 518 | var display_unseen_in_shared_folders = tree_folders.getNodeById( 'user' ); |
---|
| 519 | if ( display_unseen_in_shared_folders ) |
---|
| 520 | { |
---|
| 521 | if ( unseen_in_shared_folders ) |
---|
| 522 | display_unseen_in_shared_folders.alter({ |
---|
| 523 | caption:'<font style=color:red>[</font><span id="dftree_user_unseen" style="color:red">' + unseen_in_shared_folders +'</span><font style=color:red>]</font> ' + get_lang("Shared folders") |
---|
| 524 | }); |
---|
| 525 | else |
---|
| 526 | display_unseen_in_shared_folders.alter({ |
---|
| 527 | caption:get_lang("Shared folders") |
---|
| 528 | }); |
---|
| 529 | display_unseen_in_shared_folders._refresh(); |
---|
[2551] | 530 | } |
---|
[2676] | 531 | }; |
---|
| 532 | expresso.connector.cacheNextRequest(1); |
---|
| 533 | cExecute ("expressoMail1_2.imap_functions.get_folders_list&folder=INBOX", update_tree_folders); |
---|
[2551] | 534 | } |
---|
| 535 | |
---|
[2676] | 536 | return; |
---|
| 537 | } |
---|
| 538 | else{ |
---|
| 539 | if (!expresso_offline) { |
---|
| 540 | tree_folders = new dFTree({ |
---|
| 541 | name: 'tree_folders' |
---|
| 542 | }); |
---|
[2551] | 543 | |
---|
[2676] | 544 | var n_root = new dNode({ |
---|
| 545 | id:'root', |
---|
| 546 | caption: get_lang("My Folders") |
---|
| 547 | }); |
---|
| 548 | tree_folders.add(n_root,'anything'); //Places the root; second argument can be anything. |
---|
[2551] | 549 | |
---|
[2676] | 550 | var unseen_in_mailbox = 0; |
---|
| 551 | var unseen_in_shared_folders = 0; |
---|
| 552 | for (var i=0; i<folders.length; i++){ |
---|
| 553 | if (folders[i].folder_unseen > 0) |
---|
| 554 | { |
---|
| 555 | unseen_in_mailbox = parseInt( unseen_in_mailbox + folders[ i ].folder_unseen ); |
---|
| 556 | if ( folders[i].folder_id.indexOf( 'INBOX' ) !== 0 ) |
---|
| 557 | unseen_in_shared_folders = parseInt( unseen_in_shared_folders + folders[ i ].folder_unseen ); |
---|
[2551] | 558 | |
---|
[2676] | 559 | var nn = new dNode({ |
---|
| 560 | id:folders[i].folder_id, |
---|
| 561 | caption:lang_folder(folders[i].folder_name) + '<font style=color:red> (</font><span id="dftree_'+folders[i].folder_id+'_unseen" style=color:red>'+folders[i].folder_unseen+'</span><font style=color:red>)</font>', |
---|
| 562 | onClick:"change_folder('"+folders[i].folder_id+"','"+folders[i].folder_name+"')", |
---|
| 563 | plusSign:folders[i].folder_hasChildren |
---|
| 564 | }); |
---|
[2551] | 565 | |
---|
[2676] | 566 | if( folders[i].folder_name.toLowerCase() == 'inbox' ) |
---|
| 567 | Element('new_m').innerHTML = '<font style="color:red">' + folders[i].folder_unseen + '</font>'; |
---|
| 568 | } |
---|
| 569 | else |
---|
| 570 | var nn = new dNode({ |
---|
| 571 | id:folders[i].folder_id, |
---|
| 572 | caption:lang_folder(folders[i].folder_name), |
---|
| 573 | onClick:"change_folder('"+folders[i].folder_id+"','"+folders[i].folder_name+"')", |
---|
| 574 | plusSign:folders[i].folder_hasChildren |
---|
| 575 | }); |
---|
[2551] | 576 | |
---|
[2676] | 577 | if (folders[i].folder_parent == '') |
---|
| 578 | folders[i].folder_parent = 'root'; |
---|
| 579 | else if (folders[i].folder_parent == 'user'){ |
---|
| 580 | |
---|
| 581 | if (!tree_folders.getNodeById('user')){ |
---|
| 582 | tmpFolderId = folders[i].folder_id.split(cyrus_delimiter).pop(); |
---|
| 583 | if (tmpFolderId != folders[i].folder_name) |
---|
| 584 | { |
---|
| 585 | translatedFolders.add(tmpFolderId, folders[i].folder_name); |
---|
[2551] | 586 | } |
---|
[2676] | 587 | var n_root_shared_folders = new dNode({ |
---|
| 588 | id:'user', |
---|
| 589 | caption:get_lang("Shared folders"), |
---|
| 590 | plusSign:true |
---|
| 591 | }); |
---|
| 592 | tree_folders.add(n_root_shared_folders,'root'); |
---|
| 593 | } |
---|
[2551] | 594 | } |
---|
[2676] | 595 | tree_folders.add(nn,folders[i].folder_parent); |
---|
| 596 | } |
---|
| 597 | } |
---|
| 598 | //tree_local_folders = new dFTree({name: 'tree_local_folders'}); |
---|
| 599 | /** |
---|
[2551] | 600 | * Pastas locais |
---|
| 601 | */ |
---|
[2676] | 602 | if (preferences.use_local_messages==1 || expresso_offline) { |
---|
| 603 | if (!window.google || !google.gears) { |
---|
| 604 | if (!expresso_local_messages.installGears()) |
---|
| 605 | preferences.use_local_messages=0; |
---|
| 606 | } |
---|
| 607 | else{ |
---|
| 608 | if (!window.google || !google.gears) { |
---|
| 609 | temp = confirm(get_lang("To use local messages you have to install google gears. Would you like to be redirected to gears installation page?")); |
---|
| 610 | if (temp) { |
---|
| 611 | location.href = "http://gears.google.com/?action=install&message="+ |
---|
| 612 | "Para utilizar o recurso de mensagens locais, instale o google gears&return=" + |
---|
| 613 | document.location.href; |
---|
| 614 | } |
---|
| 615 | else { |
---|
| 616 | preferences.use_local_messages=0; |
---|
| 617 | } |
---|
| 618 | } |
---|
| 619 | else{ |
---|
| 620 | if (expresso_offline) |
---|
| 621 | tree_folders = new dFTree({ |
---|
| 622 | name: 'tree_folders' |
---|
| 623 | }); |
---|
| 624 | var root_local = new dNode({ |
---|
| 625 | id: "local_root", |
---|
| 626 | caption: get_lang('local folders') |
---|
| 627 | }); |
---|
| 628 | tree_folders.add(root_local, "root"); //coloca root local |
---|
| 629 | var local_folders = expresso_local_messages.list_local_folders(); |
---|
| 630 | for (var i in local_folders) { //Coloca as pastas locais. |
---|
| 631 | if(!isNaN(i)){ |
---|
| 632 | var node_root = "local_root"; |
---|
| 633 | var new_caption = local_folders[i][0]; |
---|
| 634 | if (local_folders[i][0].indexOf("/") != "-1") { |
---|
| 635 | final_pos = local_folders[i][0].lastIndexOf("/"); |
---|
| 636 | node_root = "local_" + local_folders[i][0].substr(0, final_pos); |
---|
| 637 | new_caption = local_folders[i][0].substr(final_pos + 1); |
---|
| 638 | } |
---|
| 639 | if (local_folders[i][1] > 0) |
---|
| 640 | var nodeLocal = new dNode({ |
---|
| 641 | id: "local_" + local_folders[i][0], |
---|
| 642 | caption: lang_folder(new_caption) + '<font style=color:red> (</font><span id="local_unseen" style=color:red>' + local_folders[i][1] + '</span><font style=color:red>)</font>', |
---|
| 643 | onClick: "change_folder('local_" + local_folders[i][0] + "','" + new_caption + "')", |
---|
| 644 | plusSign: local_folders[i][2] |
---|
| 645 | }); |
---|
| 646 | else |
---|
| 647 | var nodeLocal = new dNode({ |
---|
| 648 | id: "local_" + local_folders[i][0], |
---|
| 649 | caption: lang_folder(new_caption), |
---|
| 650 | onClick: "change_folder('local_" + local_folders[i][0] + "','" + new_caption + "')", |
---|
| 651 | plusSign: local_folders[i][2] |
---|
| 652 | }); |
---|
| 653 | tree_folders.add(nodeLocal, node_root); |
---|
[2551] | 654 | } |
---|
[2676] | 655 | } |
---|
| 656 | } |
---|
| 657 | } |
---|
[2551] | 658 | } |
---|
| 659 | |
---|
[2676] | 660 | tree_folders.draw(Element('content_folders')); |
---|
| 661 | if (!expresso_offline) { |
---|
| 662 | n_root.changeState(); |
---|
| 663 | folder_select = (current_folder ? current_folder:"INBOX"); |
---|
| 664 | if (typeof(tree_folders.getNodeById(folder_select)) == 'undefined') |
---|
[2551] | 665 | return false; |
---|
[2676] | 666 | tree_folders.getNodeById(folder_select)._select(); |
---|
| 667 | } |
---|
| 668 | else { |
---|
| 669 | root_local.changeState(); |
---|
| 670 | tree_folders.getNodeById('local_Inbox')._select(); |
---|
| 671 | } |
---|
[2551] | 672 | |
---|
[2676] | 673 | var trash_span=document.getElementById('lINBOX/'+trashfolder+'tree_folders'); |
---|
| 674 | var draft_span=document.getElementById('lINBOX/'+draftsfolder+'tree_folders'); |
---|
| 675 | var sent_span=document.getElementById('lINBOX/'+sentfolder+'tree_folders'); |
---|
| 676 | var spam_span=document.getElementById('lINBOX/'+spamfolder+'tree_folders'); |
---|
[2551] | 677 | |
---|
[2676] | 678 | if (trash_span) |
---|
| 679 | trash_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_trash.png)"; |
---|
[2551] | 680 | |
---|
[2676] | 681 | if (draft_span) |
---|
| 682 | draft_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_draft.png)"; |
---|
[2551] | 683 | |
---|
[2676] | 684 | if (sent_span) |
---|
| 685 | sent_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_sent.png)"; |
---|
[2551] | 686 | |
---|
[2676] | 687 | if (spam_span) |
---|
| 688 | spam_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_spam.png)"; |
---|
[2551] | 689 | |
---|
| 690 | |
---|
| 691 | draw_paging(Element('tot_m').innerHTML); |
---|
| 692 | if(document.getElementById("nINBOX/"+trashfolder+"tree_folders")) |
---|
[2676] | 693 | { |
---|
| 694 | var trash = document.createElement("SPAN"); |
---|
| 695 | trash.id = 'empty_trash'; |
---|
| 696 | trash.className = 'clean_folder'; |
---|
| 697 | trash.style.cursor = 'pointer'; |
---|
| 698 | trash.onclick = function () { |
---|
| 699 | empty_trash_imap(); |
---|
| 700 | }; |
---|
| 701 | trash.innerHTML = "["+get_lang("Clean")+"]"; |
---|
| 702 | trash.title=get_lang("Empty trash"); |
---|
| 703 | trash.onmouseover = function() { |
---|
| 704 | trash.style.color="red"; |
---|
| 705 | }; |
---|
| 706 | trash.onmouseout= function() { |
---|
| 707 | trash.style.color="#666666"; |
---|
| 708 | }; |
---|
| 709 | document.getElementById("nINBOX/"+trashfolder+"tree_folders").appendChild(trash); |
---|
| 710 | } |
---|
| 711 | if(document.getElementById("nINBOX/"+spamfolder+"tree_folders")) |
---|
| 712 | { |
---|
| 713 | var spam = document.createElement("SPAN"); |
---|
| 714 | spam.id = 'empty_spam'; |
---|
| 715 | spam.className = 'clean_folder'; |
---|
| 716 | spam.style.cursor = 'pointer'; |
---|
| 717 | spam.style.padding = '0 0 0 6px'; |
---|
| 718 | spam.onclick = function () { |
---|
| 719 | empty_spam_imap(); |
---|
| 720 | }; |
---|
| 721 | spam.innerHTML = "["+get_lang("Clean")+"]"; |
---|
| 722 | spam.title=get_lang("Empty Spam Folder"); |
---|
| 723 | spam.onmouseover = function() { |
---|
| 724 | spam.style.color="red"; |
---|
| 725 | }; |
---|
| 726 | spam.onmouseout= function() { |
---|
| 727 | spam.style.color="#666666"; |
---|
| 728 | }; |
---|
| 729 | document.getElementById("nINBOX/"+spamfolder+"tree_folders").appendChild(spam); |
---|
| 730 | } |
---|
[2551] | 731 | |
---|
[2676] | 732 | // Draw right menu folders. |
---|
| 733 | /* |
---|
[2551] | 734 | var treeroot = document.getElementById('chroottree_folders'); |
---|
| 735 | for (var linkBox = treeroot.firstChild; linkBox != null; linkBox = linkBox.nextSibling) |
---|
| 736 | _dragArea.makeMenuBox(linkBox); |
---|
| 737 | */ |
---|
| 738 | |
---|
[2676] | 739 | if(!expresso_offline) |
---|
| 740 | var display_unseen_in_mailbox = tree_folders.getNodeById( 'root' ); |
---|
[2551] | 741 | else |
---|
[2676] | 742 | var display_unseen_in_mailbox = tree_folders.getNodeById( 'local_root' ); |
---|
[2551] | 743 | //if ( unseen_in_mailbox ) |
---|
| 744 | // display_unseen_in_mailbox.alter({caption:'<font style=color:red>[</font><span id="dftree_root_unseen" style="color:red">' + unseen_in_mailbox +'</span><font style=color:red>]</font> ' + get_lang("My Folders")}); |
---|
| 745 | //else |
---|
[2676] | 746 | display_unseen_in_mailbox.alter({ |
---|
| 747 | caption:get_lang("My Folders") |
---|
| 748 | }); |
---|
[2551] | 749 | display_unseen_in_mailbox._refresh(); |
---|
| 750 | |
---|
| 751 | var display_unseen_in_shared_folders = tree_folders.getNodeById( 'user' ); |
---|
[2676] | 752 | if ( display_unseen_in_shared_folders ) |
---|
| 753 | { |
---|
| 754 | if ( unseen_in_shared_folders ) |
---|
| 755 | display_unseen_in_shared_folders.alter({ |
---|
| 756 | caption:'<font style=color:red>[</font><span id="dftree_user_unseen" style="color:red">' + unseen_in_shared_folders +'</span><font style=color:red>]</font> ' + get_lang("Shared folders") |
---|
| 757 | }); |
---|
| 758 | else |
---|
| 759 | display_unseen_in_shared_folders.alter({ |
---|
| 760 | caption:get_lang("Shared folders") |
---|
| 761 | }); |
---|
| 762 | display_unseen_in_shared_folders._refresh(); |
---|
| 763 | } |
---|
| 764 | } |
---|
[2551] | 765 | |
---|
[2676] | 766 | if (!expresso_offline) { |
---|
[2551] | 767 | var folder_create = ""; |
---|
| 768 | var nm1 = ""; |
---|
| 769 | if(tree_folders._folderPr.length > 0){ |
---|
[2676] | 770 | var nm_folder = ""; |
---|
| 771 | for(var i=0; i < tree_folders._folderPr.length; i++){ |
---|
| 772 | nm_folder = tree_folders._folderPr[i].split(cyrus_delimiter); |
---|
| 773 | if(nm_folder[0] == "INBOX"){ |
---|
| 774 | if(nm1 == ""){ |
---|
| 775 | nm1 = nm_folder[1]; |
---|
| 776 | folder_create = "INBOX" + cyrus_delimiter + nm_folder[1] + ";"; |
---|
| 777 | }else{ |
---|
| 778 | if( nm1 != nm_folder[1]){ |
---|
| 779 | folder_create += "INBOX" + cyrus_delimiter + nm_folder[1] + ";"; |
---|
| 780 | nm1 = nm_folder[1]; |
---|
[2551] | 781 | } |
---|
[2676] | 782 | } |
---|
[2551] | 783 | } |
---|
[2676] | 784 | } |
---|
[2551] | 785 | } |
---|
| 786 | if(folder_create != ""){ |
---|
[2676] | 787 | if(confirm(get_lang("There are folders with invalid format. Do you want to fix them?"))){ |
---|
| 788 | var handler_correct_folders = function(data){ |
---|
| 789 | //Timeout to release HTTPRequest , loadScript and update tree folders. |
---|
| 790 | if(data) |
---|
| 791 | setTimeout("expresso.connector.loadScript('jscode/TreeShow');ttreeBox.update_folder();",500); |
---|
| 792 | }; |
---|
| 793 | cExecute("expressoMail1_2.imap_functions.create_extra_mailbox",handler_correct_folders,"nw_folders="+folder_create); |
---|
| 794 | } |
---|
[2551] | 795 | } |
---|
[2676] | 796 | } |
---|
[2551] | 797 | } |
---|
| 798 | |
---|
| 799 | |
---|
| 800 | function update_menu(data){ |
---|
[2676] | 801 | /* |
---|
[2551] | 802 | * @AUTHOR Rodrigo Souza dos Santos |
---|
| 803 | * @DATE 2008/09/15 |
---|
| 804 | * @BRIEF When occurs a error in imap server show the message that is in file "error.html". |
---|
| 805 | */ |
---|
[2676] | 806 | if ( data && data.imap_error ) |
---|
| 807 | { |
---|
| 808 | if(preferences.use_local_messages==1 && expresso_local_messages.is_offline_installed){ |
---|
| 809 | conf = confirm(get_lang("The expresso imap server is currently down, expresso noticed you have offline mail module installed, would you like to use it?")); |
---|
| 810 | if(conf) { |
---|
| 811 | window.onresize = function() { |
---|
| 812 | var target = document.getElementById('divAppbox'); |
---|
| 813 | target.style.height= document.body.clientHeight - 83; |
---|
| 814 | }; |
---|
| 815 | var target = document.getElementById('divAppbox'); |
---|
| 816 | document.getElementById("divAppboxHeader").innerHTML=""; |
---|
| 817 | target.style.height= document.body.clientHeight - 83; |
---|
| 818 | expresso_local_messages.set_as_logged(account_id,0,true); |
---|
| 819 | target.innerHTML = "<iframe src='offline.php?inside=1' width='100%' height='100%' frameBorder='0'></iframe>"; |
---|
[2551] | 820 | return false; |
---|
[2676] | 821 | } |
---|
[2551] | 822 | } |
---|
[2676] | 823 | expresso.connector.newRequest('error.html', URL_SERVER + 'expressoMail1_2/templates/'+template+'/error.html', 'GET', |
---|
| 824 | function(data) |
---|
| 825 | { |
---|
| 826 | var target = document.getElementById('divAppbox'); |
---|
| 827 | if ( target ) |
---|
| 828 | target.innerHTML = data; |
---|
| 829 | } |
---|
| 830 | ); |
---|
| 831 | return false; |
---|
| 832 | } |
---|
[2551] | 833 | |
---|
[2676] | 834 | draw_tree_folders(data); |
---|
| 835 | if(data) { |
---|
| 836 | build_quota(data); |
---|
| 837 | var f_unseen = Element('dftree_'+current_folder+'_unseen'); |
---|
| 838 | if(f_unseen && f_unseen.innerHTML) |
---|
| 839 | Element('new_m').innerHTML = '<font face="Verdana" size="1" color="RED">'+f_unseen.innerHTML+'</font>'; |
---|
| 840 | else |
---|
| 841 | { |
---|
| 842 | if( parseInt(Element('new_m').innerHTML) == 0 ) |
---|
| 843 | Element('new_m').innerHTML = 0; |
---|
[2551] | 844 | } |
---|
[2676] | 845 | folders = data; |
---|
| 846 | } |
---|
[2551] | 847 | } |
---|
| 848 | |
---|
| 849 | var handler_draw_box = function(data){ |
---|
[2676] | 850 | draw_box( expresso.connector.unserialize( data ), 'INBOX', true); |
---|
| 851 | //alternate_border(0); |
---|
[2551] | 852 | }; |
---|
| 853 | |
---|
| 854 | // Action on change folders. |
---|
[2676] | 855 | function change_folder(folder, folder_name){ |
---|
| 856 | if (openTab.imapBox[0] != folder) |
---|
| 857 | { |
---|
| 858 | current_folder = folder; |
---|
| 859 | var handler_draw_box = function(data) |
---|
| 860 | { |
---|
| 861 | alternate_border(0); |
---|
| 862 | Element("border_id_0").innerHTML = " " + lang_folder(folder_name) + ' <font face="Verdana" size="1" color="#505050">[<span id="new_m"> </span> / <span id="tot_m"></span>]</font>'; |
---|
| 863 | draw_box(data, folder, true); |
---|
| 864 | draw_paging(data.num_msgs); |
---|
| 865 | Element("tot_m").innerHTML = data.num_msgs; |
---|
| 866 | update_menu(); |
---|
| 867 | return true; |
---|
| 868 | }; |
---|
| 869 | proxy_mensagens.messages_list(current_folder,1,preferences.max_email_per_page,sort_box_type,search_box_type,sort_box_reverse,preferences.preview_msg_subject,preferences.preview_msg_tip,handler_draw_box); |
---|
| 870 | // cExecute ("expressoMail1_2.imap_functions.get_range_msgs2&folder="+current_folder+"&msg_range_begin=1&msg_range_end="+preferences.max_email_per_page+"&sort_box_type="+sort_box_type+ "&search_box_type="+ search_box_type +"&sort_box_reverse="+sort_box_reverse+"", handler_draw_box); |
---|
| 871 | } |
---|
| 872 | else |
---|
| 873 | alternate_border(0); |
---|
| 874 | } |
---|
[2551] | 875 | |
---|
| 876 | function open_folder(folder, folder_name){ |
---|
[2676] | 877 | if (current_folder!= folder) { |
---|
| 878 | current_folder = folder; |
---|
| 879 | var handler_draw_box = function(data){ |
---|
| 880 | numBox++; |
---|
| 881 | create_border(folder_name,numBox.toString()); |
---|
| 882 | draw_box(data, current_folder, false); |
---|
| 883 | alternate_border(numBox); |
---|
| 884 | return true; |
---|
| 885 | }; |
---|
| 886 | cExecute ("expressoMail1_2.imap_functions.get_range_msgs2&folder="+current_folder+"&msg_range_begin=1&msg_range_end="+preferences.max_email_per_page+"&sort_box_type="+sort_box_type+ "&search_box_type="+ search_box_type +"&sort_box_reverse="+sort_box_reverse+"", handler_draw_box); |
---|
| 887 | } |
---|
| 888 | else |
---|
| 889 | alternate_border(numBox); |
---|
| 890 | return true; |
---|
[2551] | 891 | } |
---|
| 892 | |
---|
| 893 | function sort_box(search, sort){ |
---|
[2676] | 894 | var message_header = Element("message_header_"+search); |
---|
| 895 | var handler_draw_box = function(data){ |
---|
| 896 | draw_box(data, current_folder,true); |
---|
| 897 | draw_paging(Element('tot_m').innerHTML); |
---|
| 898 | //Mostrar as msgs nao lidas de acordo com o filtro de relevancia |
---|
| 899 | var msgs_unseen = 0; |
---|
| 900 | for(i in data){ |
---|
| 901 | if(data[i].Unseen == 'U') |
---|
| 902 | msgs_unseen++; |
---|
[2551] | 903 | } |
---|
[2676] | 904 | Element("new_m").innerHTML = '<font style="color:'+(msgs_unseen == 0 ? '': 'red')+'">' + msgs_unseen + '</font>'; |
---|
| 905 | }; |
---|
[2551] | 906 | |
---|
[2676] | 907 | if(sort_box_type == sort && search_box_type == search){ |
---|
| 908 | sort_box_reverse = sort_box_reverse ? 0 : 1; |
---|
| 909 | } |
---|
| 910 | else if(sort_box_type != sort){ |
---|
| 911 | if ( (sort == 'SORTFROM') || (sort == 'SORTSUBJECT') ) |
---|
| 912 | sort_box_reverse = 0; |
---|
| 913 | else |
---|
| 914 | sort_box_reverse = 1; |
---|
| 915 | } |
---|
[2551] | 916 | |
---|
[2676] | 917 | // Global variable. |
---|
| 918 | sort_box_type = sort; |
---|
| 919 | search_box_type = search; |
---|
| 920 | |
---|
| 921 | proxy_mensagens.messages_list(current_folder,1,preferences.max_email_per_page,sort,search,sort_box_reverse,preferences.preview_msg_subject,preferences.preview_msg_tip,handler_draw_box); |
---|
| 922 | current_page = 1; |
---|
| 923 | //Comentado para nao sobrepor o numero de msgs nao lidas ao utilizar os filtros |
---|
| 924 | //update_menu(); |
---|
[2551] | 925 | } |
---|
| 926 | |
---|
[2561] | 927 | function make_tr_message(headers_msgs, msg_folder) |
---|
| 928 | { |
---|
[2676] | 929 | if ( InfoContact == null ) |
---|
| 930 | InfoContact = new emInfoContact(); |
---|
[2561] | 931 | |
---|
[2676] | 932 | var tr_element = document.createElement('tr'); |
---|
| 933 | tr_element.style.height = preferences.line_height; |
---|
| 934 | tr_element.id = headers_msgs.msg_number; |
---|
[2551] | 935 | |
---|
[2676] | 936 | tr_element.msg_sample = ""; |
---|
| 937 | //if(headers_msgs.msg_sample && headers_msgs.msg_sample.preview_msg_subject != "") |
---|
| 938 | if(headers_msgs.msg_sample && preferences.preview_msg_subject == "1") |
---|
| 939 | { |
---|
| 940 | tr_element.msg_sample = headers_msgs.msg_sample.body.substr(0,120) + "..."; //trecho do body que sera exibido com o assunto; |
---|
| 941 | } |
---|
[2551] | 942 | |
---|
[2676] | 943 | tr_element.tip = ""; |
---|
| 944 | if(headers_msgs.msg_sample && preferences.preview_msg_tip == "1") |
---|
| 945 | { |
---|
| 946 | tr_element.tip = headers_msgs.msg_sample.body.substr(3,300) + "..."; //trecho do body que sera exibido no tool-tip; |
---|
| 947 | } |
---|
[2551] | 948 | |
---|
[2676] | 949 | if ((headers_msgs.Unseen == 'U') || (headers_msgs.Recent == 'N')){ |
---|
| 950 | if ((headers_msgs.Flagged == 'F') || (headers_msgs.Importance.toLowerCase().indexOf("high")!=-1 && parseInt(preferences.use_important_flag))) |
---|
| 951 | add_className(tr_element, 'flagged_msg'); |
---|
| 952 | add_className(tr_element, 'tr_msg_unread'); |
---|
| 953 | } |
---|
| 954 | else{ |
---|
| 955 | if ((headers_msgs.Flagged == 'F') || (headers_msgs.Importance.toLowerCase().indexOf("high")!=-1 && parseInt(preferences.use_important_flag))) |
---|
| 956 | add_className(tr_element,'flagged_msg'); |
---|
| 957 | } |
---|
[2551] | 958 | |
---|
[2676] | 959 | if ((headers_msgs.Unseen == 'U') || (headers_msgs.Recent == 'N')) |
---|
| 960 | add_className(tr_element, 'tr_msg_unread'); |
---|
[2551] | 961 | |
---|
[2676] | 962 | if (headers_msgs.Flagged == 'F') |
---|
| 963 | add_className(tr_element,'flagged_msg'); |
---|
[2551] | 964 | |
---|
[2676] | 965 | td_element1 = document.createElement("TD"); |
---|
| 966 | td_element1.className = "td_msg"; |
---|
| 967 | td_element1.setAttribute("width", "1%"); |
---|
| 968 | chk_box_element = document.createElement("INPUT"); |
---|
| 969 | chk_box_element.setAttribute("type", "checkbox"); |
---|
| 970 | chk_box_element.className = "checkbox"; |
---|
| 971 | chk_box_element.setAttribute("id", "check_box_message_"+headers_msgs.msg_number); |
---|
| 972 | chk_box_element.onclick = function(e){ |
---|
| 973 | if (is_ie) |
---|
| 974 | changeBgColor(window.event,headers_msgs.msg_number); |
---|
| 975 | else |
---|
| 976 | changeBgColor(e,headers_msgs.msg_number); |
---|
| 977 | }; |
---|
| 978 | td_element1.appendChild(chk_box_element); |
---|
[2551] | 979 | |
---|
[2676] | 980 | td_element2 = document.createElement("TD"); |
---|
| 981 | td_element2.className = "td_msg"; |
---|
| 982 | td_element2.setAttribute("width", "2%"); |
---|
| 983 | if (headers_msgs.attachment && headers_msgs.attachment.number_attachments > 0) |
---|
| 984 | td_element2.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/clip.gif" title="' + url_decode(headers_msgs.attachment.names) + '">'; |
---|
[2551] | 985 | |
---|
[2676] | 986 | td_element21 = document.createElement("TD"); |
---|
| 987 | td_element21.className = "td_msg"; |
---|
| 988 | td_element21.setAttribute("width", "1%"); |
---|
| 989 | td_element21.id = "td_message_answered_"+headers_msgs.msg_number; |
---|
[2551] | 990 | |
---|
[2676] | 991 | if (headers_msgs.attachment && headers_msgs.attachment.number_attachments > 0) { |
---|
| 992 | attach_name = headers_msgs.attachment.names.split(", "); |
---|
| 993 | for(var item in attach_name) |
---|
| 994 | { |
---|
| 995 | if (url_decode(attach_name[item]) != 'smime.p7s' && url_decode(attach_name[item]) != 'smime.p7m'){ |
---|
| 996 | td_element21.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/clip.gif" title="' + url_decode(attach_name[item]) + '">'; |
---|
| 997 | break; |
---|
| 998 | } |
---|
[2551] | 999 | } |
---|
[2676] | 1000 | } |
---|
[2551] | 1001 | |
---|
[2676] | 1002 | if ((headers_msgs.Forwarded == 'F') || (headers_msgs.Draft == 'X' && headers_msgs.Answered == 'A')){ |
---|
| 1003 | td_element21.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/forwarded.gif" title="'+get_lang('Forwarded')+'">'; |
---|
| 1004 | headers_msgs.Draft = ''; |
---|
| 1005 | headers_msgs.Answered = ''; |
---|
| 1006 | headers_msgs.Forwarded = 'F'; |
---|
| 1007 | } |
---|
| 1008 | else if (headers_msgs.Draft == 'X') |
---|
| 1009 | td_element21.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/draft.gif" title="'+get_lang('Draft')+'">'; |
---|
| 1010 | else if (headers_msgs.Answered == 'A') |
---|
| 1011 | td_element21.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/answered.gif" title="'+get_lang('Answered')+'">'; |
---|
| 1012 | else |
---|
| 1013 | td_element21.innerHTML = " "; |
---|
[2551] | 1014 | |
---|
[2676] | 1015 | td_element22 = document.createElement("TD"); |
---|
| 1016 | td_element22.className = "td_msg"; |
---|
| 1017 | td_element22.setAttribute("width", "1%"); |
---|
| 1018 | td_element22.id = "td_message_signed_"+headers_msgs.msg_number; |
---|
[2551] | 1019 | |
---|
[2676] | 1020 | //td_element23 = document.createElement("TD"); |
---|
| 1021 | //td_element23.setAttribute("width", "1%"); |
---|
| 1022 | //td_element23.id = "td_message_signed_"+headers_msgs.msg_number; |
---|
| 1023 | switch(headers_msgs.ContentType) |
---|
| 1024 | { |
---|
| 1025 | case "signature": |
---|
[2551] | 1026 | { |
---|
[2676] | 1027 | td_element22.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/signed_msg.gif" title="' + get_lang('Signed message') + '">'; |
---|
| 1028 | break; |
---|
| 1029 | } |
---|
| 1030 | case "cipher": |
---|
[2551] | 1031 | { |
---|
[2676] | 1032 | td_element22.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/lock.gif" title="' + get_lang('Crypted message') + '">'; |
---|
| 1033 | break; |
---|
[2551] | 1034 | } |
---|
[2676] | 1035 | default: |
---|
| 1036 | { |
---|
| 1037 | break; |
---|
| 1038 | } |
---|
| 1039 | }; |
---|
[2551] | 1040 | |
---|
[2676] | 1041 | td_element23 = document.createElement("TD"); |
---|
| 1042 | td_element23.className = "td_msg"; |
---|
| 1043 | td_element23.setAttribute("width", "1%"); |
---|
| 1044 | td_element23.id = "td_message_important_"+headers_msgs.msg_number; |
---|
[2551] | 1045 | |
---|
[2676] | 1046 | if (headers_msgs.Flagged == 'F' || (headers_msgs.Importance.toLowerCase().indexOf("high") != -1 && parseInt(preferences.use_important_flag))) |
---|
| 1047 | { |
---|
| 1048 | td_element23.innerHTML = '<img src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/important.gif" title="'+get_lang('Important')+'">'; |
---|
| 1049 | } |
---|
| 1050 | else |
---|
| 1051 | td_element23.innerHTML = " "; |
---|
[2551] | 1052 | |
---|
[2676] | 1053 | td_element24 = document.createElement("TD"); |
---|
| 1054 | td_element24.className = "td_msg"; |
---|
| 1055 | td_element24.setAttribute("width", "1%"); |
---|
| 1056 | td_element24.id = "td_message_sent_"+headers_msgs.msg_number; |
---|
| 1057 | td_element24.innerHTML = " "; |
---|
| 1058 | // preload image |
---|
| 1059 | var _img_sent = new Image(); |
---|
| 1060 | _img_sent.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/sent.gif'; |
---|
[2551] | 1061 | |
---|
[2676] | 1062 | td_element3 = document.createElement("TD"); |
---|
| 1063 | td_element3.className = "td_msg"; |
---|
| 1064 | td_element3.id = "td_who_"+ headers_msgs.msg_number; |
---|
| 1065 | td_element3.setAttribute("width", "20%"); |
---|
| 1066 | var _onclick = function(){ |
---|
| 1067 | InfoContact.hide();proxy_mensagens.get_msg(headers_msgs.msg_number, msg_folder,true, show_msg); |
---|
| 1068 | }; |
---|
| 1069 | td_element3.onclick = _onclick; |
---|
| 1070 | td_element3.innerHTML = ' '; |
---|
| 1071 | |
---|
| 1072 | if (typeof(headers_msgs.from) == 'undefined') |
---|
| 1073 | return false; |
---|
| 1074 | if(headers_msgs.from.email.toLowerCase() == Element("user_email").value) |
---|
| 1075 | { |
---|
| 1076 | td_element3.onmouseover = function () { |
---|
| 1077 | this.title=headers_msgs.to.email; |
---|
| 1078 | }; |
---|
| 1079 | if (headers_msgs.Draft == 'X') |
---|
| 1080 | td_element3.innerHTML += "<span style=\"color:red\">("+get_lang("Draft")+") </span>"; |
---|
[2551] | 1081 | else{ |
---|
[2676] | 1082 | if(headers_msgs.to.email != null && headers_msgs.to.email.toLowerCase() != Element("user_email").value) |
---|
| 1083 | td_element24.innerHTML = '<img valign="center" src ="' + URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/sent.gif" title="'+get_lang('Sent')+'">'; |
---|
[2551] | 1084 | |
---|
[2676] | 1085 | if ((headers_msgs.to)&&(headers_msgs.to.name != null)) |
---|
| 1086 | td_element3.innerHTML += headers_msgs.to.name; |
---|
| 1087 | else if (headers_msgs.to){ |
---|
| 1088 | td_element3.innerHTML += headers_msgs.to.email; |
---|
| 1089 | } |
---|
[2551] | 1090 | } |
---|
[2676] | 1091 | } |
---|
| 1092 | else{ |
---|
| 1093 | if (headers_msgs.Draft == 'X'){ |
---|
| 1094 | td_element3.innerHTML = "<span style=\"color:red\">("+get_lang("Draft")+") </span>"; |
---|
[2551] | 1095 | } |
---|
[2676] | 1096 | else{ |
---|
| 1097 | var spanSender = document.createElement("SPAN"); |
---|
| 1098 | spanSender.onmouseover = function (event) { |
---|
| 1099 | this.style.textDecoration = "underline";try { |
---|
| 1100 | InfoContact.begin(this,headers_msgs.from.email) |
---|
| 1101 | } catch(e){}; |
---|
| 1102 | }; |
---|
| 1103 | spanSender.onmouseout = function (){ |
---|
| 1104 | try { |
---|
| 1105 | this.style.textDecoration = "none"; clearTimeout(InfoContact.timeout); |
---|
| 1106 | } catch(e){} |
---|
| 1107 | }; |
---|
| 1108 | spanSender.innerHTML = headers_msgs.from.name != null ? headers_msgs.from.name : headers_msgs.from.email; |
---|
| 1109 | if (spanSender.innerHTML.indexOf(" ") == '-1' && spanSender.innerHTML.length > 25){ |
---|
| 1110 | spanSender.innerHTML = spanSender.innerHTML.substring(0,25) + "..."; |
---|
| 1111 | } |
---|
| 1112 | else if (spanSender.innerHTML.length > 40 ){ |
---|
| 1113 | spanSender.innerHTML = spanSender.innerHTML.substring(0,40) + "..."; |
---|
| 1114 | } |
---|
| 1115 | td_element3.appendChild(spanSender); |
---|
[2551] | 1116 | } |
---|
[2676] | 1117 | } |
---|
| 1118 | td_element4 = document.createElement("TD"); |
---|
| 1119 | td_element4.className = "td_msg"; |
---|
| 1120 | td_element4.setAttribute("width", "50%"); |
---|
| 1121 | td_element4.onclick = _onclick; |
---|
| 1122 | // td_element4.setAttribute("style","white-space:nowrap;"); |
---|
| 1123 | td_element4.innerHTML = !is_ie ? "<a nowrap id='a_message_"+tr_element.id+"'> " : " "; |
---|
[2551] | 1124 | |
---|
[2676] | 1125 | if ((headers_msgs.subject)&&(headers_msgs.subject.length > 50)) |
---|
| 1126 | { |
---|
| 1127 | // if( (headers_msgs.subject.length+tr_element.msg_sample.length)> |
---|
| 1128 | td_element4.innerHTML += headers_msgs.subject.substring(0,50) + "..." + "<span style=\"color:#b3b3b3;\"> " + tr_element.msg_sample +"</span>";//modificacao feita para exibir o trecho do body ao lado do assunto da mensagem; |
---|
| 1129 | } |
---|
| 1130 | else |
---|
| 1131 | { |
---|
| 1132 | td_element4.innerHTML += headers_msgs.subject + "<span style=\"color:#b3b3b3;\"> " + tr_element.msg_sample + "</span>";//modificacao feita para exibir o trecho do body ao lado do assunto da mensagem; |
---|
| 1133 | } |
---|
[2551] | 1134 | |
---|
[2676] | 1135 | td_element4.title=tr_element.tip; |
---|
| 1136 | if(!is_ie){ |
---|
| 1137 | td_element4.innerHTML += "</a>"; |
---|
| 1138 | } |
---|
[2551] | 1139 | |
---|
| 1140 | |
---|
[2676] | 1141 | td_element5 = document.createElement("TD"); |
---|
| 1142 | td_element5.className = "td_msg"; |
---|
| 1143 | td_element5.setAttribute("width", "14%"); |
---|
| 1144 | td_element5.onclick = _onclick; |
---|
| 1145 | td_element5.setAttribute("align", "center"); |
---|
| 1146 | td_element5.innerHTML = headers_msgs.udate; |
---|
[2551] | 1147 | |
---|
[2676] | 1148 | td_element6 = document.createElement("TD"); |
---|
| 1149 | td_element6.className = "td_msg"; |
---|
| 1150 | td_element6.setAttribute("width", "14%"); |
---|
| 1151 | td_element6.onclick = _onclick; |
---|
| 1152 | td_element6.setAttribute("noWrap","true"); |
---|
| 1153 | td_element6.setAttribute("align", "center"); |
---|
| 1154 | |
---|
| 1155 | td_element6.innerHTML = borkb(headers_msgs.Size); |
---|
| 1156 | |
---|
| 1157 | tr_element.appendChild(td_element1); |
---|
| 1158 | tr_element.appendChild(td_element2); |
---|
| 1159 | tr_element.appendChild(td_element21); |
---|
| 1160 | tr_element.appendChild(td_element22); |
---|
| 1161 | tr_element.appendChild(td_element23); |
---|
| 1162 | tr_element.appendChild(td_element24); |
---|
| 1163 | tr_element.appendChild(td_element3); |
---|
| 1164 | tr_element.appendChild(td_element4); |
---|
| 1165 | tr_element.appendChild(td_element5); |
---|
| 1166 | tr_element.appendChild(td_element6); |
---|
| 1167 | return tr_element; |
---|
[2551] | 1168 | } |
---|
| 1169 | |
---|
| 1170 | |
---|
| 1171 | // Draw the inbox and another folders |
---|
[2676] | 1172 | function draw_box(headers_msgs, msg_folder, alternate){ |
---|
| 1173 | if ( _dragArea == null ) |
---|
| 1174 | _dragArea = new DragArea( ); |
---|
[2561] | 1175 | |
---|
[2676] | 1176 | if (alternate) |
---|
| 1177 | kill_current_box(); |
---|
[2551] | 1178 | |
---|
[2676] | 1179 | if(is_ie) |
---|
| 1180 | document.getElementById("border_table").width = "99.5%"; |
---|
[2551] | 1181 | |
---|
[2676] | 1182 | openTab.content_id[numBox] = document.getElementById("content_id_"+numBox); |
---|
| 1183 | openTab.imapBox[numBox] = msg_folder; |
---|
| 1184 | openTab.type[numBox] = 0; |
---|
[2551] | 1185 | |
---|
[2676] | 1186 | table_message_header_box = document.getElementById("table_message_header_box_"+numBox); |
---|
| 1187 | if (table_message_header_box == null){ |
---|
| 1188 | var table_element = document.createElement("TABLE"); |
---|
| 1189 | var tbody_element = document.createElement("TBODY"); |
---|
| 1190 | table_element.setAttribute("id", "table_message_header_box_"+numBox); |
---|
| 1191 | table_element.className = "table_message_header_box"; |
---|
[2551] | 1192 | |
---|
[2676] | 1193 | tr_element = document.createElement("TR"); |
---|
| 1194 | tr_element.className = "message_header"; |
---|
| 1195 | td_element1 = document.createElement("TD"); |
---|
| 1196 | td_element1.setAttribute("width", "1%"); |
---|
| 1197 | chk_box_element = document.createElement("INPUT"); |
---|
| 1198 | chk_box_element.id = "chk_box_select_all_messages"; |
---|
| 1199 | chk_box_element.setAttribute("type", "checkbox"); |
---|
| 1200 | chk_box_element.className = "checkbox"; |
---|
| 1201 | chk_box_element.onclick = function(){ |
---|
| 1202 | select_all_messages(this.checked); |
---|
| 1203 | }; |
---|
| 1204 | chk_box_element.onmouseover = function () { |
---|
| 1205 | this.title=get_lang('Select all messages.'); |
---|
| 1206 | }; |
---|
| 1207 | chk_box_element.onkeydown = function (e){ |
---|
| 1208 | if (is_ie) |
---|
| 1209 | { |
---|
| 1210 | if ((window.event.keyCode) == 46) |
---|
| 1211 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 1212 | } |
---|
| 1213 | else |
---|
| 1214 | { |
---|
| 1215 | if ((e.keyCode) == 46) |
---|
| 1216 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 1217 | } |
---|
| 1218 | }; |
---|
[2551] | 1219 | |
---|
[2676] | 1220 | td_element1.appendChild(chk_box_element); |
---|
[2551] | 1221 | |
---|
[2676] | 1222 | td_element2 = document.createElement("TD"); |
---|
| 1223 | td_element2.setAttribute("width", "7%"); |
---|
| 1224 | td_element3 = document.createElement("TD"); |
---|
| 1225 | td_element3.setAttribute("width", "29%"); |
---|
| 1226 | td_element3.onclick = function () { |
---|
| 1227 | sort_box(search_box_type,'SORTFROM'); |
---|
| 1228 | }; |
---|
| 1229 | td_element3.id = "message_header_SORTFROM_"+numBox; |
---|
| 1230 | td_element3.align = "left"; |
---|
| 1231 | td_element3.innerHTML = get_lang("Who"); |
---|
[2551] | 1232 | |
---|
[2676] | 1233 | td_element4 = document.createElement("TD"); |
---|
| 1234 | td_element4.setAttribute("width", "38%"); |
---|
| 1235 | td_element4.onclick = function () { |
---|
| 1236 | sort_box(search_box_type,'SORTSUBJECT'); |
---|
| 1237 | }; |
---|
| 1238 | td_element4.id = "message_header_SORTSUBJECT_"+numBox; |
---|
| 1239 | td_element4.align = "left"; |
---|
| 1240 | td_element4.innerHTML = get_lang("Subject"); |
---|
[2551] | 1241 | |
---|
[2676] | 1242 | td_element5 = document.createElement("TD"); |
---|
| 1243 | td_element5.setAttribute("width", "14%"); |
---|
| 1244 | td_element5.onclick = function () { |
---|
| 1245 | sort_box(search_box_type,'SORTARRIVAL'); |
---|
| 1246 | }; |
---|
| 1247 | td_element5.id = "message_header_SORTARRIVAL_"+numBox; |
---|
| 1248 | td_element5.align = "center"; |
---|
| 1249 | td_element5.innerHTML = get_lang("Date"); |
---|
| 1250 | td_element6 = document.createElement("TD"); |
---|
| 1251 | td_element6.setAttribute("width", "14%"); |
---|
| 1252 | td_element6.onclick = function () { |
---|
| 1253 | sort_box(search_box_type,'SORTSIZE'); |
---|
| 1254 | }; |
---|
| 1255 | td_element6.id = "message_header_SORTSIZE_"+numBox; |
---|
| 1256 | td_element6.align = "left"; |
---|
| 1257 | td_element6.innerHTML = get_lang("Size"); |
---|
[2551] | 1258 | |
---|
[2676] | 1259 | tr_element.appendChild(td_element1); |
---|
| 1260 | tr_element.appendChild(td_element2); |
---|
| 1261 | var td_element21 = document.createElement("TD"); |
---|
| 1262 | td_element21.innerHTML = " "; |
---|
| 1263 | var td_element22 = document.createElement("TD"); |
---|
| 1264 | td_element22.innerHTML = " "; |
---|
| 1265 | var td_element23 = document.createElement("TD"); |
---|
| 1266 | td_element23.innerHTML = " "; |
---|
| 1267 | tr_element.appendChild(td_element21); |
---|
| 1268 | tr_element.appendChild(td_element22); |
---|
| 1269 | tr_element.appendChild(td_element23); |
---|
| 1270 | tr_element.appendChild(td_element3); |
---|
| 1271 | tr_element.appendChild(td_element4); |
---|
| 1272 | tr_element.appendChild(td_element5); |
---|
| 1273 | tr_element.appendChild(td_element6); |
---|
| 1274 | tbody_element.appendChild(tr_element); |
---|
| 1275 | table_element.appendChild(tbody_element); |
---|
| 1276 | openTab.content_id[numBox].appendChild(table_element); |
---|
| 1277 | } |
---|
| 1278 | draw_header_box(); |
---|
| 1279 | var table_element = document.createElement("TABLE"); |
---|
| 1280 | var tbody_element = document.createElement("TBODY"); |
---|
| 1281 | table_element.id = "table_box"; |
---|
| 1282 | table_element.className = "table_box"; |
---|
| 1283 | table_element.borderColorDark = "#bbbbbb"; |
---|
| 1284 | table_element.frame = "void"; |
---|
| 1285 | table_element.rules = "rows"; |
---|
| 1286 | table_element.cellPadding = "0"; |
---|
| 1287 | table_element.cellSpacing = "0"; |
---|
[2551] | 1288 | |
---|
[2676] | 1289 | table_element.onkeydown = function (e){ |
---|
| 1290 | if (is_ie) |
---|
| 1291 | { |
---|
| 1292 | if ((window.event.keyCode) == 46) |
---|
| 1293 | { |
---|
| 1294 | //delete_all_selected_msgs_imap(); |
---|
| 1295 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 1296 | } |
---|
| 1297 | } |
---|
| 1298 | else |
---|
| 1299 | { |
---|
| 1300 | if ((e.keyCode) == 46) |
---|
| 1301 | { |
---|
| 1302 | //delete_all_selected_msgs_imap(); |
---|
| 1303 | proxy_mensagens.delete_msgs(get_current_folder(),'selected','null'); |
---|
| 1304 | } |
---|
| 1305 | } |
---|
| 1306 | }; |
---|
| 1307 | if (is_ie) |
---|
| 1308 | table_element.style.cursor = "hand"; |
---|
[2551] | 1309 | |
---|
[2676] | 1310 | tbody_element.setAttribute("id", "tbody_box"); |
---|
| 1311 | table_element.appendChild(tbody_element); |
---|
[2551] | 1312 | |
---|
[2676] | 1313 | var _divScroll = document.getElementById("divScrollMain_"+numBox); |
---|
[2551] | 1314 | |
---|
[2676] | 1315 | var bar = document.getElementById("toolbar"); |
---|
| 1316 | var offset = 0; |
---|
[2551] | 1317 | |
---|
[2676] | 1318 | if(!_divScroll){ |
---|
| 1319 | _divScroll = document.createElement("DIV"); |
---|
| 1320 | _divScroll.id = "divScrollMain_"+numBox; |
---|
| 1321 | } |
---|
[2551] | 1322 | |
---|
[2676] | 1323 | _divScroll.style.overflowY = "auto"; |
---|
| 1324 | _divScroll.style.overflowX = "hidden"; |
---|
| 1325 | _divScroll.style.width ="100%"; |
---|
[2551] | 1326 | |
---|
[2676] | 1327 | if (is_mozilla){ |
---|
| 1328 | _divScroll.style.overflow = "-moz-scrollbars-vertical"; |
---|
| 1329 | _divScroll.style.width ="99.3%"; |
---|
| 1330 | } |
---|
| 1331 | // Inicio: Redimensiona DIV SCROLL |
---|
| 1332 | var bar = Element("toolbar"); |
---|
| 1333 | var offset = 0; |
---|
| 1334 | if(bar.style.visibility != 'hidden') |
---|
| 1335 | offset = (bar.offsetHeight ? bar.offsetHeight : bar.clientHeight); |
---|
| 1336 | var screenHeight = document.body.clientHeight ? document.body.clientHeight : document.body.offsetHeight; |
---|
| 1337 | var defaultHeight = screenHeight - offset; |
---|
| 1338 | _divScroll.style.height = defaultHeight - 110; |
---|
| 1339 | Element('content_folders').style.height = defaultHeight - (is_ie ? 165 : 150); |
---|
| 1340 | // Fim: Redimensiona DIV SCROLL |
---|
| 1341 | _divScroll.appendChild(table_element); |
---|
| 1342 | openTab.content_id[numBox].appendChild(_divScroll); |
---|
[2551] | 1343 | |
---|
[2676] | 1344 | var f_unseen = 0; |
---|
[2551] | 1345 | |
---|
[2676] | 1346 | if (headers_msgs.num_msgs == 0){ |
---|
| 1347 | var tr_info = document.createElement("TR"); |
---|
| 1348 | var td_info = document.createElement("TD"); |
---|
| 1349 | td_info.setAttribute("colspan", "10"); |
---|
| 1350 | td_info.setAttribute("background", "#FFF"); |
---|
| 1351 | tr_info.setAttribute("id", "msg_info"); |
---|
| 1352 | td_info.align = "center"; |
---|
| 1353 | td_info.style.padding = "25px"; |
---|
| 1354 | td_info.style.fontWeight = "bold"; |
---|
| 1355 | td_info.style.fontSize = "11pt"; |
---|
| 1356 | td_info.innerHTML = get_lang("This mail box is empty"); |
---|
| 1357 | tr_info.appendChild(td_info); |
---|
| 1358 | tbody_element.appendChild(tr_info); |
---|
| 1359 | } |
---|
[2551] | 1360 | |
---|
| 1361 | |
---|
[2676] | 1362 | for (var i=0; i < headers_msgs.length; i++){ |
---|
| 1363 | if ((headers_msgs[i].Unseen == 'U') || (headers_msgs[i].Recent == 'N')) |
---|
| 1364 | f_unseen++; |
---|
| 1365 | tr_element = make_tr_message(headers_msgs[i], msg_folder); |
---|
| 1366 | if (tr_element){ |
---|
| 1367 | tbody_element.appendChild(tr_element); |
---|
| 1368 | add_className(tr_element, i%2 != 0 ? 'tr_msg_read2' : 'tr_msg_read'); |
---|
| 1369 | } |
---|
| 1370 | _dragArea.makeDragged(tr_element, headers_msgs[i].msg_number, headers_msgs[i].subject, true); |
---|
| 1371 | } |
---|
[2551] | 1372 | |
---|
[2676] | 1373 | if ((preferences.use_shortcuts == '1') && (headers_msgs[0])) |
---|
| 1374 | select_msg(headers_msgs[0].msg_number, 'null', true); |
---|
[2551] | 1375 | |
---|
[2676] | 1376 | var tdFolders = Element("folderscol"); |
---|
| 1377 | tdFolders.style.display = preferences.hide_folders == '1' ? "none" : ""; |
---|
| 1378 | if ( !currentTab ) |
---|
| 1379 | alternate_border(numBox); |
---|
| 1380 | draw_footer_box(headers_msgs.num_msgs); |
---|
| 1381 | Element('main_table').style.display = ''; |
---|
| 1382 | if(debug) { |
---|
| 1383 | var _eTime = new Date(); |
---|
| 1384 | _eTime = _eTime.getTime(); |
---|
| 1385 | alert("Carregou em "+(_eTime - _bTime)+" ms"); |
---|
| 1386 | } |
---|
| 1387 | var msg_folder = Element('msg_folder').value; |
---|
| 1388 | var msg_number = Element('msg_number').value; |
---|
| 1389 | if(!msg_folder && msg_number) { |
---|
| 1390 | new_message('new','null'); |
---|
| 1391 | } |
---|
| 1392 | else if(msg_folder && msg_number){ |
---|
| 1393 | expresso.connector.cacheNextRequest(); |
---|
| 1394 | cExecute("expressoMail1_2.imap_functions.get_info_msg&msg_number="+ msg_number + "&msg_folder=" + url_encode(msg_folder), show_msg); |
---|
| 1395 | Element('msg_folder').value = ''; |
---|
| 1396 | Element('msg_number').value = ''; |
---|
| 1397 | } |
---|
[2551] | 1398 | |
---|
[2676] | 1399 | if(!is_ie) { |
---|
| 1400 | var scripts = new Array("jscode/ccQuickAdd", |
---|
| 1401 | "jscode/color_palette", |
---|
| 1402 | "jscode/filter", |
---|
| 1403 | "jscode/filters", |
---|
| 1404 | "jscode/html2xhtml", |
---|
| 1405 | "jscode/preferences", |
---|
| 1406 | "jscode/QuickCatalogSearch", |
---|
| 1407 | "jscode/QuickSearchUser", |
---|
| 1408 | "jscode/rich_text_editor", |
---|
| 1409 | "jscode/sharemailbox", |
---|
| 1410 | "jscode/search", |
---|
| 1411 | "jscode/TreeS", |
---|
| 1412 | "jscode/TreeShow"); |
---|
[2551] | 1413 | |
---|
[2676] | 1414 | expresso.connector.loadAllScripts(scripts); |
---|
| 1415 | } |
---|
| 1416 | // Loading Quota View Folder Component (if exists...) |
---|
| 1417 | if(Element("table_quota")) |
---|
| 1418 | expresso.connector.loadScript("jscode/InfoQuota"); |
---|
| 1419 | }; |
---|
[2551] | 1420 | |
---|
| 1421 | |
---|
| 1422 | |
---|