Changeset 5862 for trunk/prototype/modules/filters/filters.js
- Timestamp:
- 04/02/12 17:58:17 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/prototype/modules/filters/filters.js
r5801 r5862 154 154 } 155 155 156 var apply_messages_ = keys(selectedMessages); 157 delete selectedMessages; 158 156 159 return { 157 160 //id: form.name, … … 199 202 }), 200 203 enabled : false, 201 applyMessages: allMessages? !$.isEmptyObject( selectedMessages ) ? 202 keys( selectedMessages ) : allMessages : "" 203 204 //applyMessages: allMessages? !$.isEmptyObject( selectedMessages ) ? 205 //keys( selectedMessages ) : allMessages : "" 206 applyMessages: apply_messages_ 207 //applyMessages: "" 204 208 }; 205 209 }, 206 210 207 211 encoder: function( filters ){ 208 209 212 var rules = []; 210 213 … … 215 218 216 219 } 220 217 221 }); 218 222 … … 681 685 { name: email, isExact: false, 682 686 criteria:{ 0: {value: email, operator: "=", field: "from"} }, 683 /* To-do: Arrumar para popular a tela com o reject, pois não há essa opção na interface. */684 687 actions: { 0: {parameter: "INBOX/Spam", type: "fileinto"}}, 685 688 enabled: true, … … 885 888 }).end().filter(".cancel").click(function(){ 886 889 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 887 }).end().filter(".submit").click(function() {890 }).end().filter(".submit").click(function() { 888 891 if(valid_save()) 889 892 $(this).submit(); … … 893 896 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 894 897 }); 895 }); 896 }); 898 }).end().filter('.button.search').click(function() { 899 /* Valida se o usuário preencheu as informações */ 900 if(valid_save()) 901 { 902 var criteria_list = list_container.find('[name="criteriaValue[]"]'); 903 var criteria_operator_list = list_container.find('[name="criteriaOperator[]"]'); 904 var criteria_value = ""; 905 var criteria = ""; 906 $.each(criteria_list, function(index, value){ 907 criteria += $.trim($(criteria_list[index]).val()) + ","; 908 }); 909 var criteria_ = criteria.split(","); 910 var criteria_operator = ""; 911 $.each(criteria_operator_list, function(index, value){ 912 criteria_operator += $.trim($(criteria_list[index]).val()) != "" ? index + "," : ","; 913 criteria_value += $.trim($(criteria_operator_list[index]).val()) + ","; 914 }); 915 var criteria_operator_ = criteria_operator.split(","); 916 var criteria_value_ = criteria_value.split(","); 917 var options = ["from", "to", "subject", "body", "size"]; 918 var criterias_ = new Array(); 919 var j = 0; 920 for (i in criteria_) { 921 if(criteria_[i] != "") { 922 (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]}; 923 j++; 924 } 925 } 926 showGridButton = $(this).parent(); 927 $.ajax({ 928 url: DataLayer.basePath + 'folder/INBOX/message&' + $.param( {"filter": criterias_} ), 929 dataType: 'json', 930 success: function(data){ 931 allMessages = data; 932 var parametro = ""; 933 (data != false) ? parametro = {"filter": [ "msgNumber", "IN", data ]} : parametro = {"filter": criterias_}; 934 935 grid = showGridButton.addClass('hidden') 936 .siblings(".fields-search-messages-grid, .fields-search-messages-grid-pager") 937 .removeClass('hidden').filter(".fields-search-messages-grid").jqGrid({ 938 //url: DataLayer.basePath + 'folder/INBOX/message&' + $.param( {"filter": [ "msgNumber", "IN", data ]} ), 939 url: DataLayer.basePath + 'folder/INBOX/message&' + $.param( parametro ), 940 datatype: "json", 941 mtype: 'GET', 942 colNames:['#', ' ', 'De', 'Assunto', 'Data', 'Tamanho'], 943 colModel:[ 944 {name:'msg_number',index:'msg_number', width:45, hidden:true, sortable:false}, 945 {name:'flags',index:'msg_number', width:40, sortable:false, formatter:flags2Class}, 946 {name:'from.name',index:'msg_number', width:130, sortable:false}, 947 {name:'subject',index:'subject', width:250, sortable:false}, 948 {name:'timestamp',index:'timestamp', width:65, align:"center", sortable:false, formatter:date2Time}, 949 {name:'size',index:'size', width:50, align:"right", sortable:false, formatter:bytes2Size} 950 ], 951 jsonReader : { 952 root:"rows", 953 page: "page", 954 total: "total", 955 records: "records", 956 repeatitems: false, 957 id: "0" 958 }, 959 rowNum:10, 960 //rowList:[10,25,50], 961 rowList:[10], 962 pager: '#fields-search-messages-grid-pager', 963 sortname: 'id', 964 viewrecords: true, 965 sortorder: "desc", 966 multiselect: true, 967 autowidth: true, 968 height:40, 969 loadComplete: function(data) { 970 // // aplica o contador 971 // jQuery('.timable').each(function (i) { 972 // jQuery(this).countdown({ 973 // since: new Date(parseInt(this.title)), 974 // significant: 1, 975 // layout: 'há {d<}{dn} {dl} {d>}{h<}{hn} {hl} {h>}{m<}{mn} {ml} {m>}{s<}{sn} {sl}{s>}', 976 // description: ' atrás' 977 // }); 978 // }); 979 }, 980 onSelectRow: function (id, selected) { 981 if( selected ) 982 { 983 selectedMessages[ id ] = true; 984 } 985 else 986 { 987 delete selectedMessages[ id ]; 988 } 989 }, 990 caption: 'Mensagens que atendem aos critérios' 991 }); // end jqGrid 992 } // end success 993 }); // end ajax 994 } 995 else 996 { 997 return; 998 } 999 }); // end function click 1000 }); // end DataLayer.render 897 1001 }); 898 1002 list_container.parent().find(".button.add.vacation").click(function(){
Note: See TracChangeset
for help on using the changeset viewer.