Changeset 6048


Ignore:
Timestamp:
04/26/12 16:22:06 (12 years ago)
Author:
airton
Message:

Ticket #2659 - Inconsistencia no botao Buscar na caixa de entrada

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/modules/filters/filters.js

    r6021 r6048  
    327327        } 
    328328} 
     329 
     330function showGridMessages(thiss) { 
     331        var criteria_list = list_container.find('[name="criteriaValue[]"]'); 
     332        var criteria_operator_list = list_container.find('[name="criteriaOperator[]"]'); 
     333        var criteria_value = ""; 
     334        var criteria = ""; 
     335        $.each(criteria_list, function(index, value){ 
     336                criteria += $.trim($(criteria_list[index]).val()) + ","; 
     337        }); 
     338        var criteria_ = criteria.split(","); 
     339        var criteria_operator  = ""; 
     340        $.each(criteria_operator_list, function(index, value){ 
     341                criteria_operator += $.trim($(criteria_list[index]).val()) != "" ? index + "," : ","; 
     342                criteria_value    += $.trim($(criteria_operator_list[index]).val()) + ","; 
     343        }); 
     344        var criteria_operator_  = criteria_operator.split(","); 
     345        var criteria_value_     = criteria_value.split(","); 
     346        var options = ["from", "to", "subject", "body", "size"]; 
     347        var criterias_ = new Array(); 
     348        var j = 0;               
     349        for (i in criteria_) { 
     350                if(criteria_[i] != "") { 
     351                        (j == 0) ? criterias_[j] = {"0": options[i], "1": criteria_value_[i], "2": criteria_[i]} : criterias_[j] = {"0": "OR", "1": options[i], "2": criteria_value_[i], "3": criteria_[i]};  
     352                        j++; 
     353                }        
     354        } 
     355        showGridButton = thiss.parent(); 
     356        $.ajax({   
     357                url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( {"filter": criterias_} ), 
     358                dataType: 'json', 
     359                success: function(data){ 
     360                        allMessages = data; 
     361 
     362                        var parametro =  { "filter": ( data != false ? [ "msgNumber", "IN", data ] : criterias_ ) }; 
     363                         
     364                        if (typeof grid !== "undefined") {  
     365                                grid.jqGrid( 'setGridParam', { url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( parametro ) } ).trigger( 'reloadGrid' );  
     366                                //return; 
     367                        } 
     368                        grid = showGridButton.siblings(".fields-search-messages-grid, .fields-search-messages-grid-pager") 
     369                        .removeClass('hidden').filter(".fields-search-messages-grid").trigger( 'reloadGrid' ).jqGrid({ 
     370                                //url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( {"filter": [ "msgNumber", "IN", data ]} ), 
     371                                url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( parametro ), 
     372                                datatype: "json", 
     373                                mtype: 'GET', 
     374                                colNames:['#', ' ', 'De', 'Assunto', 'Data', 'Tamanho'], 
     375                                colModel:[ 
     376                                        {name:'msg_number',index:'msg_number', width:45, hidden:true, sortable:false}, 
     377                                        {name:'flags',index:'msg_number', width:40, sortable:false, formatter:flags2Class}, 
     378                                        {name:'from.name',index:'msg_number', width:130, sortable:false}, 
     379                                        {name:'subject',index:'subject', width:250, sortable:false}, 
     380                                        {name:'timestamp',index:'timestamp', width:65, align:"center", sortable:false, formatter:date2Time}, 
     381                                        {name:'size',index:'size', width:50, align:"right", sortable:false, formatter:bytes2Size} 
     382                                ], 
     383                                jsonReader : { 
     384                                        root:"rows", 
     385                                        page: "page", 
     386                                        total: "total", 
     387                                        records: "records", 
     388                                        repeatitems: false, 
     389                                        id: "0" 
     390                                }, 
     391                                rowNum:10, 
     392                                //rowList:[10,25,50], 
     393                                rowList:[10], 
     394                                pager: '#fields-search-messages-grid-pager', 
     395                                sortname: 'id', 
     396                                viewrecords: true, 
     397                                sortorder: "desc", 
     398                                multiselect: true, 
     399                                autowidth: true, 
     400                                reloadAfterEdit: true, 
     401                                reloadAfterSubmit: true, 
     402                                height:200, 
     403                                loadComplete: function(data) { 
     404                          //                            // aplica o contador 
     405                          //                            jQuery('.timable').each(function (i) { 
     406                          //                                    jQuery(this).countdown({ 
     407                          //                                            since: new Date(parseInt(this.title)),  
     408                          //                                            significant: 1, 
     409                          //                                            layout: 'h&aacute; {d<}{dn} {dl} {d>}{h<}{hn} {hl} {h>}{m<}{mn} {ml} {m>}{s<}{sn} {sl}{s>}',  
     410                          //                                            description: ' atr&aacute;s' 
     411                          //                                    }); 
     412                          //                            }); 
     413                                }, 
     414                                onSelectRow: function (id, selected) { 
     415                                        if( selected )  
     416                                        { 
     417                                                selectedMessages[ id ] = true; 
     418                                        } 
     419                                        else 
     420                                        { 
     421                                                delete selectedMessages[ id ]; 
     422                                        } 
     423                                }, 
     424                                caption: 'Mensagens que atendem aos crit&eacute;rios' 
     425                        }); // end jqGrid 
     426                } // end success 
     427        }); // end ajax 
     428} 
     429 
    329430 
    330431function list_filters(html){ 
     
    424525                                                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    425526                                        }); 
    426                                 }); 
     527                                }).end().filter('.button.search').click(function() {                             
     528                                /* Valida se o usuário preencheu as informações */ 
     529                                if(valid_save()) 
     530                                        showGridMessages($(this)); 
     531                                else 
     532                                        return; 
     533                        }) 
    427534                        }else{ 
    428535                                list_container.find(".vacation-details-container").removeClass("hidden"); 
     
    537644        }); 
    538645         
    539          
    540          
    541646        var aa = 0; 
    542647         
     
    565670                                }); 
    566671                        }).end().filter('.button.search').click(function() {                             
    567                                 /* Valida se o usuário preencheu as informações */ 
    568672                                if(valid_save()) 
    569                                 {        
    570                                         var criteria_list = list_container.find('[name="criteriaValue[]"]'); 
    571                                         var criteria_operator_list = list_container.find('[name="criteriaOperator[]"]'); 
    572                                         var criteria_value = ""; 
    573                                         var criteria = ""; 
    574                                         $.each(criteria_list, function(index, value){ 
    575                                                 criteria += $.trim($(criteria_list[index]).val()) + ","; 
    576                                         }); 
    577                                         var criteria_ = criteria.split(","); 
    578                                         var criteria_operator  = ""; 
    579                                         $.each(criteria_operator_list, function(index, value){ 
    580                                                 criteria_operator += $.trim($(criteria_list[index]).val()) != "" ? index + "," : ","; 
    581                                                 criteria_value    += $.trim($(criteria_operator_list[index]).val()) + ","; 
    582                                         }); 
    583                                         var criteria_operator_  = criteria_operator.split(","); 
    584                                         var criteria_value_     = criteria_value.split(","); 
    585                                         var options = ["from", "to", "subject", "body", "size"]; 
    586                                         var criterias_ = new Array(); 
    587                                         var j = 0;               
    588                                         for (i in criteria_) { 
    589                                                 if(criteria_[i] != "") { 
    590                                                         (j == 0) ? criterias_[j] = {"0": options[i], "1": criteria_value_[i], "2": criteria_[i]} : criterias_[j] = {"0": "OR", "1": options[i], "2": criteria_value_[i], "3": criteria_[i]};  
    591                                                         j++; 
    592                                                 }        
    593                                         } 
    594                                         showGridButton = $(this).parent(); 
    595                                         $.ajax({   
    596                                                 url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( {"filter": criterias_} ), 
    597                                                 dataType: 'json', 
    598                                                 success: function(data){ 
    599                                                         allMessages = data; 
    600  
    601                                                         var parametro =  { "filter": ( data != false ? [ "msgNumber", "IN", data ] : criterias_ ) }; 
    602                                                          
    603                                                         if (typeof grid !== "undefined") {  
    604                                                                 grid.jqGrid( 'setGridParam', { url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( parametro ) } ).trigger( 'reloadGrid' );  
    605                                                                 return; 
    606                                                         } 
    607                                                         grid = showGridButton.siblings(".fields-search-messages-grid, .fields-search-messages-grid-pager") 
    608                                                         .removeClass('hidden').filter(".fields-search-messages-grid").trigger( 'reloadGrid' ).jqGrid({ 
    609                                                                 //url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( {"filter": [ "msgNumber", "IN", data ]} ), 
    610                                                                 url: DataLayer.basePath + 'folder/INBOX/message&' +  $.param( parametro ), 
    611                                                                 datatype: "json", 
    612                                                                 mtype: 'GET', 
    613                                                                 colNames:['#', ' ', 'De', 'Assunto', 'Data', 'Tamanho'], 
    614                                                                 colModel:[ 
    615                                                                         {name:'msg_number',index:'msg_number', width:45, hidden:true, sortable:false}, 
    616                                                                         {name:'flags',index:'msg_number', width:40, sortable:false, formatter:flags2Class}, 
    617                                                                         {name:'from.name',index:'msg_number', width:130, sortable:false}, 
    618                                                                         {name:'subject',index:'subject', width:250, sortable:false}, 
    619                                                                         {name:'timestamp',index:'timestamp', width:65, align:"center", sortable:false, formatter:date2Time}, 
    620                                                                         {name:'size',index:'size', width:50, align:"right", sortable:false, formatter:bytes2Size} 
    621                                                                 ], 
    622                                                                 jsonReader : { 
    623                                                                         root:"rows", 
    624                                                                         page: "page", 
    625                                                                         total: "total", 
    626                                                                         records: "records", 
    627                                                                         repeatitems: false, 
    628                                                                         id: "0" 
    629                                                                 }, 
    630                                                                 rowNum:10, 
    631                                                                 //rowList:[10,25,50], 
    632                                                                 rowList:[10], 
    633                                                                 pager: '#fields-search-messages-grid-pager', 
    634                                                                 sortname: 'id', 
    635                                                                 viewrecords: true, 
    636                                                                 sortorder: "desc", 
    637                                                                 multiselect: true, 
    638                                                                 autowidth: true, 
    639                                                                 reloadAfterEdit: true, 
    640                                                                 reloadAfterSubmit: true, 
    641                                                                 height:200, 
    642                                                                 loadComplete: function(data) { 
    643                                                           //                            // aplica o contador 
    644                                                           //                            jQuery('.timable').each(function (i) { 
    645                                                           //                                    jQuery(this).countdown({ 
    646                                                           //                                            since: new Date(parseInt(this.title)),  
    647                                                           //                                            significant: 1, 
    648                                                           //                                            layout: 'h&aacute; {d<}{dn} {dl} {d>}{h<}{hn} {hl} {h>}{m<}{mn} {ml} {m>}{s<}{sn} {sl}{s>}',  
    649                                                           //                                            description: ' atr&aacute;s' 
    650                                                           //                                    }); 
    651                                                           //                            }); 
    652                                                                 }, 
    653                                                                 onSelectRow: function (id, selected) { 
    654                                                                         if( selected )  
    655                                                                         { 
    656                                                                                 selectedMessages[ id ] = true; 
    657                                                                         } 
    658                                                                         else 
    659                                                                         { 
    660                                                                                 delete selectedMessages[ id ]; 
    661                                                                         } 
    662                                                                 }, 
    663                                                                 caption: 'Mensagens que atendem aos crit&eacute;rios' 
    664                                                         }); // end jqGrid 
    665                                                 } // end success 
    666                                         }); // end ajax 
    667                                 }  
     673                                        showGridMessages($(this)); 
    668674                                else 
    669                                 { 
    670675                                        return; 
    671                                 } 
    672676                        }); // end function click 
    673677                });     // end DataLayer.render 
Note: See TracChangeset for help on using the changeset viewer.