Changeset 7892 for trunk/prototype/modules/filters/filters.js
- Timestamp:
- 02/19/13 12:54:42 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/prototype/modules/filters/filters.js
r7856 r7892 605 605 * Lista os filtros para o usuário 606 606 */ 607 function list_filters(html) {607 function list_filters(html) { 608 608 outOfficeVerify(); 609 for (var index in selectedMessages) { 609 for (var index in selectedMessages) 610 { 610 611 delete selectedMessages[index]; 611 612 } 612 if(html){ 613 if( ! $(".filters-windows").length ) 614 container = $('.expressomail-module-container').append("<div class='filters-windows'></div>").find(".filters-windows").html( html ).find(".expresso-window-container"); 615 list_container = $('.expressomail-module-container').find(".rule-list-container"); 616 } 617 list_container = $(".expresso-window-filters").dialog({ 618 title: get_lang('Filters'), 619 width:700, 620 modal: true, 621 resizable: false, 622 closeOnEscape:true, 623 close:function(event, ui) { 624 event.stopPropagation(); 625 if(list_container.find(".cancel").length) 626 list_container.find(".cancel").trigger('click'); 627 $(".dialog-head-buttonpane").hide(); 628 }, 629 open: function () { 630 $(".ui-dialog .ui-dialog-titlebar") 631 .append('<a href="#" class="ui-dialog-titlebar-minimize ui-corner-all" role="button"><span class="ui-icon ui-icon-minusthick">minimize</span></a>') 632 .find('.ui-dialog-titlebar-minimize').click(function() { 633 $(".ui-dialog-buttonpane, .ui-dialog-content").toggle(); 634 $(".ui-icon-minusthick, .ui-icon-newwin").toggleClass('ui-icon-minusthick').toggleClass('ui-icon-newwin'); 635 }); 636 $(".dialog-head-buttonpane").show(); 637 }, 638 autoOpen: false, 639 buttons: [{ 640 text : get_lang("Close"), 641 click : function() { 642 $( this ).dialog( "close" ); 643 } 644 }] 645 }); 646 $(".ui-dialog-titlebar").after("<div class='dialog-head-buttonpane ui-dialog-buttonpane ui-widget-content ui-helper-clearfix' style='background-color: rgb(224, 238, 238); '><div class='ui-dialog-buttonset header-buttonpane'></div></div>"); 647 $(".dialog-head-buttonpane").css("padding", "5px"). 648 find(".header-buttonpane").html("<a href='#' class='button add' title='"+get_lang("Add new rule")+"'>"+get_lang("New rule")+"</a>"+(!outoffice ? "<a href='#' class='button add vacation' title='"+get_lang("Add rule out of office")+"'>"+get_lang("Out of office")+"</a>" : "")).find(".button").button(); 649 650 $(".ui-dialog-buttonpane.ui-widget-content").css("background-color", "#E0EEEE"); 613 614 initialize_container(html); // Inicializa o container do diálogo de filtros 615 616 list_container = create_filter_dialog(); // Cria a estrutura básica do diálogo 617 651 618 var list = DataLayer.render( BASE_PATH + 'modules/filters/filter-list.ejs', DataLayer.get("filter:detail", true)); 652 619 list_container.html(list).find(".button").button(); … … 868 835 869 836 list_container.parent().find(".button.add:first").click(function(){ 870 list_container.parent().find(".dialog-head-buttonpane").addClass("hidden"); 871 DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true), delimiter: cyrus_delimiter},function(html){ 872 list_container.html(html); 873 var accord = list_container.find(".rule-details-container").accordion({autoHeight: false}); 874 list_container.find(".button").button().filter(".forth").click(function(){ 875 accord.accordion('activate',1); 876 }).end().filter(".forth2").click(function(){ 877 accord.accordion('activate',2); 878 }).end().filter(".back").click(function(){ 879 accord.accordion('activate',0); 880 }).end().filter(".back2").click(function(){ 881 accord.accordion('activate',1); 882 }).end().filter(".cancel").click(function(){ 883 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 884 }).end().filter(".submit").click(function() { 885 if(valid_save()) 886 $(this).submit(); 887 else 888 return; 889 DataLayer.commit( 'filter',false,function(){ 890 if($('#gbox_fields-search-messages-grid').length > 0 && action != '') { 891 for (var index in selectedMessages) { 892 set_message_flag(index, action, false); 893 } 894 } 895 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 896 getFromAlertRules(); 897 }); 898 }).end().filter('.button.search').click(function() { 899 if(valid_save()) 900 showGridMessages($(this)); 901 else 902 return; 903 }); // end function click 904 }); // end DataLayer.render 837 render_new_rule(); // Renderiza a tela de criação de nova regra de filtragem. 905 838 }); 906 839 list_container.parent().find(".button.add.vacation").click(function(){ … … 932 865 } 933 866 867 /* 868 Inicializa o container do diálogo de gerenciamento de filtros. 869 */ 870 function initialize_container (html) { 871 if(html) 872 { 873 if(!$(".filters-windows").length) 874 { 875 container = $('.expressomail-module-container').append("<div class='filters-windows'></div>").find(".filters-windows").html(html).find(".expresso-window-container"); 876 } 877 } 878 } 879 880 /* 881 Cria a estrutura básica do diálogo de gerenciamento de filtros. 882 */ 883 function create_filter_dialog () { 884 var dialog = $(".expresso-window-filters").dialog( 885 { 886 title: get_lang('Filters'), 887 width: 700, 888 modal: true, 889 resizable: false, 890 closeOnEscape: true, 891 close: function(event, ui) 892 { 893 event.stopPropagation(); 894 if(list_container.find(".cancel").length) list_container.find(".cancel").trigger('click'); 895 $(".dialog-head-buttonpane").hide(); 896 }, 897 open: function() 898 { 899 $(".ui-dialog .ui-dialog-titlebar").append('<a href="#" class="ui-dialog-titlebar-minimize ui-corner-all" role="button"><span class="ui-icon ui-icon-minusthick">minimize</span></a>').find('.ui-dialog-titlebar-minimize').click(function() 900 { 901 $(".ui-dialog-buttonpane, .ui-dialog-content").toggle(); 902 $(".ui-icon-minusthick, .ui-icon-newwin").toggleClass('ui-icon-minusthick').toggleClass('ui-icon-newwin'); 903 }); 904 $(".dialog-head-buttonpane").show(); 905 }, 906 autoOpen: false, 907 buttons: [ 908 { 909 text: get_lang("Close"), 910 click: function() 911 { 912 $(this).dialog("close"); 913 } 914 }] 915 }); 916 917 $(".ui-dialog-titlebar").after("<div class='dialog-head-buttonpane ui-dialog-buttonpane ui-widget-content ui-helper-clearfix' style='background-color: rgb(224, 238, 238); '><div class='ui-dialog-buttonset header-buttonpane'></div></div>"); 918 $(".dialog-head-buttonpane").css("padding", "5px"). 919 find(".header-buttonpane").html("<a href='#' class='button add' title='" + get_lang("Add new rule") + "'>" + get_lang("New rule") + "</a>" + (!outoffice ? "<a href='#' class='button add vacation' title='" + get_lang("Add rule out of office") + "'>" + get_lang("Out of office") + "</a>" : "")).find(".button").button(); 920 $(".ui-dialog-buttonpane.ui-widget-content").css("background-color", "#E0EEEE"); 921 922 return dialog; 923 } 924 925 /* 926 Renderiza a tela de adição de uma nova regra de filtragem, 927 dentro do diálogo de gerenciamento de filtros. 928 */ 929 function render_new_rule (from, subject) { 930 list_container.parent().find(".dialog-head-buttonpane").addClass("hidden"); 931 var data = { 932 folders: DataLayer.get("folder", true), 933 delimiter: cyrus_delimiter, 934 from: from, 935 subject: subject ? html_entities(subject) : subject 936 } 937 938 DataLayer.render(BASE_PATH + 'modules/filters/edit-filter.ejs', data, function(html) 939 { 940 list_container.html(html); 941 var accord = list_container.find(".rule-details-container").accordion( 942 { 943 autoHeight: false 944 }); 945 list_container.find(".button").button().filter(".forth").click(function() 946 { 947 accord.accordion('activate', 1); 948 }).end().filter(".forth2").click(function() 949 { 950 accord.accordion('activate', 2); 951 }).end().filter(".back").click(function() 952 { 953 accord.accordion('activate', 0); 954 }).end().filter(".back2").click(function() 955 { 956 accord.accordion('activate', 1); 957 }).end().filter(".cancel").click(function() 958 { 959 DataLayer.render(BASE_PATH + 'modules/filters/init.ejs', {}, list_filters); 960 }).end().filter(".submit").click(function() 961 { 962 if(valid_save()) $(this).submit(); 963 else return; 964 DataLayer.commit('filter', false, function() 965 { 966 if($('#gbox_fields-search-messages-grid').length > 0 && action != '') 967 { 968 for(var index in selectedMessages) 969 { 970 set_message_flag(index, action, false); 971 } 972 } 973 DataLayer.render(BASE_PATH + 'modules/filters/init.ejs', {}, list_filters); 974 getFromAlertRules(); 975 }); 976 }).end().filter('.button.search').click(function() 977 { 978 if(valid_save()) showGridMessages($(this)); 979 else return; 980 }); // end function click 981 }); // end DataLayer.render 982 } 934 983 935 984 /* Inicializa os filtros e chama o list_filters
Note: See TracChangeset
for help on using the changeset viewer.