Changeset 6976


Ignore:
Timestamp:
08/09/12 16:32:33 (7 years ago)
Author:
thiago
Message:

Ticket #2966 - Corrigido alguns bugs na impressão.

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

Legend:

Unmodified
Added
Removed
  • sandbox/2.4.2-expresso1/prototype/modules/calendar/css/print.css

    r6915 r6976  
    7272        font: 10px arial; 
    7373        margin: 5px 0; 
     74        word-wrap: break-word; 
    7475} 
    7576.week { 
  • sandbox/2.4.2-expresso1/prototype/modules/calendar/js/helpers.js

    r6974 r6976  
    101101} 
    102102 
     103function printNow(){ 
     104 
     105        var window_print = window.open('','ExpressoCalendar','width=800,height=600,scrollbars=yes');         
     106        window_print.document.open(); 
     107 
     108        var start = $("#calendar").fullCalendar('getView').visStart.getTime()/1000; 
     109        var end = $("#calendar").fullCalendar('getView').visEnd.getTime()/1000; 
     110        var criteria = DataLayer.criteria("schedulable:calendar", {'start':start, 'end':end} ); 
     111         
     112        var data = DataLayer.get("schedulable:print", criteria);         
     113 
     114        if($("#calendar").fullCalendar('getView').name == "month"){                              
     115                window_print.document.write(DataLayer.render('templates/calendar_month_print.ejs', { 
     116                        'InfoPage' : $("#calendar").fullCalendar('getView').title, 
     117                        'days' : data 
     118                } )); 
     119        } 
     120        if($("#calendar").fullCalendar('getView').name == "agendaDay"){                          
     121                window_print.document.write(DataLayer.render('templates/calendar_day_print.ejs', { 
     122                        'InfoPage' : $("#calendar").fullCalendar('getView').title, 
     123                        'days' : data 
     124                } )); 
     125        } 
     126        if($("#calendar").fullCalendar('getView').name == "agendaWeek"){ 
     127                window_print.document.write(DataLayer.render('templates/calendar_week_print.ejs', { 
     128                        'InfoPage' : $("#calendar").fullCalendar('getView').title, 
     129                        'days' : data 
     130                })); 
     131                 
     132                var aux = 0; 
     133                setTimeout(function(){$(window_print.document).find(".all-day").each(function(){ 
     134                        if($(this).height() > aux) 
     135                                aux = $(this).height(); 
     136                }); 
     137                $(window_print.document).find(".all-day").each(function(){ 
     138                        $(this).height(aux); 
     139                }); 
     140                $(window_print.document).find(".all-day-line .write").height(aux); 
     141                aux = 0; 
     142                },20); 
     143        } 
     144        if($("#calendar").fullCalendar('getView').name == "year"){       
     145                window_print.document.write(DataLayer.render('templates/calendar_year_print.ejs', { 
     146                        'html' : $('#calendar .fc-content').html(), 
     147                        'header': $('#calendar').find('.fc-header-center h2').text() 
     148                } )); 
     149        }                
     150        window_print.document.close(); 
     151        setTimeout(window_print.print(), 300); 
     152} 
     153 
    103154function printEvents(){ 
    104155        //var html = DataLayer.render( path + 'templates/attendee_permissions.ejs', {} ); 
     
    113164        $('.fc-header-right').append(print); 
    114165        $('.fc-button-print').click(function(){ 
    115                 var window_print = window.open('','ExpressoCalendar','width=800,height=600,scrollbars=yes');         
    116                 window_print.document.open(); 
    117                 var end = $("#calendar").fullCalendar('getView').visEnd.getTime()/1000; 
    118                 var start = $("#calendar").fullCalendar('getView').visStart.getTime()/1000; 
    119                 var criteria = DataLayer.criteria("schedulable:calendar", {'start':start, 'end':end} ); 
    120                  
    121                 var data = DataLayer.get("schedulable:print", criteria);         
    122                 if($("#calendar").fullCalendar('getView').name == "month"){                              
    123                         window_print.document.write(DataLayer.render('templates/calendar_month_print.ejs', { 
    124                                 'InfoPage' : $("#calendar").fullCalendar('getView').title, 
    125                                 'days' : data 
    126                         } )); 
    127                 } 
    128                 if($("#calendar").fullCalendar('getView').name == "agendaDay"){                          
    129                         window_print.document.write(DataLayer.render('templates/calendar_day_print.ejs', { 
    130                                 'InfoPage' : $("#calendar").fullCalendar('getView').title, 
    131                                 'days' : data 
    132                         } )); 
    133                 } 
    134                 if($("#calendar").fullCalendar('getView').name == "agendaWeek"){ 
    135                         window_print.document.write(DataLayer.render('templates/calendar_week_print.ejs', { 
    136                                 'InfoPage' : $("#calendar").fullCalendar('getView').title, 
    137                                 'days' : data 
    138                         })); 
    139                          
    140                         var aux = 0; 
    141                         setTimeout(function(){$(window_print.document).find(".all-day").each(function(){ 
    142                                 if($(this).height() > aux) 
    143                                         aux = $(this).height(); 
    144                         }); 
    145                         $(window_print.document).find(".all-day").each(function(){ 
    146                                 $(this).height(aux); 
    147                         }); 
    148                         $(window_print.document).find(".all-day-line .write").height(aux); 
    149                         aux = 0; 
    150                         },20); 
    151                 } 
    152                 if($("#calendar").fullCalendar('getView').name == "year"){       
    153                         window_print.document.write(DataLayer.render('templates/calendar_year_print.ejs', { 
    154                                 'html' : $('#calendar .fc-content').html(), 
    155                                 'header': $('#calendar').find('.fc-header-center h2').text() 
    156                         } )); 
    157                 }                
    158                 window_print.document.close(); 
    159                 window_print.print(); 
     166                alert('A tela de impressão será melhor visualizada com a preferência "Paisagem" do seu browser selecionada.'); 
     167                printNow(); 
    160168        }); 
    161          
    162169} 
    163170 
  • sandbox/2.4.2-expresso1/prototype/modules/calendar/templates/calendar_month_print.ejs

    r6915 r6976  
    88        <div class="month"> 
    99                <div class="title_print"> <img src="../prototype/modules/calendar/img/navbar.png"> <%= data.InfoPage %> </div> 
    10                 <%if(data.days){%> 
     10                <% if(data.days){%> 
    1111                <div class="content_month_print">        
    1212                        <%       
     
    1717                                <ul class="calendar_list_print"> 
    1818                                <% for(var ii=0; ii<data.days.events[i][jj].events.length; ii++){  
    19                                         var hora = data.days.events[i][jj].events[ii].allDay ? "Dia todo" : data.days.events[i][jj].events[ii].startHour + " - " + data.days.events[i][jj].events[ii].endHour; 
     19                                        var hora, currentEvent = data.days.events[i][jj].events[ii]; 
     20                                         
     21                                        hora = (!data.isOneDay) ? (currentEvent.startDate +" - "+ currentEvent.startHour +" | "+ currentEvent.endDate +" - "+ currentEvent.endHour) :  
     22                                                   (currentEvent.allDay ? "Dia todo" : currentEvent.startHour + " - " + currentEvent.endHour); 
     23                                         
    2024                                %> 
    2125                                        <% 
Note: See TracChangeset for help on using the changeset viewer.