Ignore:
Timestamp:
01/21/08 08:34:42 (16 years ago)
Author:
niltonneto
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/js/search.js

    r128 r156  
    3939                        var call_form_search = EsearchE.mount_form(); 
    4040                        div_form_search.appendChild(call_form_search); 
    41                         form_search.appendChild(div_form_search);        
     41                        form_search.appendChild(div_form_search); 
    4242 
    4343                }        
     
    159159 
    160160        } 
     161        //This func returns the most recent date 
     162        function date_comp(a,b) 
     163        { 
     164                var data1 = a.match(/\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g); 
     165                data1 = data1[0].substr(0, data1[0].indexOf('--')) 
     166                with ( data1 )  
     167                        data1 = Date.UTC(substr(6), substr(3, 2), substr(0, 2)); 
     168                var data2 = b.match(/\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g); 
     169                data2 = data2[0].substr(0, data2[0].indexOf('--')) 
     170                with ( data2 ) 
     171                        data2 = Date.UTC(substr(6), substr(3, 2), substr(0, 2)); 
     172                return data2 - data1; 
     173        } 
     174         
     175        function box_comp(a,b) 
     176        { 
     177        var compare = []; 
     178        compare[0] = a.substr(0, a.indexOf('--')); 
     179        compare[0] = compare[0].toLowerCase(); 
     180        var temp=compare[0]; 
     181        compare[1] = b.substr(0, b.indexOf('--')) 
     182        compare[1] = compare[1].toLowerCase(); 
     183        compare.sort(); 
     184        if (temp != compare[0]) 
     185                return +1; 
     186        else 
     187                return -1; 
     188        } 
     189 
     190        function who_comp(a,b) 
     191        { 
     192        var compare = []; 
     193        compare[0] = a.substr(a.indexOf('--')+2); 
     194        compare[0] = compare[0].toLowerCase(); 
     195        var temp=compare[0]; 
     196        compare[1] = b.substr(b.indexOf('--')+2); 
     197        compare[1] = compare[1].toLowerCase(); 
     198        compare.sort(); 
     199        if (temp != compare[0]) 
     200                return +1; 
     201        else 
     202                return -1; 
     203        } 
     204 
     205        function subject_comp(a,b) 
     206        { 
     207        var compare = []; 
     208        compare[0] = a.substr(a.indexOf('--')+2); 
     209        compare[0] = compare[0].substr(compare[0].indexOf('--')+2); 
     210        compare[0] = compare[0].toLowerCase(); 
     211        var temp=compare[0]; 
     212        compare[1] = b.substr(b.indexOf('--')+2); 
     213        compare[1] = compare[1].substr(compare[1].indexOf('--')+2); 
     214        compare[1] = compare[1].toLowerCase(); 
     215        compare.sort(); 
     216        if (temp != compare[0]) 
     217                return +1; 
     218        else 
     219                return -1; 
     220        } 
     221 
     222        function size_comp(a,b) 
     223        { 
     224                var data1 = a.match(/\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g); 
     225                data1 = data1[0].substr(data1[0].indexOf('--')+2) 
     226                data1 = data1.substr(0,data1.indexOf('--')) 
     227                var size_a = parseInt(data1.substr(0,data1.indexOf(' '))); 
     228                if (data1.match("k")) 
     229                        size_a = size_a * 1024; 
     230                else 
     231                        if (data1.match("m")) 
     232                                size_a = size_a * 1048576; 
     233                 
     234                var data2 = b.match(/\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g); 
     235                data2 = data2[0].substr(data2[0].indexOf('--')+2) 
     236                data2 = data2.substr(0,data2.indexOf('--')) 
     237                var size_b = parseInt(data2.substr(0,data2.indexOf(' '))); 
     238                if (data2.match("k")) 
     239                        size_b = size_b * 1024; 
     240                else 
     241                        if (data2.match("m")) 
     242                                size_b = size_b * 1048576; 
     243                                 
     244                return size_b - size_a; 
     245        } 
     246 
    161247        // Form resultado; 
    162         searchE.prototype.mount_result = function(data){ 
    163                 //This func returns the most recent date 
    164                 function date_comp(a,b) 
    165                 { 
    166                         var data1 = a.match(/\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g); 
    167                         data1 = data1[0].substr(0, data1[0].indexOf('--')) 
    168                         with ( data1 )  
    169                                 data1 = Date.UTC(substr(6), substr(3, 2), substr(0, 2)); 
    170                         var data2 = b.match(/\d{2}\/\d{2}\/\d{4}--\d+? \w*b--\d*$/g); 
    171                         data2 = data2[0].substr(0, data2[0].indexOf('--')) 
    172                         with ( data2 ) 
    173                                 data2 = Date.UTC(substr(6), substr(3, 2), substr(0, 2)); 
    174                         return data2 - data1; 
    175                 } 
    176  
     248        searchE.prototype.mount_result = function(data,sort_type){ 
    177249                var nw_array = new Array; 
    178                 data = data.substr(2, data.length - 4); 
    179                 var var_tmp  = data.split("####"); 
     250                var var_tmp = data.substr(2, data.length - 4); 
     251                var_tmp  = var_tmp.split("####"); 
    180252                var cont = parseInt(0); 
    181                 var_tmp.sort(date_comp); 
     253                if (sort_type == 'SORTDATE') 
     254                        var_tmp.sort(date_comp); 
     255                if (sort_type == 'SORTBOX') 
     256                        var_tmp.sort(box_comp);  
     257                if (sort_type == 'SORTSUBJECT') 
     258                        var_tmp.sort(subject_comp);      
     259                if (sort_type == 'SORTWHO') 
     260                        var_tmp.sort(who_comp);  
     261                if (sort_type == 'SORTSIZE') 
     262                        var_tmp.sort(size_comp);         
     263                 
    182264                for(var i=0; i < var_tmp.length; i++){ 
    183265                        if(var_tmp[i] != ""){ 
     
    186268                        } 
    187269                } 
     270                search_tabs += 1; 
     271                var border_id = create_border(get_lang("Search Results"), "search_" + search_tabs); 
    188272                var table = document.createElement("TABLE"); 
    189                         table.id    = "table_result"; 
    190                         table.width = "100%"; 
     273                table.id    = "table_result_" + search_tabs; 
     274                table.width = "100%"; 
    191275 
    192276/*              if(is_ie){ 
     
    226310                        var aux = nw_array[i].split("--"); 
    227311                        } 
    228                          
    229312                        for(var j=0 ; j < aux.length ; j++){ 
    230313                                        var mailbox = aux[0]; 
     
    232315                                        var td = document.createElement("TD");                                   
    233316                                         
    234                                 if( j <= 4){ 
     317                                if( j <= 5){ 
    235318                                        if( j == 0){ 
    236                                                 td.style.width = "20%";                                  
     319                                                td.style.width = "1%";                                   
     320                                                var subject_encode = url_encode(aux[2]); 
     321                                                var td1 = '<input type="checkbox" id="check_box_message_'+aux[5]+'" name="teste"></input>'; 
     322                                        } 
     323                                        if( j == 1){ 
     324                                                td.style.width = "19%";                                  
    237325                                                var nm_box = aux[0].split(cyrus_delimiter); 
    238326                                                var td1 = nm_box.pop(); 
     
    243331                                                } 
    244332                                        } 
    245                                         if( j == 1){ 
     333                                        if( j == 2){ 
    246334                                                var subject_encode = url_encode(aux[2]); 
    247335                                                td.width = "20%";                                        
    248336                                                var td1  =  '<div style="width:100%;overflow:hidden">'+aux[1]+"</div>"; 
    249337                                        } 
    250                                         if( j == 2){ 
     338                                        if( j == 3){ 
    251339                                                var subject_encode = url_encode(aux[2]); 
    252340                                                td.width = "40%";                                        
     
    254342 
    255343                                        } 
    256                                         if( j == 3){ 
     344                                        if( j == 4){ 
    257345                                                td.width = "10%";                                        
    258346                                                td.align = "center"; 
    259347                                                var td1  = aux[3]; 
    260348                                        } 
    261                                         if( j == 4){ 
     349                                        if( j == 5){ 
    262350                                                td.width = "10%"; 
    263351                                                td.align = "center"; 
     
    274362                table.appendChild(tbody); 
    275363                 
    276                 search_tabs += 1; 
    277                 var border_id = create_border(get_lang("Search Results"), "search_" + search_tabs); 
    278364                var content = document.getElementById('content_id_' + "search_" + search_tabs);  
    279365                if(is_ie) 
     
    288374                tr_element = document.createElement("TR"); 
    289375                tr_element.className = "message_header"; 
     376                td_element0 = document.createElement("TD"); 
     377                td_element0.setAttribute("width", "1%"); 
     378                chk_box_element = document.createElement("INPUT"); 
     379                chk_box_element.id  = "chk_box_select_all_messages"; 
     380                chk_box_element.setAttribute("type", "checkbox"); 
     381                chk_box_element.className = "checkbox"; 
     382                chk_box_element.onclick = function(){select_all_search_messages(this.checked,content);}; 
     383                chk_box_element.onmouseover = function () {this.title=get_lang('Select all messages.')}; 
     384                chk_box_element.onkeydown = function (e){ 
     385                        if (is_ie) 
     386                        { 
     387                                if ((window.event.keyCode) == 46) 
     388                                        delete_msgs(get_current_folder(),'selected','null'); 
     389                        } 
     390                        else 
     391                        { 
     392                                if ((e.keyCode) == 46) 
     393                                        delete_msgs(get_current_folder(),'selected','null'); 
     394                        } 
     395                }; 
     396                 
     397                td_element0.appendChild(chk_box_element); 
    290398                td_element1 = document.createElement("TD"); 
    291                 td_element1.setAttribute("width", "20%"); 
     399                td_element1.setAttribute("width", "19%"); 
    292400                td_element1.align = "left"; 
     401                td_element1.onclick = function () { EsearchE.mount_result(data,'SORTBOX'); delete_border(border_id,false);}; 
    293402                td_element1.innerHTML = get_lang("Folder"); 
    294403                td_element2 = document.createElement("TD"); 
    295404                td_element2.setAttribute("width", "20%"); 
    296405                td_element2.align = "left"; 
     406                td_element2.onclick = function () { EsearchE.mount_result(data,'SORTWHO'); delete_border(border_id,false);}; 
    297407                td_element2.innerHTML = get_lang("Who"); 
    298408                td_element3 = document.createElement("TD"); 
    299409                td_element3.setAttribute("width", "40%"); 
    300410                td_element3.align = "left"; 
     411                td_element3.onclick = function () { EsearchE.mount_result(data,'SORTSUBJECT'); delete_border(border_id,false);}; 
    301412                td_element3.innerHTML = get_lang("Subject"); 
    302413                td_element4 = document.createElement("TD"); 
    303414                td_element4.setAttribute("width", "10%"); 
    304415                td_element4.align = "center"; 
     416                td_element4.onclick = function () { EsearchE.mount_result(data,'SORTDATE'); delete_border(border_id,false);}; 
    305417                td_element4.innerHTML = get_lang("Date"); 
    306418                td_element5 = document.createElement("TD"); 
    307419                td_element5.setAttribute("width", "10%"); 
    308420                td_element5.align = "center"; 
     421                td_element5.onclick = function () { EsearchE.mount_result(data,'SORTSIZE'); delete_border(border_id,false);}; 
    309422                td_element5.innerHTML = get_lang("Size"); 
    310423         
     424                tr_element.appendChild(td_element0); 
    311425                tr_element.appendChild(td_element1); 
    312426                tr_element.appendChild(td_element2); 
     
    318432                content.appendChild(table_element); 
    319433                /*end of "put header"*/ 
    320                  
     434 
     435                var span_options = document.getElementById("span_options"); 
     436                if (span_options) 
     437                        span_options.innerHTML = '<span title="'+get_lang("Delete")+'" style="margin-left:8px" class="message_options" onclick=delete_search_msgs('+content.id+')>'+get_lang("Delete")+'</span>'; 
    321438                content.appendChild(table); 
     439                content.parentNode.appendChild(span_options);    
    322440        } 
    323441 
Note: See TracChangeset for help on using the changeset viewer.