- Timestamp:
- 03/06/13 15:59:48 (11 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/js/abas.js
r7913 r7972 303 303 var id_msg = border_id.split("_")[0]; 304 304 var folder = $("#input_folder_"+border_id+"_r")[0] ? $("#input_folder_"+border_id+"_r").val() : (openTab.imapBox[border_id] ? openTab.imapBox[border_id]:get_current_folder()); 305 attach_message(folder, id_msg , onceOpenedHeadersMessages); /* Anexa a mensagem especificada (por folder e id_msg)305 attach_message(folder, id_msg); /* Anexa a mensagem especificada (por folder e id_msg) 306 306 na mensagem sendo criada.*/ 307 307 } -
trunk/expressoMail1_2/js/draw_api.js
r7923 r7972 4757 4757 message_number: id da mensagem sendo anexada. 4758 4758 */ 4759 function attach_message (folder_name, message_number , message_cache) {4759 function attach_message (folder_name, message_number) { 4760 4760 var ID = currentTab; 4761 4761 var fileUploadMSG = $('#fileupload_msg'+ID); … … 4765 4765 att.uid = message_number; 4766 4766 att.type = 'imapMSG'; 4767 att.name = Base64.encode( message_cache[folder_name][message_number].subject + '.eml');4767 att.name = Base64.encode(onceOpenedHeadersMessages[folder_name][message_number].subject + '.eml'); 4768 4768 var idATT = JSON.stringify(att); 4769 4769 addAttachment(ID, idATT); 4770 4770 var attach = {}; 4771 attach.fileName = message_cache[folder_name][message_number].subject + '.eml';4772 attach.fullFileName = message_cache[folder_name][message_number].subject + '.eml';4771 attach.fileName = onceOpenedHeadersMessages[folder_name][message_number].subject + '.eml'; 4772 attach.fullFileName = onceOpenedHeadersMessages[folder_name][message_number].subject + '.eml'; 4773 4773 if(attach.fileName.length > 20){ 4774 4774 attach.fileName = attach.fileName.substr(0, 17) + "... " + attach.fileName.substr(attach.fileName.length - 9, attach.fileName.length); … … 4777 4777 attach.OK = true; 4778 4778 if (folder_name.indexOf('local_messages_') == 0){ 4779 attach.fileSize = formatBytes( message_cache[folder_name][message_number].size);4779 attach.fileSize = formatBytes(onceOpenedHeadersMessages[folder_name][message_number].size); 4780 4780 } else { 4781 attach.fileSize = formatBytes( message_cache[folder_name][message_number].Size);4781 attach.fileSize = formatBytes(onceOpenedHeadersMessages[folder_name][message_number].Size); 4782 4782 } 4783 4783 var upload = $(DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist.ejs", { … … 5242 5242 /* Anexa a mensagem especificada (por folder e id_msg) 5243 5243 na mensagem sendo criada.*/ 5244 attach_message(folder_name, message_number , onceOpenedMessages);5244 attach_message(folder_name, message_number); 5245 5245 } 5246 5246 }); -
trunk/prototype/modules/attach_message/attach_message.js
r7951 r7972 216 216 for (var message in selectedMessages[folder]) { 217 217 if (selectedMessages[folder][message]) { 218 byte_size += parseInt(onceOpened Messages[folder][message].size);218 byte_size += parseInt(onceOpenedHeadersMessages[folder][message].size); 219 219 total_messages++; 220 220 } … … 227 227 var msgAttacherGrid = $("#message_attacher_grid"), msgsTotal = $("#selected_messages_number"); 228 228 var lastLoadedMessages = []; 229 var onceOpenedMessages = [];230 229 var selectedMessages = {}; 231 230 var selectedFolder = {}; … … 536 535 lastLoadedMessages = data.rows; 537 536 $("#mailgrid-container").find(".loading").hide(); 538 //$(".attach-message-search-input").val(""); 537 539 538 // aplica o contador 540 539 jQuery('.timable').each(function (i) { … … 560 559 561 560 }, 562 onSelectRow: function (id, selected) { 563 var message = false; 564 for (var i=0; i<lastLoadedMessages.length; i++){ 565 if (lastLoadedMessages[i].msg_number == id) { 566 message = lastLoadedMessages[i]; 567 break; 568 } 569 } 570 var tabPanelTemplateId = 'mailpreview_tab_' + selectedFolder.id.replace(/[.\/]/g, '_') + '_' + message.msg_number; 571 var tabPanelTemplateId = tabPanelTemplateId.replace(/[\s\/]/g, '-'); 572 573 if (selected) { 574 if(selectedFolder['id'].indexOf("local_messages_") != -1){ 575 expresso_mail_archive.getPreviewToAttach(id); 576 577 var body = expresso_mail_archive.bodyPreview; 578 var subject = expresso_mail_archive.subjectPreview; 579 580 581 tabPanelTemplateLabel = subject.substring(0, $mailpreview_tabs_label_length) + '...'; 582 583 if (!$('#' + tabPanelTemplateId).length) { 584 $mailpreview_tabs.tabs("add", '#' + tabPanelTemplateId, tabPanelTemplateLabel) 585 .find('.message.empty-container').hide().end() 586 .find('#' + tabPanelTemplateId).html(body) 587 .prepend( 588 '<div class="mailpreview-message-info">' + 589 get_lang('Subject') + ': ' + 590 html_entities(subject) + 591 '</div>' 592 ) 593 .find('[class^="ExpressoCssWrapper"]').addClass("mailpreview-message-body"); 594 } else { 595 $mailpreview_tabs.tabs('select', '#' + tabPanelTemplateId) 596 .find('#' + tabPanelTemplateId + ', [href="#' + tabPanelTemplateId + '"]').removeClass('preview-message-unselected'); 561 onSelectRow: function(id, selected) 562 { 563 /* Funções auxiliares:*/ 564 565 var mark_as_selected = function (folder, msg_number) { 566 if(!selectedMessages[folder]) 567 { 568 selectedMessages[folder] = {}; 569 } 570 selectedMessages[folder][msg_number] = true; 571 } 572 573 var add_msg_to_cache = function (cache, msg) { 574 if(!cache[selectedFolder.id]) 575 { 576 cache[selectedFolder.id] = {}; 577 } 578 cache[selectedFolder.id][msg.msg_number] = msg; 579 } 580 581 var add_preview_tab = function (subject, body) { 582 // Trunca o assunto, para caber na aba de preview: 583 var tabPanelTemplateLabel = html_entities(subject); 584 if(tabPanelTemplateLabel.length > $mailpreview_tabs_label_length + 3) 585 { 586 tabPanelTemplateLabel = tabPanelTemplateLabel.substring(0, $mailpreview_tabs_label_length) + '...'; 587 } 588 589 // Se a aba não tiver sido adicionada: 590 if(!$('#' + tabPanelTemplateId).length) 591 { 592 // adiciona-a: 593 $mailpreview_tabs 594 .tabs("add", '#' + tabPanelTemplateId, tabPanelTemplateLabel) 595 .find('.message.empty-container') 596 .hide() 597 .end() 598 .find('#' + tabPanelTemplateId) 599 .html(body) 600 .prepend('<div class="mailpreview-message-info">' + get_lang('Subject') + ': ' + html_entities(subject) + '</div>') 601 .find('[class^="ExpressoCssWrapper"]') 602 .addClass("mailpreview-message-body"); 603 } 604 else 605 { 606 // Senão, só seleciona: 607 $mailpreview_tabs 608 .tabs('select', '#' + tabPanelTemplateId) 609 .find('#' + tabPanelTemplateId + ', [href="#' + tabPanelTemplateId + '"]') 610 .removeClass('preview-message-unselected'); 611 } 612 } 613 614 var message = false; 615 for(var i = 0; i < lastLoadedMessages.length; i++) 616 { 617 if(lastLoadedMessages[i].msg_number == id) 618 { 619 message = lastLoadedMessages[i]; 620 break; 621 } 622 } 623 var tabPanelTemplateId = 'mailpreview_tab_' + selectedFolder.id.replace(/[.\/]/g, '_') + '_' + message.msg_number; 624 var tabPanelTemplateId = tabPanelTemplateId.replace(/[\s\/]/g, '-'); 625 626 if(selected) 627 { 628 // Se a já mensagem (com preview) já estiver no cache: 629 if(onceOpenedHeadersMessages[selectedFolder.id] && onceOpenedHeadersMessages[selectedFolder.id][message.msg_number] && onceOpenedHeadersMessages[selectedFolder.id][message.msg_number].body) 630 { 631 632 mark_as_selected(selectedFolder.id, message.msg_number); 633 634 add_preview_tab( 635 onceOpenedHeadersMessages[selectedFolder.id][message.msg_number].subject, 636 onceOpenedHeadersMessages[selectedFolder.id][message.msg_number].body 637 ); 638 } 639 else // Mensagem não está no cache: 640 { 641 jQuery('#mailpreview_container').block( 642 { 643 message: '<div id="loading-content"><div class="image"></div></div>', 644 css: { 645 backgroundImage: 'url(' + BASE_PATH + 'modules/attach_message/images/loading.gif)', 646 backgroundRepeat: 'no-repeat', 647 backgroundPosition: 'center', 648 backgroundColor: 'transparent', 649 width: '32px', 650 height: '32px', 651 border: 'none' 652 }, 653 overlayCSS: { 654 backgroundColor: '#CCC', 655 opacity: 0.5 656 } 657 }); 658 659 mark_as_selected(selectedFolder.id, message.msg_number); 660 661 // Se for mensagem local: 662 if(selectedFolder['id'].indexOf("local_messages_") != -1) 663 { 664 expresso_mail_archive.getPreviewToAttach(id); 665 666 var body = expresso_mail_archive.bodyPreview; 667 var subject = expresso_mail_archive.subjectPreview; 668 669 add_preview_tab(subject, body); 670 671 $('#mailpreview_container').unblock(); 672 673 add_msg_to_cache(onceOpenedHeadersMessages, message); 597 674 } 598 } 599 if (onceOpenedMessages[selectedFolder.id] && onceOpenedMessages[selectedFolder.id][message.msg_number]) { 600 601 if (!selectedMessages[selectedFolder.id]) 602 selectedMessages[selectedFolder.id] = {}; 603 604 selectedMessages[selectedFolder.id][message.msg_number] = true; 605 $('#mailpreview-container').unblock(); 606 607 var tabPanelTemplateLabel = html_entities(onceOpenedMessages[selectedFolder.id][message.msg_number].subject); 608 if (tabPanelTemplateLabel.length > $mailpreview_tabs_label_length + 3) 609 tabPanelTemplateLabel = tabPanelTemplateLabel.substring(0, $mailpreview_tabs_label_length) + '...'; 610 611 if (!$('#' + tabPanelTemplateId).length) { 612 $mailpreview_tabs.tabs("add", '#' + tabPanelTemplateId, tabPanelTemplateLabel) 613 .find('.message.empty-container').hide().end() 614 .find('#' + tabPanelTemplateId).html(onceOpenedMessages[selectedFolder.id][message.msg_number].body); 615 } else { 616 $mailpreview_tabs.tabs('select', '#' + tabPanelTemplateId) 617 .find('#' + tabPanelTemplateId + ', [href="#' + tabPanelTemplateId + '"]').removeClass('preview-message-unselected'); 618 } 619 620 621 622 } else { 623 jQuery('#mailpreview_container').block({ 624 message: '<div id="loading-content"><div class="image"></div></div>', 625 css: { 626 backgroundImage: 'url('+BASE_PATH+'modules/attach_message/images/loading.gif)', 627 backgroundRepeat: 'no-repeat', 628 backgroundPosition: 'center', 629 backgroundColor: 'transparent', 630 width: '32px', 631 height: '32px', 632 border:'none' 633 }, 634 overlayCSS: { 635 backgroundColor: '#CCC', 636 opacity: 0.5 637 } 638 }); 639 640 var offlineCase = ""; 641 642 if( !selectedFolder.id.indexOf( 'local_messages/' ) ) 643 offlineCase = ":offline"; 644 645 if (!selectedMessages[selectedFolder.id]) 646 selectedMessages[selectedFolder.id] = {}; 647 selectedMessages[selectedFolder.id][message.msg_number] = true; 648 649 650 if(selectedFolder['id'].indexOf("local_messages_") != -1){ 651 $('#mailpreview_container').unblock(); 652 if (!onceOpenedMessages[selectedFolder.id]) 653 onceOpenedMessages[selectedFolder.id] = {}; 654 onceOpenedMessages[selectedFolder.id][message.msg_number] = message; 655 656 var tabPanelTemplateLabel = html_entities(onceOpenedMessages[selectedFolder.id][message.msg_number].subject); 657 if (tabPanelTemplateLabel.length > $mailpreview_tabs_label_length + 3) 658 tabPanelTemplateLabel = tabPanelTemplateLabel.substring(0, $mailpreview_tabs_label_length) + '...'; 659 selectedMessagesCount(); 660 } else { 661 $.ajax({ 662 accepts: 'text/html', 663 url: BASE_PATH + 'REST.php'+offlineCase+'?q=folder/'+selectedFolder.id.replace(dashes, '.')+'/message/'+id, 664 dataType: 'json', 665 success: function( mail_preview ){ 666 if (!onceOpenedMessages[selectedFolder.id]) 667 onceOpenedMessages[selectedFolder.id] = {}; 668 onceOpenedMessages[selectedFolder.id][message.msg_number] = jQuery.extend(true, message, mail_preview); 669 670 $('#mailpreview_container').unblock(); 671 672 var tabPanelTemplateLabel = html_entities(onceOpenedMessages[selectedFolder.id][message.msg_number].subject); 673 if (tabPanelTemplateLabel.length > $mailpreview_tabs_label_length + 3) 674 tabPanelTemplateLabel = tabPanelTemplateLabel.substring(0, $mailpreview_tabs_label_length) + '...'; 675 selectedMessagesCount(); 676 677 if (!$('#' + tabPanelTemplateId).length) { 678 $mailpreview_tabs.tabs("add", '#' + tabPanelTemplateId, tabPanelTemplateLabel) 679 .find('.message.empty-container').hide().end() 680 .find('#' + tabPanelTemplateId).html(onceOpenedMessages[selectedFolder.id][message.msg_number].body) 681 .prepend( 682 '<div class="mailpreview-message-info">' + 683 get_lang('Subject') + ': ' + 684 html_entities(onceOpenedMessages[selectedFolder.id][message.msg_number].subject) + 685 '</div>' 686 ) 687 .find('[class^="ExpressoCssWrapper"]').addClass("mailpreview-message-body"); 688 } else { 689 $mailpreview_tabs.tabs('select', '#' + tabPanelTemplateId) 690 .find('#' + tabPanelTemplateId + ', [href="#' + tabPanelTemplateId + '"]').removeClass('preview-message-unselected'); 691 } 692 } 693 }); 694 } 695 } 696 } else { 697 /** 698 * if you wants to remove tab on unselect message, 699 * but still needs to uselect message on remove tab. 700 * 701 */ 702 selectedMessages[selectedFolder.id][message.msg_number] = false; 703 $mailpreview_tabs.find('#' + tabPanelTemplateId + ', [href="#' + tabPanelTemplateId + '"]').addClass('preview-message-unselected'); 704 } 705 706 if (onceOpenedMessages[selectedFolder.id] && onceOpenedMessages[selectedFolder.id][message.msg_number]) 707 selectedMessagesCount(); 708 }, 675 else 676 { 677 proxy_mensagens.get_msg(id, selectedFolder.id, '', function (data) { 678 message = $.extend(true, message, data); 679 680 add_preview_tab(message.subject, message.body); 681 682 $('#mailpreview_container').unblock(); 683 684 add_msg_to_cache(onceOpenedHeadersMessages, message); 685 686 687 }) 688 } 689 } 690 } 691 else 692 { 693 /** 694 * if you wants to remove tab on unselect message, 695 * but still needs to uselect message on remove tab. 696 * 697 */ 698 selectedMessages[selectedFolder.id][message.msg_number] = false; 699 $mailpreview_tabs 700 .find('#' + tabPanelTemplateId + ', [href="#' + tabPanelTemplateId + '"]') 701 .addClass('preview-message-unselected'); 702 } 703 704 selectedMessagesCount(); 705 }, 706 709 707 caption: '<span class="'+selectedFolder['class']+'">'+selectedFolder.name+'</span>' 710 708 }); 711 //.jqGrid('navGrid','#message_attacher_grid_pager',{edit:false,add:false,del:false});712 709 713 710 var search_local_messsages = function(param, folder){
Note: See TracChangeset
for help on using the changeset viewer.