Ignore:
Timestamp:
07/24/12 10:20:48 (12 years ago)
Author:
marcieli
Message:

Ticket #2966 - Listagem e consulta separada por tipo (evento, tarefa, atividade).

Location:
sandbox/2.4.2-expresso1/prototype/modules/calendar/js
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • sandbox/2.4.2-expresso1/prototype/modules/calendar/js/helpers.js

    r6820 r6857  
    19271927} 
    19281928 
    1929 function getSelectedCalendars( reverse ){ 
     1929function getSelectedCalendars( reverse, type ){ 
     1930        var selector = ""; 
     1931        if(type == 0) 
     1932                selector = ".my-calendars"; 
     1933        if(type == 1) 
     1934                selector = ".my-groups-task"; 
    19301935    var selecteds = {}; 
    19311936    var cont = 0;  
    19321937    jQuery(function() { 
    1933         jQuery(".my-calendars .calendar-view").each(function(i, obj) {  
     1938        jQuery(selector+" .calendar-view").each(function(i, obj) {  
    19341939            var check_box = obj; 
    19351940            if( reverse ? !check_box.checked : check_box.checked ) { 
     
    19891994 
    19901995function remove_event(eventId, idCalendar){ 
    1991     $.Zebra_Dialog('Tem certeza que deseja excluir o evento?', { 
     1996    $.Zebra_Dialog('Tem certeza que deseja excluir?', { 
    19921997        'type':     'question', 
    19931998        'overlay_opacity': '0.5', 
     
    23192324} 
    23202325 
    2321 function add_events_list(keyword) 
     2326function add_events_list(keyword, type) 
    23222327{ 
    23232328    var tab_title = "";  
    23242329    if (keyword){ 
    2325         if(keyword.length < 10) 
    2326             tab_title = keyword;  
    2327         else 
    2328             tab_title = keyword.substr(0,10) + '..."';  
     2330                type = 2; 
     2331                if(keyword.length < 10) 
     2332                        tab_title = keyword;  
     2333                else 
     2334                        tab_title = keyword.substr(0,10) + '..."';  
    23292335    }else{ 
    2330         tab_title = "Lista de eventos"; 
    2331     } 
     2336                if(type){ 
     2337                        if(!!parseInt(type)) 
     2338                                tab_title = "Lista de tarefas"; 
     2339                        else 
     2340                                tab_title = "Lista de eventos"; 
     2341                } 
     2342    } 
     2343        var tab_selector = ['tab_events_list_', 'tab_tasks_list_', 'tab_all_list_']; 
    23322344    keyword = ( keyword || '' ).replace( /\s+/g, "_" ); 
    23332345         
    2334     if(!(document.getElementById('tab_events_list_' + (Base64.encode(keyword)).replace(/[^\w\s]/gi, "") )))      
     2346    if(!(document.getElementById(tab_selector[type] + (Base64.encode(keyword)).replace(/[^\w\s]/gi, "") )))      
    23352347    { 
    23362348        Encoder.EncodeType = "entity"; 
    2337         $tabs.tabs( "add", "#tab_events_list_" + (Base64.encode(keyword)).replace(/[^\w\s]/gi, ""), Encoder.htmlEncode(tab_title) ); 
     2349        $tabs.tabs( "add", "#"+tab_selector[type] + (Base64.encode(keyword)).replace(/[^\w\s]/gi, ""), Encoder.htmlEncode(tab_title) ); 
    23382350    } 
    23392351    else /* Tab already opened */ 
    23402352    { 
    2341         $tabs.tabs("option", "selected", 2); 
    2342     } 
    2343          
    2344     pageselectCallback(keyword, 0); // load page 1 and insert data on event_list.ejs 
     2353                //$tabs.tabs("option", "selected", 2); 
     2354        } 
     2355         
     2356    pageselectCallback(keyword, 0, false, false, type); // load page 1 and insert data on event_list.ejs 
    23452357         
    23462358    $('.preferences-win.active .button.save, .preferences-win.active .button.cancel, .preferences-win.active .button.import, .preferences-win.active .button.export').button(); 
     
    25532565} 
    25542566 
    2555 function pageselectCallback(keyword, page_index, jq, view){ 
     2567function pageselectCallback(keyword, page_index, jq, view, type){ 
    25562568    $('.qtip.qtip-blue').remove(); 
    25572569         
    2558     var selecteds = getSelectedCalendars(); 
    2559     if(!selecteds && (keyword != '' && keyword != null)){        
    2560         jQuery('#tab_events_list_' + ((Base64.encode(keyword)).replace(/[^\w\s]/gi, "")|| '')).html( 
    2561             '<div title="Lista de eventos" class="events-list events-list-win active empty">' + 
    2562             '<label>Por favor selecione ao menos uma agenda.</label>' + 
     2570        var tab_selector = ['tab_events_list_', 'tab_tasks_list_', 'tab_all_list_']; 
     2571        var tab_title = ['Lista de eventos', 'Lista de tarefas']; 
     2572        var label_noselect_calendar = ['Por favor selecione ao menos uma agenda.', 'Por favor selecione ao menos um grupo.', 'Por favor selecione ao menos uma agenda ou grupo.']; 
     2573        var label_nofound_search = ['Não foi encontrado nenhum evento correspondente à sua pesquisa.', 'Não foi encontrado nenhuma tarefa ou atividade correspondente à sua pesquisa.', 'Não foi encontrado nenhum evento ou tarefa ou atividade correspondente à sua pesquisa.']; 
     2574        var label_nofound = ['Não foram encontrados eventos neste intervalo.', 'Não foram encontradas tarefas ou atividades neste intervalo.', 'Não foram encontrados eventos ou tarefas ou atividades neste intervalo.']; 
     2575        var selecteds = getSelectedCalendars(false, type); 
     2576     
     2577        if(!selecteds && (keyword != '' && keyword != null)){    
     2578        jQuery('#'+tab_selector[type] + ((Base64.encode(keyword)).replace(/[^\w\s]/gi, "")|| '')).html( 
     2579            '<div title="'+tab_title[type]+'" class="events-list events-list-win active empty">' + 
     2580            '<label>'+label_noselect_calendar[type]+'</label>' + 
    25632581            '</div>' 
    25642582            ); 
     
    25802598    var results = DataLayer.get('schedulable:detail', criteria); 
    25812599    keyword = ( keyword || '' ).replace( /\s+/g, "_" );  
    2582 } 
     2600        } 
    25832601// não há resultados     
    25842602 
    2585 var currentView = '#tab_events_list_' + ((Base64.encode(keyword)).replace(/[^\w\s]/gi, "") || ''); 
     2603var currentView = '#'+tab_selector[type] + ((Base64.encode(keyword)).replace(/[^\w\s]/gi, "") || ''); 
    25862604 
    25872605if ((((typeof(results) == 'undefined') || (!results.events_list )) && selecteds) &&(keyword != '' && keyword != null)) { 
    25882606    $(currentView).html( 
    2589                 '<div title="Lista de eventos" class="events-list events-list-win active empty">' + 
    2590                 '<label>Não foi encontrado nenhum evento correspondente à sua pesquisa.</label>' + 
     2607                '<div title="'+title+'" class="events-list events-list-win active empty">' + 
     2608                '<label>'+label_nofound_search[type]+'</label>' + 
    25912609                '</div>' 
    25922610        ); 
     
    25962614                results['page_index'] = page_index; 
    25972615                results['keyword'] = keyword; 
    2598                                  
     2616                results['tab_title'] = tab_title[type];  
    25992617                DataLayer.render( 'templates/event_list.ejs', results, function( html ){ 
    26002618                         
     
    26112629                                remove_event(eventId, calendarId); 
    26122630                        }) 
    2613                         .end().find('.button.edit').click(function(){                            
    2614                                 eventDetails( DataLayer.get( "schedulable", $(this).siblings('[name="eventid"]').val() ), true );                                        
     2631                        .end().find('.button.edit').click(function(){    
     2632                                if($(this).siblings('[name="eventtype"]').val() == 1) 
     2633                                        eventDetails( DataLayer.get( "schedulable", $(this).siblings('[name="eventid"]').val() ), true );                
     2634                                else 
     2635                                        taskDetails( DataLayer.get( "schedulable", $(this).siblings('[name="eventid"]').val() ), true ); 
    26152636                        }); 
    26162637 
     
    26202641    }else{ 
    26212642                $(currentView).html( 
    2622                         '<div title="Lista de eventos" class="events-list events-list-win active empty">' + 
     2643                        '<div title="'+title+'" class="events-list events-list-win active empty">' + 
    26232644                        '<input type="hidden" name="page_index" value="'+page_index+'"></inpunt>'+ 
    26242645                        '<input type="hidden" name="keyword" value="'+keyword+'"></inpunt>'+ 
    2625                         '<label class="empty-result">Não foram encontrados eventos neste intervalo.</label>' + 
     2646                        '<label class="empty-result">'+label_nofound[type]+'</label>' + 
    26262647                        '</div>' 
    26272648                        ); 
     
    26292650    } 
    26302651} 
    2631         if(currentView != '#tab_events_list_') 
     2652        if(currentView != '#'+tab_selector[type]) 
    26322653            $tabs.tabs("select", currentView); 
    26332654} 
  • sandbox/2.4.2-expresso1/prototype/modules/calendar/js/init.js

    r6832 r6857  
    321321                         * TODO - Encontrar icones mais filé 
    322322                         */ 
    323             element.find(".fc-event-inner.fc-event-skin").prepend($('<img class="" src="../prototype/modules/calendar/img/' + ( (event.type == 1) ? "event" : "task" ) + '.png"></img>')); 
     323                        var img_icon = ""; 
     324                        if(event.type == 1) 
     325                                img_icon = "event.png"; 
     326                        if(event.type == 2) 
     327                                img_icon = "task.png"; 
     328                        if(event.type == 3) 
     329                                img_icon = "activity_icon.jpg"; 
     330            element.find(".fc-event-inner.fc-event-skin").prepend($('<img class="" src="../prototype/modules/calendar/img/' + img_icon + '"></img>')); 
    324331                }, 
    325332                 
Note: See TracChangeset for help on using the changeset viewer.