Changeset 5543


Ignore:
Timestamp:
02/24/12 09:46:53 (12 years ago)
Author:
gustavo
Message:

Ticket #2088 - Melhorias no editor de regras de filtro de mensagens do Expresso

File:
1 edited

Legend:

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

    r5542 r5543  
    200200 
    201201}); 
    202 /* 
    203 DataLayer.listen( "filter", function( status ){ 
    204   
    205     DataLayer.render( BASE_PATH + 'modules/filters/filter-list.ejs', 'filter:detail', reraster ); 
    206  
    207 }); 
    208 */ 
    209  
    210202 
    211203var BASE_PATH = '../prototype/'; 
     
    219211/* 
    220212var raster = function( html ){ 
    221         //alert("método raster\nParâmetro a seguir"); 
    222         //alert(html); 
    223213    container = $('body.expressomail-module-container').append( html ).find(".expresso-window-container"); 
    224     //alert("método raster 1"); 
    225         //alert(container); 
    226214        list_container = container.find(".rule-list-container"); 
    227     //alert("método raster 2"); 
    228215        details_container = container.find(".rule-details-container"); 
    229     //alert("método raster 3"); 
    230216        vacation_container = container.find(".vacation-details-container"); 
    231     //alert("método raster 4"); 
    232217        form = container.find("form"); 
    233      
    234         //alert("método raster 5"); 
    235218    criterias = details_container.find( 'fieldset input[name="criteriaType[]"]' ); 
    236     //alert("método raster 6"); 
    237219        actions = details_container.find( 'fieldset input[name="actionType[]"]' ); 
    238     //alert("método raster 7"); 
    239220        nameObj = details_container.find( 'input[name="name"]' ); 
    240     //alert("método raster 8"); 
    241221        isExact = details_container.find( 'input[name="isExact"]' ); 
    242         //alert("método raster 9"); 
    243222    formatter(); 
    244     //alert("método raster 10"); 
    245223    container = container.dialog({ 
    246224            width:700, 
     
    263241            autoOpen: false 
    264242    }); 
    265     //alert("método raster 11"); 
    266243    details_container.accordion({autoHeight: false}); 
    267244     
    268         //alert("método raster 12"); 
    269245    DataLayer.render( BASE_PATH + 'api/templates/folderselect.ejs', 'folder:select', function( html ){ 
    270246          details_container.find(".select-folderlist").append( html ); 
    271247    }); 
    272248 
    273         //alert("método raster 13"); 
     249 
    274250    container.find(".button").button() 
    275251     
     
    299275 
    300276    }); 
    301         //alert("método raster 14"); 
     277 
    302278    details_container.find( ".menu-container" ) 
    303279 
     
    438414                   
    439415    }); 
    440     //alert("método raster 15"); 
     416 
    441417    vacation_container.find( ".menu-container" ) 
    442418        .find(".button.back").click(function(event){ 
     
    456432                return( false ); 
    457433        });  
    458         //alert("método raster 16");     
     434 
    459435} 
    460436 
     
    618594        .removeClass('ui-button-icon-only'); 
    619595}; 
    620  
    621 //DataLayer.render(BASE_PATH + 'modules/filters/filters.ejs', {}, 'filter:detail', reraster, true); 
    622 //var vamo_ver = DataLayer.render(BASE_PATH + 'modules/filters/filters.ejs', {}); 
    623 //raster(vamo_ver); 
    624 //alert(vamo_ver); 
    625 var v = DataLayer.render( BASE_PATH + 'modules/filters/filters.ejs', {}); 
    626 raster(v); 
    627                 details_container.accordion('activate',0); 
    628  
    629                 showGridButton.removeClass('hidden'); 
    630                 grid.addClass('hidden').jqGrid('GridDestroy'); 
    631            
    632                 list_container.removeClass('hidden'); 
    633                 details_container.addClass('hidden'); 
    634                  
    635 DataLayer.render( BASE_PATH + 'modules/filters/filter-list.ejs', 'filter:detail', reraster ); 
    636 //var v = DataLayer.get("filter:detail"); 
    637  
    638 //alert(v); 
    639596// ------------------------------------------------------------ 
    640597// ------------------------------------------------------------     
     
    679636        $(".ui-dialog-buttonpane.ui-widget-content").css("background-color", "#E0EEEE"); 
    680637        var zu = DataLayer.render( BASE_PATH + 'modules/filters/filter-list.ejs', DataLayer.get("filter:detail", true)); 
    681 //      DataLayer.render( BASE_PATH + 'modules/filters/filter-list.ejs', 'filter:detail',function(html){ 
    682                 list_container.html(zu).find(".button").button(); 
    683                  
    684                 list_container.find(".rule-list").selectable({ 
    685                         selecting: function(event, ui) { 
    686                                 $(ui.selecting).find(':checkbox').attr('checked', true); 
    687                         }, 
    688                         unselecting: function(event, ui) { 
    689                                 $(ui.unselecting).find(':checkbox').attr('checked', false); 
    690                         } 
    691                 }); 
    692                  
    693                 $( ".menu-control .button" ).filter(".update").button({ 
    694                         icons: { 
    695                                 primary: "ui-icon-pencil" 
    696                         }, 
    697                         text: false 
    698                 }).click(function(){ 
    699                         var id = $(this).parents("li.rule").find('.title').html(); 
    700                         var filters = DataLayer.get( 'filter', true); 
    701                         for(var i =0; i < filters.length; i++){ 
    702                                 if(filters[i].id == id){ 
    703                                         filters = filters[i]; 
    704                                         break; 
    705                                 }        
    706                         } 
    707                         DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true)},function(html){ 
    708                                 var details_container = $(".expresso-window-filters").html(html); 
    709                                 if(filters.name != "vacation"){ 
    710                                         form = container.find("form"); 
    711                                         criterias = details_container.find( 'fieldset input[name="criteriaType[]"]' ); 
    712                                         actions = details_container.find( 'fieldset input[name="actionType[]"]' ); 
    713                                         nameObj = details_container.find( 'input[name="name"]' ); 
    714                                         isExact = details_container.find( 'input[name="isExact"]' ); 
    715                                         showDetails(filters); 
    716                                         var accord = $(".rule-details-container").accordion({autoHeight: false}); 
    717                                         $(".button").button().filter(".forth").click(function(){ 
    718                                                 accord.accordion('activate',1); 
    719                                         }).end().filter(".back").click(function(){ 
    720                                                 accord.accordion('activate',0); 
    721                                         }).end().filter(".cancel").click(function(){ 
    722                                                 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    723                                         }).end().filter(".submit").click(function(){ 
    724                                                 if(nameObj) 
    725                                                         nameObj.attr("disabled", "false"); 
    726                                                 $(this).submit(); 
    727                                                 DataLayer.commit( 'filter' ); 
    728                                                 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    729                                         }); 
    730                                 }else{ 
    731                                         $(".vacation-details-container").removeClass("hidden"); 
    732                                         $(".rule-details-container").addClass("hidden"); 
    733                                         $(".button").button().filter(".back").click(function(){ 
    734                                                 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    735                                         }).end().filter(".submit").click(function(){ 
    736                                                 $(this).submit(); 
    737                                                 DataLayer.commit( 'filter' ); 
    738                                                 DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    739                                         }); 
    740                                         details_container.find('[name="vacation"]').val(filters.actions[0].parameter); 
    741                                 } 
    742                         }); 
    743                 }).end() 
    744                 .filter(".enable").button({ 
    745                         icons: { 
    746                                 primary: "ui-icon-circle-check" 
    747                         }, 
    748                         text: false 
    749                 }).click(function(){ 
    750                         var id = $(this).parents("li.rule").find('.title').html(); 
    751                         DataLayer.put( 'filter', id, { enabled: "disable"  }); 
    752                         DataLayer.commit("filter"); 
    753                         DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    754                 }).end() 
    755  
    756                 .filter(".disable").button({ 
    757                         icons: { 
    758                                 primary: "ui-icon-circle-close" 
    759                         }, 
    760                         text: false 
    761                 }).click(function(){ 
    762                         var id = $(this).parents("li.rule").find('.title').html(); 
    763                         DataLayer.put( 'filter', id, { enabled: "enabled" }); 
    764                         DataLayer.commit("filter"); 
    765                         DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    766                 }).end() 
    767                  
    768                 .filter(".close").button({ 
    769                         icons: { 
    770                                 primary: "ui-icon-close" 
    771                         }, 
    772                         text: false 
    773                 }).click(function(){ 
    774                         $(event.target) 
    775                         .parents("li.rule").find('.title') 
    776                         .each( function(){ 
    777                                 DataLayer.remove( 'filter', $(this).html() ); 
    778                         }); 
    779                         DataLayer.commit("filter"); 
    780                         DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    781                 }).end().removeClass("ui-button-icon-only"); 
    782                  
    783                 $(".button.add:first").click(function(){ 
    784                         $(".dialog-head-buttonpane").addClass("hidden"); 
    785                         DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true)},function(html){ 
    786                                 $(".expresso-window-filters").html(html); 
     638        list_container.html(zu).find(".button").button(); 
     639         
     640        list_container.find(".rule-list").selectable({ 
     641                selecting: function(event, ui) { 
     642                        $(ui.selecting).find(':checkbox').attr('checked', true); 
     643                }, 
     644                unselecting: function(event, ui) { 
     645                        $(ui.unselecting).find(':checkbox').attr('checked', false); 
     646                } 
     647        }); 
     648         
     649        $( ".menu-control .button" ).filter(".update").button({ 
     650                icons: { 
     651                        primary: "ui-icon-pencil" 
     652                }, 
     653                text: false 
     654        }).click(function(){ 
     655                var id = $(this).parents("li.rule").find('.title').html(); 
     656                var filters = DataLayer.get( 'filter', true); 
     657                for(var i =0; i < filters.length; i++){ 
     658                        if(filters[i].id == id){ 
     659                                filters = filters[i]; 
     660                                break; 
     661                        }        
     662                } 
     663                DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true)},function(html){ 
     664                        var details_container = $(".expresso-window-filters").html(html); 
     665                        if(filters.name != "vacation"){ 
     666                                form = container.find("form"); 
     667                                criterias = details_container.find( 'fieldset input[name="criteriaType[]"]' ); 
     668                                actions = details_container.find( 'fieldset input[name="actionType[]"]' ); 
     669                                nameObj = details_container.find( 'input[name="name"]' ); 
     670                                isExact = details_container.find( 'input[name="isExact"]' ); 
     671                                showDetails(filters); 
    787672                                var accord = $(".rule-details-container").accordion({autoHeight: false}); 
    788673                                $(".button").button().filter(".forth").click(function(){ 
     
    793678                                        DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    794679                                }).end().filter(".submit").click(function(){ 
     680                                        if(nameObj) 
     681                                                nameObj.attr("disabled", "false"); 
    795682                                        $(this).submit(); 
    796683                                        DataLayer.commit( 'filter' ); 
    797684                                        DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    798685                                }); 
    799                                 //$(".rule-edit-container").html(html); 
    800                         });      
    801                 }); 
    802                 $(".button.add.vacation").click(function(){ 
    803                         $(".dialog-head-buttonpane").addClass("hidden"); 
    804                         DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true)},function(html){ 
    805                                 $(".expresso-window-filters").html(html); 
     686                        }else{ 
    806687                                $(".vacation-details-container").removeClass("hidden"); 
    807688                                $(".rule-details-container").addClass("hidden"); 
     
    813694                                        DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
    814695                                }); 
    815                                 //$('[name="vacation"]').elastic().unbind('blur'); 
    816                                 //$(".back").click(function(){ 
    817                                 //$(".rule-edit-container").html(html); 
    818                         });      
     696                                details_container.find('[name="vacation"]').val(filters.actions[0].parameter); 
     697                        } 
    819698                }); 
    820 //      }); 
     699        }).end() 
     700        .filter(".enable").button({ 
     701                icons: { 
     702                        primary: "ui-icon-circle-check" 
     703                }, 
     704                text: false 
     705        }).click(function(){ 
     706                var id = $(this).parents("li.rule").find('.title').html(); 
     707                DataLayer.put( 'filter', id, { enabled: "disable"  }); 
     708                DataLayer.commit("filter"); 
     709                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     710        }).end() 
     711 
     712        .filter(".disable").button({ 
     713                icons: { 
     714                        primary: "ui-icon-circle-close" 
     715                }, 
     716                text: false 
     717        }).click(function(){ 
     718                var id = $(this).parents("li.rule").find('.title').html(); 
     719                DataLayer.put( 'filter', id, { enabled: "enabled" }); 
     720                DataLayer.commit("filter"); 
     721                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     722        }).end() 
     723         
     724        .filter(".close").button({ 
     725                icons: { 
     726                        primary: "ui-icon-close" 
     727                }, 
     728                text: false 
     729        }).click(function(){ 
     730                $(event.target) 
     731                .parents("li.rule").find('.title') 
     732                .each( function(){ 
     733                        DataLayer.remove( 'filter', $(this).html() ); 
     734                }); 
     735                DataLayer.commit("filter"); 
     736                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     737        }).end().removeClass("ui-button-icon-only"); 
     738         
     739        $(".button.add:first").click(function(){ 
     740                $(".dialog-head-buttonpane").addClass("hidden"); 
     741                DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true)},function(html){ 
     742                        $(".expresso-window-filters").html(html); 
     743                        var accord = $(".rule-details-container").accordion({autoHeight: false}); 
     744                        $(".button").button().filter(".forth").click(function(){ 
     745                                accord.accordion('activate',1); 
     746                        }).end().filter(".back").click(function(){ 
     747                                accord.accordion('activate',0); 
     748                        }).end().filter(".cancel").click(function(){ 
     749                                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     750                        }).end().filter(".submit").click(function(){ 
     751                                $(this).submit(); 
     752                                DataLayer.commit( 'filter' ); 
     753                                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     754                        }); 
     755                        //$(".rule-edit-container").html(html); 
     756                });      
     757        }); 
     758        $(".button.add.vacation").click(function(){ 
     759                $(".dialog-head-buttonpane").addClass("hidden"); 
     760                DataLayer.render( BASE_PATH + 'modules/filters/edit-filter.ejs', {folders : DataLayer.get("folder", true)},function(html){ 
     761                        $(".expresso-window-filters").html(html); 
     762                        $(".vacation-details-container").removeClass("hidden"); 
     763                        $(".rule-details-container").addClass("hidden"); 
     764                        $(".button").button().filter(".back").click(function(){ 
     765                                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     766                        }).end().filter(".submit").click(function(){ 
     767                                $(this).submit(); 
     768                                DataLayer.commit( 'filter' ); 
     769                                DataLayer.render( BASE_PATH + 'modules/filters/init.ejs', {},list_filters); 
     770                        }); 
     771                });      
     772        }); 
    821773} 
    822774 
Note: See TracChangeset for help on using the changeset viewer.