Ignore:
Timestamp:
02/06/09 08:41:18 (15 years ago)
Author:
niltonneto
Message:

Alterações feitas pelo desenvolvedor, referente ao expressoCalendar (nova agenda).
Alexandre MUller => amuller@…

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoCalendar/js/calendar_functions.js

    r656 r665  
    2929                        document.getElementById("div_main").style.opacity = 1; 
    3030                        document.getElementById("div_main").filters.alpha.opacity=100; 
    31                 } catch (e) {  } 
     31                } catch (e) {}; 
    3232        return true; 
    3333        } 
     
    5555        divAddDialog.innerHTML = xtools.parse(data, xsl); 
    5656        var closeButton = document.getElementById('closeDialog'); 
    57         if (is_ie){ 
     57        if (is_ie) 
     58        { 
    5859                closeButton.style.left = '285px'; 
    5960                closeButton.style.top = '5px'; 
    60         }else{ 
     61        } 
     62        else 
     63        { 
    6164                closeButton.style.left = '320px'; 
    6265                closeButton.style.top = '25px'; 
     
    112115                        document.getElementById("l_date").innerHTML += "<a href=\"javascript:calendar.getView('div_main','"+viewType+"','&time='+this.nextView);\">&nbsp;\>\></a>"; 
    113116 
    114                 var events = document.getElementById('returnEvents'); 
    115                 while(typeof(events.firstChild.id) == 'string'){ 
    116                         createEventDiv(events.firstChild); 
     117                var getEventsDay = function (data) 
     118                { 
     119                        var xsl = XMLTools.load('xsl/events'+type+'.xsl'); 
     120                        var div = document.getElementById('div_main'); 
     121                        div.innerHTML += xtools.parse(data, xsl); 
     122                        var events = document.getElementById('returnEvents'); 
     123                        while(typeof(events.firstChild.id) == 'string') 
     124                                createEventDiv(events.firstChild); 
    117125                } 
     126                XMLTools.__RETURN_MODE__ = 'XML'; 
     127                XMLTools.request('$this.uicalendar.getEvents'+type+(data?data:'')+'&uid='+calendar.uid, 'GET', getEventsDay); 
    118128 
    119129        }; 
     
    137147            var div = document.getElementById(this.idEl); 
    138148            div.innerHTML = xtools.parse(data, xsl); 
     149            document.getElementById('divAppbox').style.height = "100%"; 
    139150        } 
    140151        catch(e){ 
     
    142153        } 
    143154 
    144         if (type == 'Week' || type == 'Month'){ 
     155        if (type == 'Week' || type == 'Month') 
     156        { 
    145157                var trWeek = document.getElementById('tr_week'); 
    146158                for (var i=0; i < trWeek.childNodes.length; i++) 
     
    202214                default: month = ""; break; 
    203215        } 
    204         return get_lang(month); 
     216        return get_lang("%1 of %2",get_lang(month),(obj.getYear()+1900)); 
    205217} 
    206218Calendar.prototype.parseDate = function (timeStamp) { 
     
    242254} 
    243255var calendar = new Calendar(); 
     256 
     257// This array stores the events in table to avoid conflict in screen 
     258var screenTable = new Array(); 
     259var today = new Date(); 
     260var weekDay = today.getDay(); 
     261function createEventDiv(eventDiv){ 
     262        eventDiv.className = "event_div"; 
     263        eventDiv.style.height = parseInt(eventDiv.childNodes[1].id-eventDiv.childNodes[0].id)/120000+"px"; 
     264        var end_ = timeStamp2id(eventDiv.childNodes[1].id).substr(8); 
     265        var start_ = parseInt(timeStamp2id(eventDiv.childNodes[0].id).substr(8),10); 
     266        if (viewType == "Day"){ 
     267                if (!screenTable[weekDay]) 
     268                        screenTable[weekDay] = new Array(); 
     269                eventDiv.style.width = "190px"; 
     270 
     271                currentPos = 1; 
     272                for (var hour = parseInt(start_,10); hour < parseInt(end_,10);(hour%100 == 30)?hour+=70:hour+=30){ 
     273                        if (!screenTable[weekDay][hour]) 
     274                                screenTable[weekDay][hour] = 0; 
     275 
     276                        if (currentPos <= screenTable[weekDay][hour]) 
     277                                currentPos = screenTable[weekDay][hour]+1; 
     278                } 
     279                for (var hour = parseInt(start_,10); hour < parseInt(end_,10);(hour%100 == 30)?hour+=70:hour+=30) 
     280                        screenTable[weekDay][hour] = currentPos; 
     281                eventDiv.style.left  = 90+(205*(currentPos-1)) + "px" ; 
     282                eventDiv.onmouseover = function(){ createButtons(eventDiv); }; 
     283                eventDiv.onmouseout = function(){ removeButtons(eventDiv); }; 
     284                var resizeDiv = document.createElement('DIV'); 
     285                resizeDiv.id = "resize_" + eventDiv.id; 
     286                resizeDiv.className = 'resize_div'; 
     287                resizeDiv.onmousedown = function() { resizeEvent(eventDiv); }; 
     288                eventDiv.appendChild(resizeDiv); 
     289        } 
     290        if (viewType == "Week"){ 
     291                var tempDate = new Date; 
     292                tempDate.setTime(eventDiv.childNodes[1].id); 
     293                if (!screenTable[tempDate.getDay()]) 
     294                        screenTable[tempDate.getDay()] = new Array(); 
     295                currentPos = 1; 
     296                if (!screenTable[tempDate.getDay()][start_]) 
     297                        screenTable[tempDate.getDay()][start_] = 0; 
     298 
     299                if (currentPos <= screenTable[tempDate.getDay()][start_]) 
     300                        currentPos = screenTable[tempDate.getDay()][start_]+1; 
     301                screenTable[tempDate.getDay()][start_] = currentPos; 
     302 
     303                var widthValue = 100; 
     304                eventDiv.style.width = widthValue+"px"; 
     305 
     306                var headerElement = document.getElementById('weekHeader_'+timeStamp2id(eventDiv.childNodes[1].id).substr(0,8)); 
     307                if (currentPos > 1) 
     308                        eventDiv.style.left = (10+(tempDate.getDay()*122)+(widthValue*currentPos))+"px"; 
     309                headerElement.style.width = (widthValue*currentPos)+"px"; 
     310                eventDiv.style.height = "20px"; 
     311                eventDiv.style.cursor = "pointer"; 
     312                eventDiv.onmouseover = function () { this.style.height = "auto"; this.style.zIndex = 2;}; 
     313                eventDiv.onmouseout = function () { this.style.height = "20px"; this.style.zIndex = 1; }; 
     314                eventDiv.onclick = function () { calendar.getView('div_main','Day','&time='+timeStamp2id(eventDiv.childNodes[1].id).substr(0,8)); }; 
     315        } 
     316 
     317        var tdElement = document.getElementById(timeStamp2id(eventDiv.childNodes[0].id)); 
     318 
     319        if (viewType == "Month"){ 
     320                var tdElement = document.getElementById(timeStamp2id(eventDiv.childNodes[0].id).substr(0,8)+'0000'); 
     321                eventDiv.style.width = "60px"; 
     322                eventDiv.style.height = "15px"; 
     323                eventDiv.onmouseover = function () { if (this.childNodes[2].length > 9) this.style.width = "auto"; this.style.zIndex = 2; }; 
     324                eventDiv.onmouseout = function () { this.style.width = "60px"; this.style.zIndex = 1; }; 
     325                eventDiv.onclick = function () { calendar.getView('div_main','Day','&time='+timeStamp2id(eventDiv.childNodes[1].id).substr(0,8)); }; 
     326                eventDiv.style.cursor = "pointer"; 
     327 
     328                tdElement.style.height = (tdElement.childNodes.length * 10) + "px"; 
     329 
     330                if (tdElement.childNodes.length > 3) 
     331                        eventDiv.style.margin = "20 0 0 "+(20+(tdElement.childNodes.length-4)*25); 
     332                else 
     333                        eventDiv.style.margin = "0 0 0 "+(20+(tdElement.childNodes.length-1)*25); 
     334        } 
     335 
     336        eventDiv.style.top  =  (tdElement.offsetTop + 160) + "px"; 
     337        tdElement.appendChild(eventDiv); 
     338} 
     339 
     340 
Note: See TracChangeset for help on using the changeset viewer.