Ignore:
Timestamp:
02/24/12 15:37:35 (12 years ago)
Author:
marcieli
Message:

Ticket #2486 - Resolvida logica para sinalizar/marcar e exibir sinalizadores e marcadores na busca de mensagens.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/modules/mail/js/followupflag.js

    r5547 r5548  
    275275                var alarmDate = false; 
    276276                var doneDate  = false; 
    277                  
     277                var folder_name; 
     278                var folders = []; 
     279                var messages = []; 
    278280                for (var i=0; i < selectedMessageIds.length; i++ ){ 
     281                        if (currentTab == 0) { 
     282                                folder_name = current_folder; 
     283                        }else{ 
     284                                var id_border = currentTab.replace(/[a-zA-Z_]+/, ""); 
     285                                var tr = Element(selectedMessageIds[i]+'_s'+id_border); 
     286                                folder_name = tr.getAttribute('name'); 
     287                        } 
    279288                        var messageNumber   = selectedMessageIds[i]; 
     289                        folders.push(folder_name); 
     290                         
    280291                        //var followupflag = DataLayer.get('followupflag', followupflagId.toString()), 
    281292                        var idFollowupflagged = winElement.find('.id-followup').val(); 
     
    283294                                uid : User.me.id, 
    284295                                followupflagId : followupflagId,  
    285                                 folderName : current_folder,  
     296                                folderName : folder_name,  
    286297                                messageNumber : messageNumber,  
    287298                                //alarmDeadline : winElement.find('[name="alarmDate"]').datepicker("getDate"),  
     
    313324                         
    314325                        $('#td_message_followup_' + messageNumber + ', ' +  
    315                           '#td_message_followup_search_' + messageNumber).find(".flag-edited").css("background", backgroundColor); 
    316                            
     326                          '#td_message_followup_search_' + messageNumber).find(".flag-edited").css("background", backgroundColor);  
    317327                        DataLayer.put('followupflagged', followupflagged); 
    318328                } 
     
    322332                        winElement.find('.id-followup').val(id); 
    323333                });              
    324                  
    325                 //onceOpenedHeadersMessages[current_folder][followupflagged.messageNumber]['followupflagged']['followupflag'] = {}; 
    326334                var extend = DataLayer.get('followupflagged', { 
    327                 filter: ['AND', ['IN', 'messageNumber', selectedMessageIds], ['=', 'folderName', current_folder]],criteria: {deepness: 1}}); 
     335                filter: ['AND', ['IN', 'messageNumber', selectedMessageIds], ['IN', 'folderName', folders]],criteria: {deepness: 1}}); 
    328336                if(extend != "" || extend != 'undefined' || extend != []){ 
    329337                        for(var ex = 0; ex < extend.length; ex++){ 
    330                                 onceOpenedHeadersMessages[current_folder][extend[ex].messageNumber]['followupflagged'] = {}; 
    331                                 DataLayer.merge(onceOpenedHeadersMessages[current_folder][extend[ex].messageNumber]['followupflagged'], extend[ex]); 
     338                                if(onceOpenedHeadersMessages[extend[ex].folderName]){ 
     339                                        if(onceOpenedHeadersMessages[extend[ex].folderName][extend[ex].messageNumber]){ 
     340                                                onceOpenedHeadersMessages[extend[ex].folderName][extend[ex].messageNumber]['followupflagged'] = {}; 
     341                                                DataLayer.merge(onceOpenedHeadersMessages[extend[ex].folderName][extend[ex].messageNumber]['followupflagged'], extend[ex]); 
     342                                        } 
     343                                } 
     344 
    332345                        } 
    333346                } else { 
     
    338351        .filter('.menu-configure-followupflag .delete').click(function(){ 
    339352                for(i = 0; i < selectedMessageIds.length; i++){ 
     353                        var folder_name; 
     354                        if (currentTab == 0) { 
     355                                folder_name = current_folder; 
     356                        }else{ 
     357                                var id_border = currentTab.replace(/[a-zA-Z_]+/, ""); 
     358                                var tr = Element(selectedMessageIds[i]+'_s'+id_border); 
     359                                folder_name = tr.getAttribute('name'); 
     360                        } 
    340361                        var messageNumber   = selectedMessageIds[i]; 
    341                         var flag_id = onceOpenedHeadersMessages[current_folder][messageNumber]['followupflagged'].id; 
    342                         var flagged = $('#td_message_followup_' + messageNumber + ', ' + '#td_message_followup_search_' + messageNumber).find(".flag-edited"); 
    343                         DataLayer.remove('followupflagged', flag_id); 
    344                         flagged.css("background", '#cccccc'); 
    345                         flagged.find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 
     362                        if(onceOpenedHeadersMessages[folder_name][messageNumber]['followupflagged']){ 
     363                                var flag_id = onceOpenedHeadersMessages[folder_name][messageNumber]['followupflagged'].id; 
     364                                DataLayer.remove('followupflagged', flag_id); 
     365                                $('#td_message_followup_' + messageNumber + ', ' +  
     366                                  '#td_message_followup_search_' + messageNumber).find(".flag-edited").css("background", '#CCC'); 
     367                                $('#td_message_followup_' + messageNumber + ', ' +  
     368                                        '#td_message_followup_search_' + messageNumber).find(".flag-edited") 
     369                                        .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 
     370                        } 
    346371                } 
    347372                DataLayer.commit(); 
Note: See TracChangeset for help on using the changeset viewer.