Ignore:
Timestamp:
10/14/11 16:01:50 (13 years ago)
Author:
alexandrecorreia
Message:

Ticket #2270 - Corrigido o problema de paginação do resultado da pesquisa

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2/expressoMail1_2/js/search.js

    r5086 r5113  
    256256                else 
    257257                        span_pg.innerHTML = ""; 
    258                  
    259                 if ( size > preferences.max_email_per_page ) 
    260                 { 
    261                         for ( var i = (this.page > 2 ? this.page-2 : 0) ; i <= parseInt( this.page )+4 ; i+= 1 ) 
    262                         { 
    263                                 if( ( i * preferences.max_email_per_page ) > size) 
    264                                 { 
    265                                         break; 
    266                                 } 
    267  
    268                                 if( this.page == i ) 
    269                                 { 
    270                                         var _link = document.createElement('span'); 
    271                                                 _link.setAttribute("style", "font-weight:bold; color:red") 
    272                                                 _link.innerHTML = ( this.page + 1 ) + "&nbsp;&nbsp;"; 
    273                                 } 
    274                                 else 
    275                                 { 
    276                                         var _page = i; 
    277                                         var _link = document.createElement('A');                                         
    278                                                 _link.innerHTML = ( _page + 1 ) + "&nbsp;&nbsp;"; 
    279                                                 _link.href  = 'javascript:EsearchE.page='+i+';'; 
    280                                                 _link.href += 'cExecute("$this.imap_functions.search_msg",openpage,"condition='+this.condition+'&sort_type='+this.sort_type+'&page='+_page+'&current_tab='+currentTab+'");'; 
    281                                 } 
    282                                                  
    283                                 span_pg.appendChild( _link ); 
    284                         } 
    285  
    286                         Element("div_menu_c3").appendChild(span_pg); 
    287                 } 
     258 
     259                if( size > parseInt(preferences.max_email_per_page) ) 
     260                {  
     261                        this.totalPages = parseInt(size/preferences.max_email_per_page);  
     262                        if((size/preferences.max_email_per_page) > this.totalPages)  
     263                                this.totalPages++;  
     264                }  
     265                 
     266                if(this.page != 0) 
     267                {  
     268                        _link = document.createElement("A");  
     269                        _link.href  = 'javascript:EsearchE.page=0;';  
     270                        _link.href += 'cExecute("$this.imap_functions.search_msg",openpage,"condition='+this.condition+'&sort_type='+this.sort_type+'&page=0&current_tab='+currentTab+'");';  
     271                }  
     272                else 
     273                {  
     274                        _link = document.createElement("SPAN");  
     275                }  
     276                 
     277                span_pg.appendChild(_link);  
     278                 
     279                _link.innerHTML = "&lt;&lt;";  
     280                _link.title = get_lang("First");  
     281                span_pg.innerHTML += "&nbsp;";  
     282                 
     283                if(this.page == this.lastPage + (this.numPages))  
     284                {  
     285                        this.lastPage = this.page - 1;  
     286                }  
     287                else if((this.lastPage != 0 && this.lastPage == this.page) || this.page == (this.totalPages-1))  
     288                {  
     289                        this.lastPage = this.page - (this.numPages - 1);  
     290                }  
     291                else if(this.page == 0)  
     292                {  
     293                        this.lastPage = 0;  
     294                }  
     295                 
     296                if(this.lastPage < 0)  
     297                        this.lastPage = 0;  
     298                else if(this.lastPage > 0 && (this.lastPage > (this.totalPages -(this.numPages - 1))))  
     299                        this.lastPage = this.totalPages -(this.numPages);  
     300                 
     301                var hasMarked = false; 
     302                 
     303                for ( var i = (this.page > 2 ? this.page-2 : 0) ; i <= parseInt( this.page )+4 ; i+= 1 ) 
     304                { 
     305                        if( ( i * preferences.max_email_per_page ) > size) 
     306                        { 
     307                                break; 
     308                        } 
     309 
     310                        if( this.page == i ) 
     311                        { 
     312                                var _link = document.createElement('span'); 
     313                                        _link.setAttribute("style", "font-weight:bold; color:red") 
     314                                        _link.innerHTML = ( this.page + 1 ) + "&nbsp;&nbsp;"; 
     315                        } 
     316                        else 
     317                        { 
     318                                var _page = i; 
     319                                var _link = document.createElement('A');                                         
     320                                        _link.innerHTML = ( _page + 1 ) + "&nbsp;&nbsp;"; 
     321                                        _link.href  = 'javascript:EsearchE.page='+i+';'; 
     322                                        _link.href += 'cExecute("$this.imap_functions.search_msg",openpage,"condition='+this.condition+'&sort_type='+this.sort_type+'&page='+_page+'&current_tab='+currentTab+'");'; 
     323                        } 
     324                                         
     325                        span_pg.appendChild( _link ); 
     326                } 
     327                 
     328                if(this.page != (this.totalPages - 1)) 
     329                {  
     330                        _link = document.createElement("A");  
     331                        _link.href  = 'javascript:EsearchE.page='+(this.totalPages-1)+';';  
     332                        _link.href += 'cExecute("$this.imap_functions.search_msg",openpage,"condition='+this.condition+'&sort_type='+this.sort_type+'&page='+(this.totalPages-1)+'&current_tab='+currentTab+'");';  
     333                }  
     334                else 
     335                {  
     336                    _link = document.createElement("SPAN");  
     337                }  
     338                 
     339                span_pg.innerHTML += "&nbsp;";  
     340                span_pg.appendChild(_link);  
     341                 
     342                _link.title = get_lang("Last");  
     343                _link.innerHTML += "&gt;&gt;";  
     344                 
     345                Element("div_menu_c3").appendChild(span_pg); 
    288346        } 
    289347 
Note: See TracChangeset for help on using the changeset viewer.