Changeset 5548 for trunk/expressoMail1_2


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.

Location:
trunk/expressoMail1_2
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/inc/class.imap_functions.inc.php

    r5541 r5548  
    51935193                                { 
    51945194                                        $followupflag = Controller::read( array( 'concept' => 'followupflag', 'id' => $followupflagged[0]['followupflagId'] ));      
    5195                                         //$followupflagged[0]['followupflag'] = []; 
    51965195                                        $followupflagged[0]['followupflag'] = $followupflag; 
    51975196                                        $return['msgs'][$i]['followupflagged'] = $followupflagged[0]; 
  • trunk/expressoMail1_2/js/doiMenuData.js

    r5539 r5548  
    4242                                }        
    4343                                var lableleds = new Array(); 
    44                                  
     44                                var msg_folder = current_folder; 
     45                                var messages = []; 
    4546                                if(currentTab == 0){ 
    46                                         var messages = get_selected_messages().split(','); 
     47                                        var id = get_selected_messages().split(','); 
     48                                        for (i = 0; i < id.length; i++){ 
     49                                                messages.push({ 
     50                                                        "msg_number": id[i], 
     51                                                        "msg_folder": msg_folder, 
     52                                                }); 
     53                                        } 
    4754                                }else{ 
    48                                         var messages = get_selected_messages_search().split(','); 
     55                                        var id = get_selected_messages_search().split(','); 
     56                                        var id_border = currentTab.replace(/[a-zA-Z_]+/, ""); 
     57                                        for (i = 0; i < id.length; i++){ 
     58                                                var tr = Element(id[i]+'_s'+id_border); 
     59                                                msg_folder = tr.getAttribute('name');  
     60                                                messages.push({ 
     61                                                        "msg_number": id[i], 
     62                                                        "msg_folder": msg_folder, 
     63                                                }); 
     64                                        }        
    4965                                } 
    5066 
     
    5369                                                        'AND', 
    5470                                                        ['=', 'labelId', label.id],  
    55                                                         ['=', 'folderName', current_folder],  
    56                                                         ['=', 'messageNumber', messages[i]] 
     71                                                        ['=', 'folderName', messages[i].msg_folder],  
     72                                                        ['=', 'messageNumber', messages[i].msg_number] 
    5773                                        ]); 
    5874                                        if (!hasLabel) { 
     
    6076                                                        DataLayer.put('labeled', { 
    6177                                                                labelId:label.id,  
    62                                                                 folderName:current_folder,  
    63                                                                 messageNumber:messages[i] 
     78                                                                folderName:messages[i].msg_folder,  
     79                                                                messageNumber:messages[i].msg_number 
    6480                                                        }) 
    6581                                                ); 
     
    6884                                } 
    6985                                DataLayer.commit(); 
    70                                 for (var i=0; i < messages.length; i++) { 
    71                                         updateLabelsColumn({msg_number:messages[i], labels:false}); 
    72                                 } 
     86                                        for (var i=0; i < messages.length; i++) { 
     87                                                updateLabelsColumn({msg_number:messages[i].msg_number, boxname:messages[i].msg_folder, labels:false}); 
     88                                        } 
    7389                        } 
    7490                }, 
     
    97113                "i01": {"name": get_lang("Preferences"), "icon": "preferences-mail", callback: preferences_mail }, 
    98114                "i02": {"name": get_lang("Search"), "icon": "search-mail", callback: function(key, opt){ search_emails(""); }}, 
    99                 "103": {"name": get_lang("Edit filters"), "icon": "filter", callback: filterbox2 }, 
     115                "103": {"name": get_lang("Edit filters"), "icon": "filter", callback: filterbox }, 
    100116                "i04": {"name": get_lang("Edit folders"), "icon": "edit-folder", callback: folderbox }, 
    101117                "i05": {"name": get_lang("Share mailbox"), "icon": "share-mailbox", callback: sharebox }, 
     
    144160 
    145161function updateLabelsColumn(messageInfo) { 
    146         $('#td_message_labels_' + messageInfo.msg_number +', #td_message_labels_search_' + messageInfo.msg_number) 
     162        var msg_number = messageInfo.msg_number; 
     163        if(messageInfo.uid != '' && messageInfo.uid != 'undefined' && messageInfo.uid != null){ 
     164                msg_number = messageInfo.uid; 
     165        } 
     166        $('#td_message_labels_' + msg_number +', #td_message_labels_search_' + msg_number) 
    147167        .html('<img src="../prototype/modules/mail/img/tag.png">'); 
    148  
     168         
     169        var msg_folder = current_folder; 
     170        if(messageInfo.boxname != '' && messageInfo.boxname != 'undefined' && messageInfo.boxname != null){ 
     171                msg_folder = messageInfo.boxname; 
     172        } 
    149173        var menuItems = {}; 
    150174        if (messageInfo.labels) { 
     
    152176        } else { 
    153177                var labeleds = DataLayer.get('labeled', { 
     178                        criteria: {deepness: '2', 
    154179                        filter: [ 
    155180                                'AND', 
    156                                 ['=', 'folderName', current_folder],  
    157                                 ['=', 'messageNumber', messageInfo.msg_number] 
    158                         ], 
    159                         criteria: {deepness: 2} 
     181                                ['=', 'folderName', msg_folder],  
     182                                ['=', 'messageNumber', msg_number] 
     183                        ]} 
     184                         
    160185                }); 
    161186                if (labeleds) { 
     
    168193        } 
    169194 
    170         $.contextMenu( 'destroy', '#td_message_labels_' + messageInfo.msg_number +', #td_message_labels_search_' + messageInfo.msg_number); 
     195        $.contextMenu( 'destroy', '#td_message_labels_' + msg_number +', #td_message_labels_search_' + msg_number); 
    171196 
    172197        $.contextMenu({ 
    173                 selector: '#td_message_labels_' + messageInfo.msg_number +', #td_message_labels_search_' + messageInfo.msg_number, 
     198                selector: '#td_message_labels_' + msg_number +', #td_message_labels_search_' + msg_number, 
    174199                trigger: 'hover', 
    175200                delay:100, 
  • trunk/expressoMail1_2/js/draw_api.js

    r5544 r5548  
    16871687                                        followupflag: DataLayer.get('followupflag', '1') 
    16881688                                }; 
    1689                                 $(this).find(".flag-edited").css("background", headers_msgs.followupflagged.backgroundColor); 
     1689                                $('#td_message_followup_' + messageClickedId + ', ' +  
     1690                                '#td_message_followup_search_' + messageClickedId).find(".flag-edited").css("background", headers_msgs.followupflagged.backgroundColor); 
     1691                                //$(this).find(".flag-edited").css("background", headers_msgs.followupflagged.backgroundColor); 
    16901692                                headers_msgs.followupflagged.id = DataLayer.put('followupflagged', headers_msgs.followupflagged); 
    16911693                                 
     
    16961698                                 $(this).find(".flag-edited").css("background", "#cccccc"); 
    16971699 
    1698  
    16991700                                DataLayer.remove('followupflagged', flagged[0].id); 
    17001701                                $('#td_message_followup_' + messageClickedId + ', ' +  
    1701                                 '#td_message_followup_search_' + messageClickedId).find(".flag-edited") 
    1702                                 .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 
     1702                                  '#td_message_followup_search_' + messageClickedId).find(".flag-edited").css("background", '#CCC'); 
     1703                                $('#td_message_followup_' + messageClickedId + ', ' +  
     1704                                        '#td_message_followup_search_' + messageClickedId).find(".flag-edited") 
     1705                                        .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 
    17031706                        } else { 
    17041707                                $(tr_element).addClass('selected_msg').find(':checkbox').trigger('click'); 
  • trunk/expressoMail1_2/js/search.js

    r5533 r5548  
    442442         
    443443        searchE.prototype.make_tr_message = function(aux,border_id,i) { 
    444         console.log(aux); 
    445444        /** 
    446445         * Preenche a estrutura de cache de mensagens para posterior consulta de  
     
    460459                var uid_msg = aux.uid; 
    461460                var subject = aux.subject; 
     461                var labels = aux.labels; 
     462                var followupflagged = aux.followupflagged; 
    462463 
    463464                tr.id = uid_msg+"_s"+numBox; 
     
    555556                                                        followupflag: DataLayer.get('followupflag', '1') 
    556557                                                }; 
    557                                                 $(this).find(".flag-edited").css("background", aux.followupflagged.backgroundColor); 
     558                                                $('#td_message_followup_' + messageClickedId + ', ' +  
     559                                                '#td_message_followup_search_' + messageClickedId).find(".flag-edited").css("background", aux.followupflagged.backgroundColor);                                          
     560                                                //$(this).find(".flag-edited").css("background", aux.followupflagged.backgroundColor); 
    558561                                                aux.followupflagged.id = DataLayer.put('followupflagged', aux.followupflagged); 
    559562                                                 
     
    567570                                                DataLayer.remove('followupflagged', flagged[0].id); 
    568571                                                $('#td_message_followup_' + messageClickedId + ', ' +  
    569                                                 '#td_message_followup_search_' + messageClickedId).find(".flag-edited") 
    570                                                 .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 
     572                                                  '#td_message_followup_search_' + messageClickedId).find(".flag-edited").css("background", '#CCC'); 
     573                                                $('#td_message_followup_' + messageClickedId + ', ' +  
     574                                                        '#td_message_followup_search_' + messageClickedId).find(".flag-edited") 
     575                                                        .find("img").attr("src", "../prototype/modules/mail/img/flagEditor.png").css("margin-left","0"); 
    571576                                        } else { 
    572577                                                //TODO - open dialog 
     
    717722                                } 
    718723                                 
     724 
    719725                                tr.appendChild(td); 
    720726                        } 
     
    792798                if ( data == undefined ) 
    793799                        return; 
     800 
     801                ////////////////////////////////////////////////////////////////////// 
     802                /** 
     803                 * Get the labels aplyed to the messages and saves the information  
     804                 * into message array  
     805                 */ 
     806 
     807                var msg_folder = get_current_folder();  
     808                var messageNumbers = new Array(); 
     809                var messageFolders = new Array(); 
     810                for (var i=0; i<data.length; i++) { 
     811                        messageNumbers.push(data[i].uid); 
     812                        messageFolders.push(data[i].boxname); 
     813                } 
     814                 
     815 
     816                // var labeleds = DataLayer.get('labeled', { 
     817                                // filter: ['AND', ['IN', 'messageNumber', messageNumbers], ['=', 'folderName', messageFolders]], 
     818                                // criteria: {deepness: 2} 
     819                // }); 
     820 
     821                // if(labeleds) { 
     822                        // for (var i=0; i<data.length; i++) { 
     823                                // for (var j=0; j<labeleds.length; j++) { 
     824                                        // if (labeleds[j].messageNumber == data[i].uid) { 
     825                                                // if (!data[i].labels) 
     826                                                        // data[i].labels = {}; 
     827                                                // data[i].labels[labeleds[j].label.id] = labeleds[j].label; 
     828                                        // } 
     829                                // } 
     830                        // } 
     831                // } 
     832 
     833                /** 
     834                 * Get the followupflags aplyed to the messages and saves the information  
     835                 * into message array  
     836                 */ 
     837                  
     838                // var followupflaggeds = DataLayer.get('followupflagged', { 
     839                                // filter: ['AND', ['IN', 'messageNumber', messageNumbers], ['=', 'folderName', messageFolders]], 
     840                                // criteria: {deepness: 2} 
     841                        // }); 
     842 
     843                // if(followupflaggeds) { 
     844                        // for (var i=0; i<data.length; i++) { 
     845                                // for (var j=0; j<followupflaggeds.length; j++) { 
     846                                        // if (followupflaggeds[j].messageNumber == data[i].uid) { 
     847                                                // if (!data[i].followupflagged) 
     848                                                        // data[i].followupflagged = {}; 
     849                                                // data[i].followupflagged = followupflaggeds[j]; 
     850                                        // } 
     851                                // } 
     852                        // } 
     853                // } 
     854                ///////////////////////////////////////////////////////////////////////// 
    794855         
    795856                var cont = parseInt(0); 
Note: See TracChangeset for help on using the changeset viewer.