- Timestamp:
- 08/13/12 08:33:25 (12 years ago)
- Location:
- sandbox/newExpressoMail/expressoMail1_2
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/newExpressoMail/expressoMail1_2/index.php
r6858 r6997 234 234 235 235 $_SESSION['phpgw_info']['user']['preferences']['expressoMail']['auto_close_first_tab'] = $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['auto_close_first_tab'] ? $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['auto_close_first_tab'] : "0"; 236 236 237 237 $template = CreateObject('phpgwapi.Template',PHPGW_APP_TPL); 238 238 $template->set_var("txt_loading",lang("Loading")); -
sandbox/newExpressoMail/expressoMail1_2/js/abas.js
r6960 r6997 1 1 var BordersArray = new Array(); 2 BordersArray[0] = new setBorderAttributes(0);3 2 var countBorders = 0; 4 3 var partMsgs = new Array(); … … 7 6 var zebraDiscardEventDialog = false; 8 7 var saveBorderError = new Array(); 8 var countID = 2; 9 var tab_content = ""; 9 10 10 function setBorderAttributes(ID) 11 { 12 this.border_id = "border_id_"+ID; 13 this.sequence = ID; 14 } 11 var ptabs = $("#ptabs").tabs({ 12 tabTemplate: "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close'>Remover Aba</span></li>", 13 add: function( event, ui ) { 14 countID++; 15 $(ptabs).tabs('select', '#' + ui.panel.id); 16 $.cookie('open_tabs', ($.cookie('open_tabs') ? $.cookie('open_tabs')+"," : "") +ui.panel.id.substring(6)); 17 $( ui.panel ).append("<p>"+tab_content+"</p>"); 18 }, 19 show: function(event, ui){ 20 resizeWindow(); 21 }, 22 cookie: { 23 expires: 1 24 } 25 }); 15 26 16 17 function alternate_border(ID) 18 { 19 msg_selected = false;//Controle da seleção de mensagens 20 if(isNaN(ID)) 21 if(preferences.use_shortcuts == "1") 22 select_msg((ID.split("_"))[0]); 23 if( document.getElementById("div_menu_c3") != null ) 24 { 25 var node = document.getElementById("div_menu_c3").firstChild; 26 27 while ( node ) 28 { 29 node.style.display = "none"; 30 node = node.nextSibling; 31 } 32 33 if( document.getElementById("span_paging"+ID) != null ) 34 document.getElementById("span_paging"+ID).style.display = "block"; 35 } 36 37 if ( typeof win == 'object' && win.close && win.close.constructor == Function ){ 38 var search_win = document.getElementById( 'window_QuickCatalogSearch' ); 39 if(search_win){ 40 search_win.style.visibility = 'hidden'; 41 } 42 win.close( ); 43 } 44 45 if (! Element('border_id_'+ID)) 46 return false; // Not possible to alternate 47 show_hide_span_paging(ID); 48 spanD = Element("span_D"); 49 if (spanD) 50 spanD.style.display = (openTab.type[ID] == 0 ? '' : 'none'); 51 52 var footer_menu = Element("footer_menu"); 53 var aba = Element('border_id_'+ID); 54 if (footer_menu != null) { 55 footer_menu.style.display = (openTab.type[ID] != 4 ? '' : 'none'); 56 var alternate_menu = document.getElementById('localOption'); 57 58 if(alternate_menu != null && alternate_menu != 'undefined'){ //Quando Carregado o expresso mail 59 if(openTab.imapBox[ID]!= null && openTab.imapBox[ID]!= 'undefined' ){ //Quando abrir uma Nova Mensagem 60 if((openTab.imapBox[ID].indexOf("local_") >= 0)){ 61 alternate_menu.title = get_lang("Unarchive"); 62 alternate_menu.removeAttribute("onclick"); 63 if(!is_ie) 64 alternate_menu.setAttribute("onclick", 'expresso_local_messages.unarchive_msgs(\''+openTab.imapBox[ID]+'\', null)'); 65 else{ 66 alternate_menu.onclick = function(){ 67 expresso_local_messages.unarchive_msgs(openTab.imapBox[ID], null); 68 } 69 } 70 alternate_menu.innerHTML = get_lang("Unarchive"); 71 72 }else{ 73 alternate_menu.title = get_lang("Archive"); 74 alternate_menu.removeAttribute("onclick"); 75 if(!is_ie) 76 alternate_menu.setAttribute("onclick", 'archive_msgs(\''+openTab.imapBox[ID]+'\', null)'); 77 else{ 78 alternate_menu.onclick = function(){ 79 archive_msgs(openTab.imapBox[ID], null); 80 } 81 } 82 alternate_menu.innerHTML = get_lang("Archive"); 83 } 84 85 } 86 } 87 88 if((aba.id.indexOf("_r") < 0) && (aba.id.indexOf("_0") < 0) && (aba.id.indexOf("id_search_") < 0) && (aba.id.indexOf("_s") < 0)){ 89 spanD.style.display = 'none'; 90 footer_menu.style.display = 'none'; 91 } 92 } 93 94 95 var len = BordersArray.length; 96 for (var i=0; i < len; i++) 97 { 98 m = document.getElementById(BordersArray[i].border_id); 99 if ((m)&&(m.className == 'menu-sel')) 100 { 101 m.className = 'menu'; 102 c = document.getElementById("content_id_"+BordersArray[i].sequence); 103 c.style.display = 'none'; 104 if(Element("font_border_id_"+BordersArray[i].sequence)) 105 Element("font_border_id_"+BordersArray[i].sequence).className = 'font-menu'; 106 107 } 108 } 109 110 m = Element("border_id_"+ID); 111 if (m) 112 m.className = 'menu-sel'; 113 if(Element("font_border_id_" + ID)) 114 Element("font_border_id_" + ID).className = 'font-menu-sel'; 115 var c = Element("content_id_"+ID) 116 if (c) 117 c.style.display = ''; 118 119 120 // hide the DropDrowContact, if necessary 121 window_DropDownContacts = Element('tipDiv'); 122 if ((window_DropDownContacts)&&(window_DropDownContacts.style.visibility != 'hidden')){ 123 window_DropDownContacts.style.visibility = 'hidden'; 124 } 125 126 numBox = getNumBoxFromTabId(ID); 127 if (typeof(ID)=='number') { 128 numBox = ID; 129 } 130 else { 131 if (ID.match("search_")) 132 { 133 if (ID.match("search_local_msg")) 134 { 135 var p = ID.search(/[0-9]/); 136 numBox = ID.substr(p); 137 } 138 else 139 { 140 numBox = ID.substr(7); 141 } 142 } 143 } 144 currentTab=ID; 145 if( document.getElementById('to_'+ID) && document.getElementById('to_'+ID).type == "textarea"){ 146 document.getElementById('to_'+ID).focus(); 147 } 148 if (ID == 0){ 149 updateSelectedMsgs(); 150 } 151 RichTextEditor.setEditable(ID); 152 resizeWindow(); 153 return ID; 154 } 155 156 function create_border(borderTitle, id_value, search) 157 { 158 borderTitle = ( ( borderTitle && borderTitle.constructor == String && borderTitle.length > 0 ) ? borderTitle : ' ' ); 159 borderTitle = html_entities(borderTitle); 160 var resize = false; 161 resize = resize_borders(); 162 if (!resize){ 163 var str_continue = ''; 164 var bolContinue = true; 165 str_continue = '\n' + get_lang('You must manually close one of your tabs before opening a new one'); 166 if (preferences.auto_close_first_tab == 1){ 167 var children = Element('border_tr').childNodes; 168 var bolDelete = true; 169 for (var i=0; i<children.length; i++) { 170 if ((children[i].nodeName === 'TD') && (children[i].id!=='border_id_0') && (children[i].id!=='border_blank')) 171 { 172 bolDelete = true; 173 var num_child = children[i].id.toString().substr(10); 174 alternate_border(num_child); 175 if (editTest(num_child)){ 176 bolDelete = false; 177 } 178 if (bolDelete || bolContinue){ 179 str_fechar = '\n' + get_lang('Reached maximum tab limit. Want to close this tab'); 180 var confirmacao = confirm(str_fechar); 181 if(confirmacao){ 182 bolContinue = false; 183 delete_border(num_child, 'false'); 184 break; 185 }else{ 186 return 'maximo'; 187 } 188 } 189 } 190 } 191 }else{ 192 alert(get_lang('Reached maximum tab limit') + str_continue ); 193 return 'maximo'; 194 } 195 } 196 197 if (! id_value){ // Is new message? 198 var ID = parseInt(BordersArray[(BordersArray.length-1)].sequence) + 1; 199 if(isNaN(ID)){ 200 var aux = BordersArray[(BordersArray.length-1)].sequence.split("_"); 201 ID = parseInt(aux[1]) + 1; 202 } 203 }else 204 { 205 if (Element("border_id_"+id_value)) // It's opened already! 206 return alternate_border(id_value); 207 208 var ID = id_value; 209 if(isNaN(ID) && ID.indexOf("search_local") >= 0){ 210 if(current_folder.indexOf("local") >= 0) 211 openTab.imapBox[ID] = current_folder; 212 else 213 openTab.imapBox[ID] = 'local_search'; 214 }else if(isNaN(ID) && ID.indexOf("search_") >= 0){ 215 if(current_folder.indexOf("local") < 0) 216 openTab.imapBox[ID] = current_folder; 217 else 218 openTab.imapBox[ID] = 'search'; 219 }else if( (currentTab != 0) && isNaN(currentTab) && (currentTab.indexOf("search") >= 0) && (ID.indexOf("msg") < 0) ) { 220 var id_border = currentTab.replace(/[a-zA-Z_]+/, ""); 221 ID_TR = ID.toString().substr(0,ID.toString().indexOf("_r")); 222 var tr = Element(ID_TR); 223 openTab.imapBox[ID] = (tr.getAttribute('name') == null?get_current_folder():tr.getAttribute('name')); 224 }else 225 openTab.imapBox[ID] = current_folder; 226 } 227 td = document.createElement("TD"); 228 td.id="border_id_" + ID; 229 if(resize) 230 { 231 td.setAttribute("width", parseInt(resize)+"px"); 232 td.style.width = parseInt(resize)+"px"; 233 } 234 else 235 td.setAttribute("width", "200px"); 236 237 td.setAttribute("align", "right"); 238 td.onclick = function(){alternate_border(ID);resizeWindow()}; 239 td.setAttribute("noWrap","true"); 240 td.alt = ' '; 241 td.title = borderTitle; 242 borderTitle = borderTitle ? borderTitle : id_value ? get_lang("No Subject") : " " ; 243 td.value = borderTitle; 244 if (borderTitle.length > 21) 245 borderTitle = borderTitle.substring(0,21) + "..."; 246 247 if ( resize ) 248 borderTitle = borderTitle.substring(0, resize*0.08); 249 250 var cc = search; 251 if(!cc){ 252 if(isNaN(ID)){ 253 var is_local = ID.match('.*_local_.*'); 254 if(!is_local) 255 cc = document.getElementById("em_message_search").value; 256 else{ 257 cc = document.getElementsByName(currentTab)[0].value; 258 } 259 }else{ 260 cc =""; 261 } 262 } 263 td.innerHTML = "<div><div id='font_border_id_" + ID+"' class='font-menu'>" + 264 borderTitle + 265 "</div>\n\ 266 <div style='float:right;'>\n\ 267 <img onmousedown='javascript:return false' style='cursor:pointer' onclick=delete_border('" + ID + "','false') src='templates/"+template+"/images/close_button.gif'/>\n\ " + 268 "</div>\n\ " + 269 "<input type=\"hidden\" name=\""+ ID+"\" value=\""+cc+"\"></div>"; 270 bb = document.getElementById("border_blank"); 271 parent_bb = bb.parentNode; //Pego o tbody 272 parent_bb.insertBefore(td, bb); 273 274 if((typeof(id_value) == 'string') && id_value.match(/_r/)){ 275 $(td).draggable({ 276 start : function(){ 277 if($(".shared-folders").length){ 278 $(".shared-folders").parent().find('.folder:not(".shared-folders")').droppable({ 279 over : function(a, b){ 280 //SETA BORDA EM VOLTA DA PASTA 281 over = $(this); 282 $(this).addClass("folder-over"); 283 if(($(this)[0] != $(this).parent().find(".head_folder")[0])) 284 if($(this).prev()[0]) 285 if($(this).parent().find(".expandable-hitarea")[0] == $(this).prev()[0]){ 286 setTimeout(function(){ 287 if(over.hasClass("folder-over")) 288 over.prev().trigger("click"); 289 }, 500); 290 291 } 292 }, 293 out : function(){ 294 //RETIRA BORDA EM VOLTA DA PASTA 295 $(this).removeClass("folder-over"); 296 }, 297 //accept: ".draggin_mail", 298 drop : function(event, ui){ 299 $(this).css("border", ""); 300 if($(this).parent().attr('id') == undefined){ 301 var folder_to = 'INBOX'; 302 var to_folder_title = get_lang("Inbox"); 303 }else{ 304 var folder_to = $(this).parent().attr('id'); 305 var to_folder_title = $(this).attr('title'); 306 } 307 var folder_to_move = ui.draggable.parent().attr('id'); 308 var border_id = ui.draggable.find("input[type=hidden]").attr("name"); 309 if(folder_to_move == "border_tr"){ 310 var id_msg = border_id.split("_")[0]; 311 folder = $("#input_folder_"+border_id+"_r")[0] ? $("#input_folder_"+border_id+"_r").val() : (openTab.imapBox[border_id] ? openTab.imapBox[border_id]:get_current_folder()); 312 move_msgs2(folder, id_msg, border_id, folder_to, to_folder_title,true); 313 return refresh(); 314 } 315 } 316 }); 317 } 318 }, 319 stop :function(){ 320 $(".shared-folders").parent().find(".folder").droppable("destroy"); 321 }, 322 helper: function(event){ 323 if( borderTitle.length > 18 ) 324 return $("<td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : borderTitle.substring(0,18) + "...", type: "messages"})+"</td>"); 325 else 326 return $("<td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : borderTitle, type: "messages"})+"</td>"); 327 }, 328 delay: 150, 329 cursorAt: {top: 5, left: 56}, 330 refreshPositions: true , 331 containment: "#divAppbox" 332 }); 333 } 334 //_dragArea.makeDragged(td, id_value,td.value); 335 336 BordersArray[BordersArray.length] = new setBorderAttributes(ID); 337 338 var div = document.createElement("DIV"); 339 div.id = "content_id_" + ID; 340 div.className = "conteudo"; 341 div.style.display=''; 342 343 div.style.overflow = "hidden"; 344 345 Element("exmail_main_body").insertBefore(div,Element("footer_menu")); 346 if (!is_ie) 347 resizeWindow(); 348 alternate_border(ID); 349 uidsSave[ID] = []; 350 saveBorderError[ID] = false; 351 return ID; 352 } 353 354 function resize_borders() 355 { 356 var numBorders = count_borders(); 357 358 if (numBorders > 8) 359 return false; 360 361 return redim_borders(numBorders+1); 362 } 363 364 function count_borders() 365 { 366 var numBorders = 0; 367 var children = Element('border_tr').childNodes; 368 for (var i=0; i<children.length; i++) { 369 if ((children[i].nodeName === 'TD') && (children[i].id!=='border_id_0') && (children[i].id!=='border_blank')) 370 numBorders++; 371 } 372 373 return numBorders; 374 } 375 376 function redim_borders(numBorders) 377 { 378 var children = Element('border_tr').childNodes; 379 var clientWidth = (window.document.body.clientWidth - findPosX(Element("exmail_main_body"))) - Element("border_id_0").clientWidth - 30; 380 var newWidthTD = (clientWidth/numBorders)-6; 381 newWidthTD = newWidthTD > 200 ? 200 : (newWidthTD < 50 ? 50 : newWidthTD); 382 children = Element('border_tr').childNodes; 383 for (var i=0; i<children.length; i++) { 384 if ((children[i].nodeName === 'TD') && (children[i].id!=='border_id_0') && (children[i].id!=='border_blank')){ 385 $(children[i]).css("width", newWidthTD); 386 $(children[i]).find('div:first').css("width", newWidthTD); 387 set_border_caption(children[i].id, children[i].title, newWidthTD); 388 } 389 } 390 return newWidthTD; 391 } 392 393 394 395 396 function set_border_caption(border_id, title, border_width) 397 { 398 var border = document.getElementById(border_id); 399 if (border_width == null) 400 { 401 border_width = border.clientWidth; 402 } 403 var caption = ""; 404 if (border != null){ 405 Element("font_"+border.id).style.width = (border_width - 35)+'px'; 406 Element("font_"+border.id).innerHTML = title; 407 } 408 return(title); 409 } 410 411 412 function draftTests(ID, msg_sent){ 413 414 415 if( openTab.toPreserve[ID] = false) 416 { 417 close_delete(ID, msg_sent); 418 delete(openTab.type[ID]); 419 } 420 else 421 { 422 var msg = 'Existem alterações não salvas na mensagem.'; 423 var buttons = ['Descartar alterações', 'Salvar e fechar' ,'Cancelar']; 424 var width = 371; 425 if($('#fileupload_msg'+ID).find('.in-progress').length) 426 { 427 msg = 'Existem anexos sendo enviados para o servidor.'; 428 buttons = ['Descartar alterações e anexos', 'Salvar estado atual fechar', 'Continuar editando']; 429 width = 560; 430 } 431 zebraDiscardEventDialog = true; 432 window.setTimeout(function() { 433 $.Zebra_Dialog(msg, { 434 'type': 'question', 435 'overlay_opacity': '0.5', 436 'buttons': buttons, 437 'width' : width, 438 'onClose': function(clicked) { 439 if(clicked == 'Cancelar'){ 440 if (RichTextEditor.plain[id] != true) 441 setTimeout("RichTextEditor.focus("+ID+")",100); 442 else 443 $('#body_'+ID).focus(); 444 } 445 if(clicked == 'Descartar alterações' || clicked == 'Descartar alterações e anexos' ) { 446 if (openTab.imapBox[ID] && !openTab.toPreserve[ID]) 447 openTab.toPreserve[ID] = false; 448 449 delete(openTab.type[ID]); 450 close_delete(ID, msg_sent); 451 } 452 else if(clicked == 'Salvar e fechar' || clicked == 'Salvar estado atual fechar') 453 { 454 save_msg(ID); 455 openTab.toPreserve[ID] = false; 456 close_delete(ID, msg_sent); 457 delete(openTab.type[ID]); 458 } 459 else{ 460 461 Element("border_id_"+ID).onclick = function () {alternate_border(ID);}; 462 var setFocus = function(ID){ 463 if ($.trim($("#to_"+ID).val()) == "") 464 $("#to_"+ID).focus(); 465 else if ($("#tr_cc_"+ID).css('display') != 'none' && $.trim($("#cc_"+ID).val()) == "") 466 $("#cc_"+ID).focus(); 467 else if ($("#tr_cco_"+ID).css('display') != 'none' && $.trim($("#cco_"+ID).val()) == "") 468 $("#cco_"+ID).focus(); 469 else if ($.trim($("#subject_"+ID).val()) == "") 470 $("#subject_"+ID).focus(); 471 else{ 472 if (RichTextEditor.plain[id] != true) 473 setTimeout("RichTextEditor.focus("+ID+")",100); 474 else 475 $('#body_'+ID).focus(); 476 } 477 } 478 setFocus(ID); 479 } 480 window.setTimeout(function() { 481 zebraDiscardEventDialog = false; 482 }, 500); 483 }})}, 300); 484 } 485 486 } 487 488 function editTest(ID){ 489 var body = document.getElementById('body_'+ ID); 490 var content = $('#content_id_'+ ID); 491 if (body) 492 { 493 var save_link = content.find(".save"); 494 if (openTab.toPreserve[ID] == undefined) 495 openTab.toPreserve[ID] = false; 496 if (((! openTab.toPreserve[ID] && ! ID.toString().match("_r")) || ((body.contentWindow) == 'object' && body.contentWindow.document.designMode.toLowerCase() == 'on')) && (save_link.onclick != '')) 497 { 498 return true; 499 } 500 } 501 return false; 502 } 503 504 function delete_border(ID, msg_sent) 505 { 506 507 if($("#border_id_"+ID).attr("title") == get_lang("New Message")){ 508 var to = $("#content_id_"+ID).find(".to").parent(".email-area").find("div").length || $("#content_id_"+ID).find(".email-area").find(".to").val(); 509 var cc = $("#content_id_"+ID).find(".cc").parent(".email-area").find("div").length || $("#content_id_"+ID).find(".email-area").find(".cc").val(); 510 var cco = $("#content_id_"+ID).find(".cco").parent(".email-area").find("div").length || $("#content_id_"+ID).find(".email-area").find(".cco").val(); 511 var subject = $("#content_id_"+ID).find(".subject").val(); 512 var auxAttachments = false; 513 var attachments = $("#content_id_"+ID).find("ul.attachments-list").find("li").each(function(){ 514 ($(this).find("p").length > 0) ? auxAttachments = true : auxAttachments; 515 if(auxAttachments) 516 return false; 517 }); 518 var textArea = RichTextEditor.getData("body_"+ID); 519 520 if(!to && !cc && !cco && !auxAttachments && subject == "" && textArea == "") 521 { 522 var borderElem = Element("border_id_" + ID); 523 borderElem.onclick = null; 524 close_delete(ID, msg_sent); 525 } 526 } 527 var bolExecuteClose = true; 528 var borderElem = Element("border_id_" + ID); 529 if (borderElem){ 530 borderElem.onclick = null; // It's avoid a FF3 bug 531 }else{ 532 return false; 533 } 534 if (msg_sent == 'false') 535 { 536 if (editTest(ID)){ 537 bolExecuteClose = false; 538 if(zebraDiscardEventDialog === false) 539 return(draftTests(ID, msg_sent)); 540 } 541 } 542 if (bolExecuteClose) 543 { 544 close_delete(ID, msg_sent); 545 } 546 delete(openTab.type[ID]); 547 return true; 548 } 549 550 function close_delete(ID, msg_sent) 551 { 552 openTab.toPreserve[ID] = false; 553 // Limpa o autosave 554 if (preferences.auto_save_draft == 1 && autoSaveControl.timer[ID] !== null ) 555 { 556 autoSaveControl.status[ID] = null; 557 clearInterval(autoSaveControl.timer[ID]); 558 } 559 //////////////////////////////// 560 561 hold_session = false; 562 if (exist_className(Element('border_id_'+ID),'menu-sel')) 563 { 564 if (BordersArray[BordersArray.length-2].sequence == ID) 565 this.alternate_border(0); 566 else 567 this.alternate_border(BordersArray[BordersArray.length-2].sequence); 568 } 569 570 // Remove TD, title 571 border = Element('border_id_' + ID); 572 border.parentNode.removeChild(border); 573 var j=0; 574 var new_BordersArray = new Array(); 575 for (i=0;i<BordersArray.length;i++) 576 if (document.getElementById(BordersArray[i].border_id) != null){ 577 new_BordersArray[j] = BordersArray[i]; 578 j++; 579 } 580 if(j == 1) 581 Element("footer_menu").style.display = ''; 582 BordersArray = new_BordersArray; 583 584 // Remove Div Content 585 content = Element('content_id_' + ID); 586 content.parentNode.removeChild(content); 587 if(is_webkit) 588 resizeWindow(); 589 RichTextEditor.destroy( 'body_'+ID ); 590 delete msgAttachments[ID]; 591 //Caso for uma mensagem anexada tem que deletar ela da lixeira apos fechar a aba 592 var isPartMsg = false; 593 if(!parseInt(id2)) 594 return; 595 var id2 = ID.replace('_r',''); 596 for(var ii = 0; ii < partMsgs.length; ii++) 597 if(partMsgs[ii] == id2){ 598 isPartMsg = true; 599 partMsgs[ii] = null; 600 } 601 602 if(isPartMsg === true){ 603 var handler_delete_msg = function(){}; 604 cExecute ("$this.imap_functions.delete_msgs&folder=INBOX"+cyrus_delimiter+trashfolder+"&msgs_number="+id2,handler_delete_msg); 605 } 606 /////////////////////////////////////////////////////////////////////////////////// 607 608 return true; 609 } 610 611 function getTabPrefix() { // define o prefixo para os checkboxes das mensagens 612 if (typeof(currentTab)!='number') 613 return currentTab+"_"; 614 else 615 return ""; 616 } 617 618 function getMessageIdFromRowId(row_id) { // extrai o id da mensagem do id da linha 619 var p = row_id.search("_s"); 620 if (p>0) 621 return row_id.substr(0,p); 622 else 623 return row_id; 624 } 625 626 function getNumBoxFromTabId(tab_id) { // extrai o numBox do id da tab 627 if (typeof(tab_id)=='number') { 628 return tab_id; 629 } 630 else { 631 var p = tab_id.search(/[0-9]/); 632 return tab_id.substr(p); 27 //CREATE A NEW TAB 28 function createTab(href, label, conteudo, callback){ 29 if( !$("#ptabs_"+href).length){ 30 tab_content = conteudo; 31 $(ptabs).tabs("add", "#ptabs_"+href, (label.length > 21 ? label.substring(0, 15)+"..." : label)); 32 if(callback) 33 callback(); 34 }else{ 35 var index = $( "li", $(ptabs) ).index( $('[href="#ptabs_'+ href +'"]').parent() ); 36 $(ptabs).tabs( "select", index ); 633 37 } 634 38 } 635 636 function addAttachment(ID, att)637 {638 if(typeof(msgAttachments[ID]) == 'undefined')639 msgAttachments[ID] = [];640 641 msgAttachments[ID].push(att);642 }643 644 function delAttachment(ID, att)645 {646 647 if(msgAttachments[ID] == undefined) return;648 var len = msgAttachments[ID].length;649 for(var i = 0; i < len; i++)650 {651 if(msgAttachments[ID][i] == att)652 {653 delete msgAttachments[ID][i];654 break;655 }656 }657 }658 659 function listAttachment(ID)660 {661 return (typeof(msgAttachments[ID]) == 'undefined') ? '' : JSON.stringify(msgAttachments[ID]);662 }663 -
sandbox/newExpressoMail/expressoMail1_2/js/common_functions.js
r6930 r6997 82 82 content_folders.style.height = (clientHeight - (contentFoldersY + (contentFoldersY > findPosY(search_div) ? 0 : (search_div.clientHeight ? search_div.clientHeight : search_div.offsetHeight) + 5))) + "px"; 83 83 } 84 redim_borders(count_borders());84 //redim_borders(count_borders()); 85 85 resizeMailList(); 86 86 } -
sandbox/newExpressoMail/expressoMail1_2/js/draw_api.js
r6975 r6997 446 446 folder=get_current_folder(); 447 447 var msgs = expresso_local_messages.get_local_range_msgs(folder.substr(6),msg_range_begin,preferences.max_email_per_page,sort_box_type,sort_box_reverse,search_box_type,preferences.preview_msg_subject,preferences.preview_msg_tip); 448 alternate_border(0);448 //alternate_border(0); 449 449 draw_box(msgs, folder, true); 450 450 draw_paging(msgs.num_msgs); … … 526 526 if(!verify_session(data)) 527 527 return; 528 alternate_border(0); 528 //alternate_border(0); 529 529 530 var title = lang_folder(folder_name); 530 531 if (title.length > 18) title = title.substring(0,18) + "..."; 531 Element("border_id_0").innerHTML = " " + title + ' <font face="Verdana" size="1" color="#505050">[<span id="new_m"> </span> / <span id="tot_m"></span>]</font>'; 532 $("#ptabs li:first a").html(" " + title + ' <font face="Verdana" size="1" color="#505050">[<span id="new_m"> </span> / <span id="tot_m"></span>]</font>'); 533 $(ptabs).tabs( "select", 0 ); 532 534 draw_box(data, folder, true); 533 535 draw_paging(data.num_msgs); … … 1267 1269 numBox = 0; //As pastas sempre estarão na aba 0 1268 1270 1269 openTab.content_id[numBox] = document.getElementById(" content_id_"+numBox);1270 openTab.content_id[numBox].innerHTML = "";1271 openTab.content_id[numBox] = document.getElementById("ui-tabs-"+numBox); 1272 //openTab.content_id[numBox].innerHTML = ""; 1271 1273 openTab.imapBox[numBox] = msg_folder; 1272 1274 openTab.type[numBox] = 0; … … 1562 1564 tdFolders.style.display = preferences.hide_folders == '1' ? "none" : ""; 1563 1565 if ( !currentTab ) 1564 alternate_border(numBox);1566 // alternate_border(numBox); 1565 1567 draw_footer_box(headers_msgs.num_msgs); 1566 1568 Element('main_table').style.display = ''; … … 1568 1570 setTimeout("resizeWindow()",1); 1569 1571 else 1570 resizeWindow();1572 //resizeWindow(); 1571 1573 if(debug) { 1572 1574 var _eTime = new Date(); -
sandbox/newExpressoMail/expressoMail1_2/js/main.js
r6980 r6997 4 4 // 20000 = 20 segundos 5 5 var autosave_time = 40000; 6 6 7 var results_search_messages = ""; 7 8 var cabecalho = '<h4>ExpressoLivre - ExpressoMail</h4>'; … … 84 85 85 86 current_folder="INBOX"; 86 87 88 $( "#ptabs span.ui-icon-close" ).live( "click", function() { 89 var index = $( "li", $(ptabs) ).index( $( this ).parent() ); 90 $(ptabs).tabs( "remove", index ); 91 var teste = ""; 92 var ola = $( this ); 93 $.each($.cookie('open_tabs').split(","), function(index, value){ 94 if(value != ola.prev().attr("href").substring(7)){ 95 teste += value+","; 96 } 97 }); 98 $.cookie('open_tabs', teste.substring(0, teste.length-1)); 99 }); 100 101 $( "#ptabs").find( ".ui-tabs-nav" ).sortable({ 102 axis: "x", 103 items: "li:not(.ui-tab-disabled)", 104 placeholder: "ui-state-highlight" 105 }).disableSelection(); 106 107 if($.cookie('open_tabs')){ 108 if($.cookie('open_tabs') != ""){ 109 var selected = $.cookie('ui-tabs-1'); 110 var ola = $.cookie('open_tabs'); 111 $.cookie('open_tabs', ""); 112 $.each(ola.split(','), function(index, value){ 113 var msg_number = value.split("_r_")[0]; 114 var msg_folder = Base64.decode(value.split("_r_")[1]); 115 $.ajax({ 116 url: 'controller.php?' + $.param( {action: '$this.imap_functions.get_info_msg', 117 msg_number: msg_number, 118 msg_folder: msg_folder, 119 decoded: true } ), 120 async : false, 121 success: function( data ){ 122 data = connector.unserialize( data ); 123 if( data ) 124 show_msg( data ); 125 $(ptabs).tabs("select", parseInt(selected)); 126 }, 127 beforeSend: function( jqXHR, settings ){ 128 connector.showProgressBar(); 129 }, 130 complete: function( jqXHR, settings ){ 131 connector.hideProgressBar(); 132 } 133 }); 134 }); 135 } 136 } 137 87 138 if( (window.google && google.gears) && !google.gears.factory.getPermission()) 88 139 preferences.use_local_messages=0; … … 116 167 if (preferences.delete_trash_messages_after_n_days != 0) 117 168 cExecute ("$this.imap_functions.automatic_trash_cleanness&before_date="+preferences.delete_trash_messages_after_n_days+"&cyrus_delimiter="+cyrus_delimiter, handler_automatic_trash_cleanness); 118 169 119 170 //if(preferences.outoffice == "1") 120 171 // … … 141 192 $(".collapse_folders").addClass("ui-icon ui-icon-triangle-1-e").children().attr('title', "Expandir"); 142 193 refresh(); 143 resizeWindow();194 //resizeWindow(); 144 195 } 145 196 else{ 146 197 $(".collapse_folders").addClass("ui-icon ui-icon-triangle-1-w").children().attr('title', "Ocultar"); 147 198 refresh(); 148 resizeWindow();199 //resizeWindow(); 149 200 } 150 201 … … 172 223 $.cookie('collapse_folders', "false"); 173 224 refresh(); 174 resizeWindow();175 } 176 resizeWindow();225 //resizeWindow(); 226 } 227 //resizeWindow(); 177 228 178 229 }).hover( … … 496 547 } 497 548 else { 549 var sbj = msg_info.subject.length < 21 ? msg_info.subject : msg_info.subject.substr(0,21) + "..."; 550 createTab(id_msg_read,sbj, msg_info.body); 551 /* 498 552 var border_id = create_border(msg_info.subject, id_msg_read); 499 553 if(border_id) … … 514 568 } 515 569 else 516 return; 570 return; */ 517 571 } 518 572 … … 2132 2186 txtarea.css("height",height); 2133 2187 $("#border_id_" + new_border_ID).attr("title", title); 2134 set_border_caption("border_id_" + new_border_ID, title);2135 resizeWindow();2188 // set_border_caption("border_id_" + new_border_ID, title); 2189 // resizeWindow(); 2136 2190 return new_border_ID; //Preciso retornar o ID da nova mensagem. 2137 2191 } -
sandbox/newExpressoMail/expressoMail1_2/templates/default/index.tpl
r6487 r6997 99 99 <td width="100%" valign="top" align="left"> 100 100 <div id="exmail_main_body" class="messagescol"> 101 <table id="border_table" width="auto" height="26" cellspacing="0" cellpadding="0" border="0"> 102 <tbody id="border_tbody"> 103 <tr id="border_tr"> 104 <td nowrap class="menu" onClick="alternate_border(0);resizeWindow();" id="border_id_0"> 105 {lang_inbox} <font face="Verdana" size="1" color="#505050">[ 106 <span id="new_m">0</span> / 107 <span id="tot_m">0</span>] 108 </font> 109 </td> 110 <td nowrap id="border_blank" class="last_menu" width="100%"> </td> 111 </tr> 112 </tbody> 113 </table> 114 <div id="content_id_0" class="conteudo"></div> 101 <div id="ptabs"> 102 <ul> 103 <li class="ui-tab-disabled" style="opacity: 100;"> 104 <a href="#ui-tabs-0"> {lang_inbox} <font face="Verdana" size="1" color="#505050"> 105 [<span id="new_m">0</span> / <span id="tot_m">0</span>]</font> 106 </a> 107 </li> 108 </ul> 109 <div id="ui-tabs-0"> 110 <table class="fuu" id="message_attacher_grid"> 111 <tr> 112 <td/> 113 </tr> 114 </table> 115 <div id="message_attacher_grid_pager"></div> 116 </div> 117 </div> 115 118 <div id="footer_menu"> 116 119 <table style="border-top:0px solid black" id="footer_box" cellpadding=0 cellspacing=0 border=0 width="100%" height="10px"> -
sandbox/newExpressoMail/expressoMail1_2/templates/default/main.css
r6930 r6997 1457 1457 background-color: #5194d2; 1458 1458 } 1459 1460 .ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a{ 1461 font-size: 10px; 1462 } 1463 1464 .ui-tabs .ui-tabs-nav li a:hover, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a:hover{ 1465 text-decoration: none !important; 1466 } 1467 1468 .ui-tabs .ui-tabs-panel{ 1469 width: 99.7%; 1470 margin-top: 0px !important; 1471 } 1472 1473 .ui-state-highlight { width: 60px; height: 23px; border-radius: 5px;}
Note: See TracChangeset
for help on using the changeset viewer.