Changeset 5625
- Timestamp:
- 03/05/12 11:38:00 (11 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/js/doiMenuData.js
r5605 r5625 1 function openListUsers(border_id) { 2 connector.loadScript("QuickCatalogSearch"); 3 if (typeof(QuickCatalogSearch) == 'undefined'){ 4 setTimeout('openListUsers('+border_id+')',500); 5 return false; 6 } 7 QuickCatalogSearch.showCatalogList(border_id); 8 } 9 10 11 /** 12 * Cria a lista de marcadores para o submenu "Marcadores" 13 */ 14 function getLabels(){ 15 var labels = DataLayer.get('label',{criteria:{order: 'name'}}); 16 var menuLabelItems = {}; 17 for(var i=0; i<labels.length; i++) { 18 menuLabelItems["label"+labels[i].id] = { 19 "name" : labels[i].name, 20 } 21 } 22 return menuLabelItems; 23 } 24 25 /** 26 * Carrega o menu de opção de uma mensagem 27 */ 28 function loadMenu(){ 29 var labelItems = getLabels(); 30 $.contextMenu({ 31 selector: ".table_box tbody tr", 32 callback: function(key, options) { 33 //TODO - default actions 34 35 /** 36 * Apply labels to selected messages 37 */ 38 var isLabel = key.match(/label(.*)/); 39 if (isLabel && isLabel.length > 1) { 1 function labeledMessages(isLabel){ 2 if (isLabel) { 40 3 var label = { 41 id: isLabel [1]4 id: isLabel 42 5 } 43 6 var lableleds = new Array(); … … 77 40 78 41 for (var i=0; i < messages.length; i++) { 79 var hasLabel = DataLayer.get('labeled', [ 42 var hasLabel = DataLayer.get('labeled', { 43 filter: [ 80 44 'AND', 81 45 ['=', 'labelId', label.id], 82 46 ['=', 'folderName', messages[i].msg_folder], 83 47 ['=', 'messageNumber', messages[i].msg_number] 84 ] );48 ]}); 85 49 if (!hasLabel || hasLabel == "") { 86 50 lableleds.push( … … 94 58 } 95 59 } 96 DataLayer.commit(); 97 for (var i=0; i < messages.length; i++) { 98 updateLabelsColumn({msg_number:messages[i].msg_number, boxname:messages[i].msg_folder, labels:false}); 60 DataLayer.commit(false, false, function(data){ 61 for (var i=0; i < messages.length; i++) { 62 updateLabelsColumn({msg_number:messages[i].msg_number, boxname:messages[i].msg_folder, labels:false}); 63 } 64 }); 65 66 67 } 68 } 69 70 function openListUsers(border_id) { 71 connector.loadScript("QuickCatalogSearch"); 72 if (typeof(QuickCatalogSearch) == 'undefined'){ 73 setTimeout('openListUsers('+border_id+')',500); 74 return false; 99 75 } 100 76 QuickCatalogSearch.showCatalogList(border_id); 77 } 78 79 80 /** 81 * Cria a lista de marcadores para o submenu "Marcadores" 82 */ 83 function getLabels(){ 84 var labels = DataLayer.get('label',{criteria:{order: 'name'}}); 85 var menuLabelItems = {}; 86 menuLabelItems["new"] = { 87 "name" : 'Novo Marcador', 88 callback:function() {configureLabels({applyToSelectedMessages:true});} 89 }; 90 for(var i=0; i<labels.length; i++) { 91 menuLabelItems["label"+labels[i].id] = { 92 "name" : labels[i].name, 93 } 94 } 95 return menuLabelItems; 96 } 97 98 /** 99 * Carrega o menu de opção de uma mensagem 100 */ 101 function loadMenu(){ 102 var labelItems = getLabels(); 103 $.contextMenu({ 104 selector: ".table_box tbody tr", 105 callback: function(key, options) { 106 //TODO - default actions 107 108 /** 109 * Apply labels to selected messages 110 */ 111 var isLabel = key.match(/label(.*)/); 112 if (isLabel && isLabel.length > 1) { 113 labeledMessages(isLabel[1]); 101 114 } 115 102 116 }, 103 117 items: { -
trunk/expressoMail1_2/js/draw_api.js
r5624 r5625 1033 1033 filter: ['AND', ['IN', 'messageNumber', messageNumbers], ['=', 'folderName', msg_folder]], 1034 1034 criteria: {deepness: 2} 1035 } );1035 }, true); 1036 1036 1037 1037 if(labeleds) { … … 1056 1056 deepness: 1 1057 1057 } 1058 } );1058 }, true); 1059 1059 1060 1060 if(followupflaggeds) { … … 1696 1696 //$(this).find(".flag-edited").css("background", headers_msgs.followupflagged.backgroundColor); 1697 1697 headers_msgs.followupflagged.id = DataLayer.put('followupflagged', headers_msgs.followupflagged); 1698 DataLayer.commit(false, false, function(){ 1699 updateCacheFollowupflag(messageClickedId, msg_folder, true); 1700 }); 1698 1701 1699 } else if (headers_msgs.followupflagged.followupflag.name == 'Follow up') { 1702 1703 } else if (onceOpenedHeadersMessages[msg_folder][messageClickedId]['followupflagged'].followupflag.name == 'Follow up') { 1700 1704 /** 1701 1705 * Remove followupflag de Acompanhamento … … 1709 1713 'tr[role="'+messageClickedId+'_'+msg_folder+'"] #td_message_followup_search_' + messageClickedId).find(".flag-edited") 1710 1714 .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 1715 DataLayer.commit(); 1716 updateCacheFollowupflag(messageClickedId, msg_folder, false); 1711 1717 } else { 1712 1718 $(tr_element).addClass('selected_msg').find(':checkbox').trigger('click'); … … 1714 1720 } 1715 1721 1716 DataLayer.commit();1717 1722 1718 1723 }); -
trunk/expressoMail1_2/js/search.js
r5605 r5625 568 568 } 569 569 aux.followupflagged.id = DataLayer.put('followupflagged', aux.followupflagged); 570 DataLayer.commit(); 571 var extend = DataLayer.get('followupflagged', { 572 filter: ['AND', ['IN', 'messageNumber', messageClickedId], ['IN', 'folderName', mailbox]], 573 criteria: {deepness: 1} 574 }, true); 570 575 571 }else if(aux.followupflagged.id){ 576 updateCacheFollowupflag(messageClickedId, mailbox, true); 577 578 }else if(onceOpenedHeadersMessages[mailbox][messageClickedId]['followupflagged'].id){ 572 579 /** 573 580 * Remover followupflag de Acompanhamento (DFD0078:RI25) … … 583 590 'tr[role="'+messageClickedId+'_'+mailbox+'"] #td_message_followup_search_' + messageClickedId).find(".flag-edited") 584 591 .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 592 DataLayer.commit(); 593 updateCacheFollowupflag(messageClickedId, mailbox, false); 585 594 }else{ 586 595 $('tr[role="'+messageClickedId+'_'+mailbox+'"] #td_message_followup_search_' + messageClickedId).find(".flag-edited").css("background", '#CCC'); … … 591 600 //TODO - open dialog 592 601 } 593 if(!DataLayer.commit()){}602 //if(!){} 594 603 595 604 }); -
trunk/prototype/modules/mail/interceptors/Helpers.php
r5611 r5625 164 164 $imap_uri = $uri; 165 165 $imap_uri['service'] = 'Imap'; 166 $imap_result = Controller::find($imap_uri, $ params, $criteria);166 $imap_result = Controller::find($imap_uri, $result, $criteria); 167 167 168 168 /** -
trunk/prototype/modules/mail/js/followupflag.js
r5610 r5625 1 function updateCacheFollowupflag(msgNumber, msgFolder, op){ 2 if(op){ 3 if(typeof msgNumber == 'object'){ 4 var extend = DataLayer.get('followupflagged', { 5 filter: ['AND', ['IN', 'messageNumber', msgNumber], ['IN', 'folderName', msgFolder]], 6 criteria: {deepness: 1} 7 }, true); 8 } else{ 9 var extend = DataLayer.get('followupflagged', { 10 filter: ['AND', ['=', 'messageNumber', msgNumber], ['=', 'folderName', msgFolder]], 11 criteria: {deepness: 1} 12 }, true); 13 } 14 15 16 if(extend != "" || extend != 'undefined' || extend != []){ 17 for(var i = 0; i < extend.length; i++){ 18 if(onceOpenedHeadersMessages[extend[i].folderName]){ 19 if(onceOpenedHeadersMessages[extend[i].folderName][extend[i].messageNumber]){ 20 onceOpenedHeadersMessages[extend[i].folderName][extend[i].messageNumber]['followupflagged'] = {}; 21 DataLayer.merge(onceOpenedHeadersMessages[extend[i].folderName][extend[i].messageNumber]['followupflagged'], extend[i]); 22 } 23 } 24 25 } 26 } 27 }else{ 28 onceOpenedHeadersMessages[msgFolder][msgNumber]['followupflagged'] = undefined; 29 } 30 } 31 32 33 1 34 function init_followup(data){ 2 35 … … 219 252 winElement.find('.menu-configure-followupflag .save').button("option", "disabled", true); 220 253 winElement.find('.menu-configure-followupflag .delete').button("option", "disabled", false); 254 updateCacheFollowupflag(selectedMessageIds, folders, true); 221 255 }); 222 223 var extend = DataLayer.get('followupflagged', {224 filter: ['AND', ['IN', 'messageNumber', selectedMessageIds], ['IN', 'folderName', folders]],225 criteria: {deepness: 1}226 });227 228 if(extend != "" || extend != 'undefined' || extend != []){229 for(var i = 0; i < extend.length; i++){230 if(onceOpenedHeadersMessages[extend[i].folderName]){231 if(onceOpenedHeadersMessages[extend[i].folderName][extend[i].messageNumber]){232 onceOpenedHeadersMessages[extend[i].folderName][extend[i].messageNumber]['followupflagged'] = {};233 DataLayer.merge(onceOpenedHeadersMessages[extend[i].folderName][extend[i].messageNumber]['followupflagged'], extend[i]);234 }235 }236 237 }238 } else {239 alert('erro ao salvar');240 }241 256 }).end() 242 257 243 258 .filter('.menu-configure-followupflag .delete').click(function(){ 244 259 if (selectedMessageIds.length == 0) $(this).button("option", "disabled", true); 245 260 /** TODO Mudar quando melhorias forem implementadas na API de atualização do cache */ 261 DataLayer.remove('followupflagged', false); 262 DataLayer.get('followupflagged'); 246 263 var roles = get_selected_messages_search_role().split(','); 247 264 for (var i=0; i < selectedMessageIds.length; i++ ){ … … 270 287 .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 271 288 } 272 273 onceOpenedHeadersMessages[folder_name][messageNumber]['followupflagged'] = undefined; 289 updateCacheFollowupflag(messageNumber, folder_name, false); 274 290 } 275 291 } -
trunk/prototype/modules/mail/js/label.js
r5607 r5625 32 32 $(span).html($(".label-list").find(".edit-value-list").val()) 33 33 .parent().find('.edit').removeClass("hidden").parents("li").click(configureLabel).trigger("click"); 34 save_editLabel(nameLabel );34 save_editLabel(nameLabel, applyToSelectedMessages); 35 35 36 36 }else if( event.keyCode == 27){ … … 89 89 } 90 90 91 function save_editLabel(nameLabel ){91 function save_editLabel(nameLabel, apply){ 92 92 93 93 var lengthSpace = $.trim(nameLabel); … … 152 152 } else { 153 153 var nameLabel = winElement.find(".input-nome").val(); 154 new_label(nameLabel, false );154 new_label(nameLabel, false, apply); 155 155 winElement.find(".insert-label").val(""); 156 156 $.Watermark.ShowAll(); … … 208 208 } 209 209 210 function new_label(nameLabel, isNew ){210 function new_label(nameLabel, isNew, apply){ 211 211 var labelCreated = { 212 212 uid: User.me.id, … … 232 232 borderColor : !!isNew ? '#000000' : winElement.find("input[name='borderColor']").val() 233 233 }; 234 234 235 /** Marca as mensagens selecionadas com o marcador criado*/ 236 if(apply){ 237 labeledMessages(newLabel.id) 238 } 239 235 240 $(".label-list-container ul").find(".empty-item").css("display","none"); 236 241 $(".label-list-container ul") … … 382 387 383 388 if(lengthSpace.length >= 4){ 384 new_label(nameLabel, true );389 new_label(nameLabel, true, data.applyToSelectedMessages); 385 390 $.Watermark.ShowAll(); 386 391 winElement.find(".insert-label").val(""); … … 413 418 winElement.find(".buttons .save-label").click(function(){ 414 419 var nameLabel = winElement.find(".input-nome").val(); 415 save_editLabel(nameLabel );420 save_editLabel(nameLabel, data.applyToSelectedMessages); 416 421 }); 417 422 //desfazer marcador
Note: See TracChangeset
for help on using the changeset viewer.