Ignore:
Timestamp:
04/15/11 16:53:03 (13 years ago)
Author:
brunocosta
Message:

Ticket #1745 - Nova visão semanal e mensal da agenda.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.0.1/calendar/js/dhtmlx/sources/ext/ext_pdf.js

    r4001 r4049  
    1 scheduler.toPDF=function(url,mode,header,footer){  
     1scheduler.toPDF=function(url,mode,header,footer){ 
    22        var dx = 0; 
    33        var dy = 0; 
     
    77                mode = "color"; 
    88        } 
    9                  
     9 
    1010        mode = mode||"color"; 
    11          
     11 
    1212        function x_norm(x) { 
    1313            x = parseFloat(x); 
     
    2727                return xml; 
    2828        } 
    29         function de_day(node,n){  
     29        function de_day(node,n){ 
    3030                var x = parseInt(node.style.left); 
    31                  
     31 
    3232                for (var dx=0; dx < scheduler._cols.length; dx++){ 
    3333                        x-=scheduler._cols[dx]; 
     
    3636                return n; 
    3737        } 
    38         function de_week(node,n){  
     38        function de_week(node,n){ 
    3939                var y = parseInt(node.style.top); 
    4040                for (var dy=0; dy < scheduler._colsS.heights.length; dy++) 
     
    5050            /*  var dd = r[i].cells[j]; 
    5151                var css = dd.className; 
    52                  
     52 
    5353                if (css!=" " && css!="dhx_now ") 
    5454                        days.push(""); 
     
    7070            xml+=">"; 
    7171            xml += "<scale mode='" + scheduler._mode + "' today='" + scheduler._els.dhx_cal_date[0].innerHTML + "'>"; 
    72              
     72 
    7373            if (scheduler._mode == "agenda"){ 
    7474                var xh = scheduler._els.dhx_cal_header[0].childNodes[0].childNodes; 
    75                  
     75 
    7676                xml+="<column>"+xh[0].innerHTML+"</column><column>"+xh[1].innerHTML+"</column>" 
    7777            } else if (scheduler._mode == "year"){ 
     
    8888                        xml+=xml_month_scale(xh); 
    8989                    xml += "</x>"; 
    90                  
     90 
    9191                    var yh = scheduler._els.dhx_cal_data[0]; 
    9292                    if (yh.firstChild.tagName == "TABLE") { 
     
    9797                            yh = yh.previousSibling; 
    9898                        yh = yh.childNodes; 
    99                  
     99 
    100100                        xml += "<y>"; 
    101101                        for (var i = 0; i < yh.length; i++) 
     
    105105                    } 
    106106                } 
    107                  
     107 
    108108            xml += "</scale>"; 
    109109            return xml; 
     
    112112                return (window.getComputedStyle?(window.getComputedStyle(node, null)[style]):(node.currentStyle?node.currentStyle[style]:null))||""; 
    113113        } 
    114         function xml_body() {  
     114        function xml_body() { 
    115115            var xml = ""; 
    116116            var evs = scheduler._rendered; 
    117              
     117 
    118118            if (scheduler._mode == "agenda"){ 
    119119                for (var i=0; i < evs.length; i++) 
     
    123123                for (var i=0; i < evs.length; i++) { 
    124124                        var d = evs[i].start_date; 
    125                                 if (d.valueOf()<scheduler._min_date.valueOf())  
     125                                if (d.valueOf()<scheduler._min_date.valueOf()) 
    126126                                d = scheduler._min_date; 
    127127                                while (d<evs[i].end_date){ 
    128                                         var m = d.getMonth()+12*(d.getFullYear()-scheduler._min_date.getFullYear())-scheduler.week_starts._month;  
     128                                        var m = d.getMonth()+12*(d.getFullYear()-scheduler._min_date.getFullYear())-scheduler.week_starts._month; 
    129129                                        var day  = scheduler.week_starts[m]+d.getDate()-1; 
    130130 
     
    132132                                scheduler._mark_year_date(d); 
    133133                                d = scheduler.date.add(d,1,"day"); 
    134                                 if (d.valueOf()>=scheduler._max_date.valueOf())  
     134                                if (d.valueOf()>=scheduler._max_date.valueOf()) 
    135135                                        break; 
    136136                        } 
    137                         }    
     137                        } 
    138138            } else { 
    139139                    for (var i = 0; i < evs.length; i++) { 
     
    146146                        var day = dets._sday; 
    147147                        var week = dets._sweek; 
    148                         if (scheduler._mode != "month") { 
     148                        if (scheduler._mode != "month" && scheduler._mode != "week") { 
    149149                           if (parseInt(evs[i].style.left) <= 26) { 
    150150                              zx = 2; 
    151151                              zdx += x_norm(evs[i].style.left)-1; 
    152                            }                    
     152                           } 
    153153                            if (evs[i].parentNode == scheduler._els.dhx_cal_data[0]) continue; 
    154154                            zx += x_norm(evs[i].parentNode.style.left); 
     
    157157                            zdy = parseInt(evs[i].offsetHeight); 
    158158                            zy = parseInt(evs[i].style.top) - 22; 
    159                              
    160                             day = de_day(evs[i],day); 
    161                             week = de_week(evs[i],week); 
     159                            if(scheduler._mode == "month" ){ 
     160                                day = de_day(evs[i],day); 
     161                                week = de_week(evs[i],week); 
     162                            } 
    162163                        } 
    163                          
     164 
    164165                        xml += "\n<event week='"+week+"' day='"+day+"' type='" + e_type + "' x='" + zx + "' y='" + zy + "' width='" + zdx + "' height='" + zdy + "'>"; 
    165                          
    166                          
     166 
     167 
    167168                        if (e_type == "event") { 
    168169                            xml += "<header><![CDATA[" + evs[i].childNodes[1].innerHTML + "]]></header>"; 
     
    184185            return xml; 
    185186        } 
    186          
     187 
    187188        var uid = (new Date()).valueOf(); 
    188189        var d=document.createElement("div"); 
     
    193194        document.getElementById(uid).firstChild.value = xml_top(mode).replace("\u2013", "-") + xml_body() + xml_end(); 
    194195        document.getElementById(uid).submit(); 
    195         d.parentNode.removeChild(d);grid = null;         
    196 }    
     196        d.parentNode.removeChild(d);grid = null; 
     197} 
Note: See TracChangeset for help on using the changeset viewer.