Ignore:
Timestamp:
03/15/12 14:10:55 (12 years ago)
Author:
marcieli
Message:

Ticket #2494 - Resolvido: exibir no. de msgs nao lidas das filhas na pasta raiz.

File:
1 edited

Legend:

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

    r5703 r5732  
    55function unorphanize(root, element) { 
    66        var ok = false; 
     7        var f = 0; 
    78        for (var i=0; i<root.length; i++) { 
    89                if (root[i].id == element.parentFolder) { 
    910                        element.children = new Array();  
    1011                        root[i].children.push(element); 
     12/*                      root[i]['children_unseen'] = (root[i]['children_unseen']? root[i]['children_unseen'] : 0)+ parseInt(element.messageCount.unseen); 
     13                        console.log("=== INI ==="); 
     14                        console.log(root[i].id); 
     15                        console.log(root[i].children.length); 
     16                        console.log("=== END ==="); 
     17                        for(var k=0; k<root[i].children.length; k++){ 
     18                                root[i]['children_unseen'] += (root[i].children[k]['children_unseen'] ? root[i].children[k]['children_unseen'] : 0); 
     19                        } */ 
    1120                        return true; 
    1221                } else if (ok = unorphanize(root[i].children, element)) { 
     
    1524        } 
    1625        return ok; 
     26} 
     27 
     28function count_unseen_children(folder){ 
     29        if(folder.children.length){ 
     30                for(var i=0; i< folder.children.length; i++){ 
     31                        if(folder.children[i].children.length) 
     32                                folder.children[i]['children_unseen'] = (folder.children[i]['children_unseen'] ? folder.children[i]['children_unseen'] : 0) + count_unseen_children(folder.children[i]); 
     33                         
     34                        folder['children_unseen'] = (folder['children_unseen'] ? folder['children_unseen'] : 0)+ (folder.children[i]['children_unseen'] ? folder.children[i]['children_unseen'] : 0) + parseInt(folder.children[i].messageCount.unseen);                         
     35                } 
     36                return folder['children_unseen']; 
     37        }else{ 
     38                return parseInt(folder.messageCount.unseen); 
     39        } 
    1740} 
    1841 
     
    7194                } 
    7295        } 
     96         
     97        for(var i =0; i<tree1.length; i++){ 
     98                count_unseen_children(tree1[i]); 
     99        } 
     100        for(var i =0; i<tree2.length; i++){ 
     101                count_unseen_children(tree2[i]); 
     102        } 
     103        for(var i =0; i<tree3.length; i++){ 
     104                count_unseen_children(tree3[i]); 
     105        } 
     106         
    73107        $("#content_folders").removeClass("menu-degrade").parent().removeClass("image-menu"); 
    74108        var html = DataLayer.render('../prototype/modules/mail/templates/detailedfoldertree.ejs', {folders: [tree1, tree2, tree3]}); 
Note: See TracChangeset for help on using the changeset viewer.