diff --git a/UI/WebServerResources/UIxCalViewPrint.js b/UI/WebServerResources/UIxCalViewPrint.js index 2eb382f73..9a0eb59a5 100644 --- a/UI/WebServerResources/UIxCalViewPrint.js +++ b/UI/WebServerResources/UIxCalViewPrint.js @@ -33,827 +33,813 @@ var sd, ed; /****************************************** Ajax Requests, callbacks & events/tasks drawings ***************************************************/ function refreshContent() { - refreshEvents(); // Get the eventBlocks and draw them - refreshTasks(); // Get the taskLists and draw them + refreshEvents(); // Get the eventBlocks and draw them + refreshTasks(); // Get the taskLists and draw them } function updateDisplayView(data, newView) { - newView = ((newView) ? newView : currentPreview); - var url = ApplicationBaseURL + "/" + newView; - var day = null; - - if (data) { - day = data['day']; - } - if (!day) - day = currentDay; - - if (day) { + newView = ((newView) ? newView : currentPreview); + var url = ApplicationBaseURL + "/" + newView; + var day = null; + if (data) { - var dayDiv = $("day"+day); - if (dayDiv) { - // Don't reload the view if the event is present in current view - - // Deselect day in date selector - if (document.selectedDate) - document.selectedDate.deselect(); - - // Select day in date selector - var selectedLink = $$('table#dateSelectorTable span[day='+day+']'); - if (selectedLink.length > 0) { - selectedCell = selectedLink[0].getParentWithTagName("td"); - $(selectedCell).selectElement(); - document.selectedDate = selectedCell; - } else - document.selectedDate = null; - - setSelectedDayDate(day); - - return false; - } - else if (day.length == 6) { - day += "01"; - } + day = data['day']; } - url += "?day=" + day; - } - - selectedCalendarCell = null; - - if (document.dayDisplayAjaxRequest) { - document.dayDisplayAjaxRequest.aborted = true; - document.dayDisplayAjaxRequest.abort(); - } - document.dayDisplayAjaxRequest - = triggerAjaxRequest(url, previewDisplayCallback, - { "view": newView, - "day": day}); + if (!day) + day = currentDay; + + if (day) { + if (data) { + var dayDiv = $("day"+day); + if (dayDiv) { + // Don't reload the view if the event is present in current view + + // Deselect day in date selector + if (document.selectedDate) + document.selectedDate.deselect(); + + // Select day in date selector + var selectedLink = $$('table#dateSelectorTable span[day='+day+']'); + if (selectedLink.length > 0) { + selectedCell = selectedLink[0].getParentWithTagName("td"); + $(selectedCell).selectElement(); + document.selectedDate = selectedCell; + } else + document.selectedDate = null; + + setSelectedDayDate(day); + + return false; + } + else if (day.length == 6) { + day += "01"; + } + } + url += "?day=" + day; + } + + selectedCalendarCell = null; + + if (document.dayDisplayAjaxRequest) { + document.dayDisplayAjaxRequest.aborted = true; + document.dayDisplayAjaxRequest.abort(); + } + document.dayDisplayAjaxRequest = triggerAjaxRequest(url, previewDisplayCallback, + { "view": newView, "day": day}); } function previewDisplayCallback(http) { - if (http.readyState == 4 - && http.status == 200) { - $("rightFrameEvents").innerHTML = http.responseText; - $("currentViewMenu").remove(); - $("listCollapse").remove(); - - if (currentPreview == "multicolumndayview") { - _drawCalendarAllDayEvents(null, null, eventsBlocks); + if (http.readyState == 4 + && http.status == 200) { + $("rightFrameEvents").innerHTML = http.responseText; + $("currentViewMenu").remove(); + $("listCollapse").remove(); + + if (currentPreview == "multicolumndayview") { + _drawCalendarAllDayEvents(null, null, eventsBlocks); + } + else { + allDayEventsList = eventsBlocks[1]; + if (currentPreview == "monthview") { + //_drawMonthCalendarEvents(eventsList, eventsBlocks[0], null); + } + else { + _drawCalendarAllDayEvents(allDayEventsList, eventsBlocks[0], null); + } + } + // This ensure the diplay working hours checkbox when switching views + var printHoursCheckBox = $("printHours"); + onPrintWorkingHoursCheck(printHoursCheckBox); + + // Add events color for each calendars + addCalendarsColor(); } - else { - allDayEventsList = eventsBlocks[1]; - if (currentPreview == "monthview") { - //_drawMonthCalendarEvents(eventsList, eventsBlocks[0], null); - } - else { - _drawCalendarAllDayEvents(allDayEventsList, eventsBlocks[0], null); - } - } - // This ensure the diplay working hours checkbox when switching views - var printHoursCheckBox = $("printHours"); - onPrintWorkingHoursCheck(printHoursCheckBox); - - // Add events color for each calendars - addCalendarsColor(); - } - else - log ("calendarDisplayCallback Ajax error ("+ http.readyState + "/" + http.status + ")"); - - return false; + else + log ("calendarDisplayCallback Ajax error ("+ http.readyState + "/" + http.status + ")"); + + return false; } function addCalendarsColor () { - var allCalendars = window.parent$("calendarList"); - var allColors = window.parentvar("UserSettings")['Calendar']['FolderColors']; - - for (var i = 0; i < allCalendars.children.length; i++) { - if (allCalendars.children[i].down("input").checked){ - owner = allCalendars.children[i].getAttribute("owner"); - folderName = allCalendars.children[i].getAttribute("id").substr(1); - - color = allColors[owner + ":Calendar/" + folderName]; - if (!color) { - if(folderName.split("_")[1]) - color = allColors[owner + ":Calendar/" + folderName.split("_")[1]]; - else - color = "#AAAAAA"; - } - appendStyleElement(folderName, color); + var allCalendars = window.parent$("calendarList"); + var allColors = window.parentvar("UserSettings")['Calendar']['FolderColors']; + + for (var i = 0; i < allCalendars.children.length; i++) { + if (allCalendars.children[i].down("input").checked){ + owner = allCalendars.children[i].getAttribute("owner"); + folderName = allCalendars.children[i].getAttribute("id").substr(1); + + color = allColors[owner + ":Calendar/" + folderName]; + if (!color) { + if(folderName.split("_")[1]) + color = allColors[owner + ":Calendar/" + folderName.split("_")[1]]; + else + color = "#AAAAAA"; + } + appendStyleElement(folderName, color); + } } - } } function refreshEvents() { - var todayDate = new Date(); - - if (!currentDay) - currentDay = todayDate.getDayString(); - - if (currentPreview == "dayview" || currentPreview == "multicolumndayview") { // dayView and MultiColumns View - sd = currentDay; - ed = sd; - } - else if (currentPreview == "weekview") { // WeekView - var startDate; - startDate = currentDay.asDate(); - startDate = startDate.beginOfWeek(); - sd = startDate.getDayString(); - var endDate = new Date(); - endDate.setTime(startDate.getTime()); - endDate.addDays(6); - ed = endDate.getDayString(); - } - else { - var monthDate; - monthDate = currentDay.asDate(); - monthDate.setDate(1); - sd = monthDate.beginOfWeek().getDayString(); - - var lastMonthDate = new Date(); - lastMonthDate.setTime(monthDate.getTime()); - lastMonthDate.setMonth(monthDate.getMonth() + 1); - lastMonthDate.addDays(-1); - ed = lastMonthDate.endOfWeek().getDayString(); - } - if (document.refreshEventsAjaxRequest) { - document.refreshEventsAjaxRequest.aborted = true; - document.refreshEventsAjaxRequest.abort(); - } - var url = (ApplicationBaseURL + "/eventsblocks?sd=" + sd + "&ed=" + ed - + "&view=" + currentPreview); - - document.refreshEventsAjaxRequest - = triggerAjaxRequest(url, refreshEventsCallback, - {"startDate": sd, "endDate": ed}); + var todayDate = new Date(); + + if (!currentDay) + currentDay = todayDate.getDayString(); + + if (currentPreview == "dayview" || currentPreview == "multicolumndayview") { // dayView and MultiColumns View + sd = currentDay; + ed = sd; + } + else if (currentPreview == "weekview") { // WeekView + var startDate; + startDate = currentDay.asDate(); + startDate = startDate.beginOfWeek(); + sd = startDate.getDayString(); + var endDate = new Date(); + endDate.setTime(startDate.getTime()); + endDate.addDays(6); + ed = endDate.getDayString(); + } + else { + var monthDate; + monthDate = currentDay.asDate(); + monthDate.setDate(1); + sd = monthDate.beginOfWeek().getDayString(); + + var lastMonthDate = new Date(); + lastMonthDate.setTime(monthDate.getTime()); + lastMonthDate.setMonth(monthDate.getMonth() + 1); + lastMonthDate.addDays(-1); + ed = lastMonthDate.endOfWeek().getDayString(); + } + if (document.refreshEventsAjaxRequest) { + document.refreshEventsAjaxRequest.aborted = true; + document.refreshEventsAjaxRequest.abort(); + } + var url = (ApplicationBaseURL + "/eventsblocks?sd=" + sd + "&ed=" + ed + + "&view=" + currentPreview); + + document.refreshEventsAjaxRequest + = triggerAjaxRequest(url, refreshEventsCallback, + {"startDate": sd, "endDate": ed}); } function refreshTasks(){ - if (document.tasksListAjaxRequest) { - document.tasksListAjaxRequest.aborted = true; - document.tasksListAjaxRequest.abort(); - } - - var taskListFilter = window.parentvar("taskListFilter"); - url = window.parentvar("ApplicationBaseURL") + "/" + "taskslist?show-completed=" + printCompletedTasks - + "&asc=" + sorting["task-ascending"] - + "&sort=" + sorting["task-attribute"] - + "&filterpopup=" + taskListFilter; - - // TODO : Is that really necessary ? - var tasksList = window.parent$("tasksList"); - var selectedIds; - if (tasksList) - selectedIds = tasksList.getSelectedNodesId(); - else - selectedIds = null; - - document.tasksListAjaxRequest = triggerAjaxRequest(url, refreshTasksListCallback, selectedIds); + if (document.tasksListAjaxRequest) { + document.tasksListAjaxRequest.aborted = true; + document.tasksListAjaxRequest.abort(); + } + + var taskListFilter = window.parentvar("taskListFilter"); + url = window.parentvar("ApplicationBaseURL") + "/" + "taskslist?show-completed=" + printCompletedTasks + + "&asc=" + sorting["task-ascending"] + + "&sort=" + sorting["task-attribute"] + + "&filterpopup=" + taskListFilter; + + // TODO : Is that really necessary ? + var tasksList = window.parent$("tasksList"); + var selectedIds; + if (tasksList) + selectedIds = tasksList.getSelectedNodesId(); + else + selectedIds = null; + + document.tasksListAjaxRequest = triggerAjaxRequest(url, refreshTasksListCallback, selectedIds); } function refreshEventsCallback(http) { - if (http.readyState == 4 - && http.status == 200) { - if (http.responseText.length > 0) { - eventsBlocks = http.responseText.evalJSON(true); - $("rightFrameEvents").innerHTML = ""; - if ($("printLayoutList").value == "0" && eventsBlocks.length > 0) { - _drawEventsCells(eventsBlocks); - } - else { - updateDisplayView(null, currentPreview); - } - adjustFrames(); + if (http.readyState == 4 + && http.status == 200) { + if (http.responseText.length > 0) { + eventsBlocks = http.responseText.evalJSON(true); + $("rightFrameEvents").innerHTML = ""; + if ($("printLayoutList").value == "0" && eventsBlocks.length > 0) { + _drawEventsCells(eventsBlocks); + } + else { + updateDisplayView(null, currentPreview); + } + adjustFrames(); + } } - } - else - log("AJAX error when refreshing calendar events"); + else + log("AJAX error when refreshing calendar events"); } function refreshTasksListCallback(http) { - if (http.readyState == 4 - && http.status == 200) { - if (http.responseText.length > 0) { - var tasksBlocks = http.responseText.evalJSON(true); - $("rightFrameTasks").innerHTML = ""; - if (tasksBlocks.length > 0) { - _drawTasksCells(tasksBlocks); - adjustFrames(); - } + if (http.readyState == 4 + && http.status == 200) { + if (http.responseText.length > 0) { + var tasksBlocks = http.responseText.evalJSON(true); + $("rightFrameTasks").innerHTML = ""; + if (tasksBlocks.length > 0) { + _drawTasksCells(tasksBlocks); + adjustFrames(); + } + } } - } - else - log("AJAX error when refreshing calendar events"); + else + log("AJAX error when refreshing calendar events"); } function _drawEventsCells(eventsBlocks) { - var events = _("Events"); - $("rightFrameEvents").insert("

"+events+"

"); - if (currentPreview == "multicolumndayview") { - for(var i=0; i < eventsBlocks.length; i++) // calendars - { - for (var j = 0; j < eventsBlocks[i][0].length; j++) { - var event = _parseEvent(eventsBlocks[i][0][j]); - $("rightFrameEvents").insert(event); - } + var events = _("Events"); + $("rightFrameEvents").insert("

"+events+"

"); + if (currentPreview == "multicolumndayview") { + for(var i=0; i < eventsBlocks.length; i++) { // calendars + for (var j = 0; j < eventsBlocks[i][0].length; j++) { + var event = _parseEvent(eventsBlocks[i][0][j]); + $("rightFrameEvents").insert(event); + } + } } - } - else { - for(var i=0; i < eventsBlocks[0].length; i++) - { - var event = _parseEvent(eventsBlocks[0][i]); - $("rightFrameEvents").insert(event); + else { + for(var i=0; i < eventsBlocks[0].length; i++) { + var event = _parseEvent(eventsBlocks[0][i]); + $("rightFrameEvents").insert(event); + } } - } } function _drawTasksCells(tasksBlocks) { - var task = _("Tasks"); - $("rightFrameTasks").insert("

"+task+"

"); - for(var i=0; i < tasksBlocks.length; i++) - { - if (!(printNoDueDateTasks == 0 && tasksBlocks[i][5] == null)) { - var task = _parseTask(tasksBlocks[i]); - $("rightFrameTasks").insert(task); + var task = _("Tasks"); + $("rightFrameTasks").insert("

"+task+"

"); + for(var i=0; i < tasksBlocks.length; i++) { + if (!(printNoDueDateTasks == 0 && tasksBlocks[i][5] == null)) { + var task = _parseTask(tasksBlocks[i]); + $("rightFrameTasks").insert(task); + } } - } } // TODO : Maybe use the drawfunction from the schedulerUI.js function _drawCalendarEvents(events, eventsData, columnsData) { - var daysView = $("daysView"); - var subdivs = daysView.childNodesWithTag("div"); - var printHoursCheckBox = $("printHours"); - for (var i = 0; i < subdivs.length; i++) { - var subdiv = subdivs[i]; - if (subdiv.hasClassName("days")) { - var days = subdiv.childNodesWithTag("div"); - if (currentPreview == "multicolumndayview") { - for (var j = 0; j < days.length; j++) { - var parentDiv = days[j].childNodesWithTag("div")[0]; - var calendar = columnsData[j]; - var calendarEvents = calendar[2][0]; - var calendarEventsData = calendar[0]; - if (parentDiv.getElementsByClassName("event").length > 0) { - var oldEvents = parentDiv.getElementsByClassName("event"); - var length = oldEvents.length - 1; - for (var x = length; x >= 0; x--){ - oldEvents[x].remove(); - } - } - for (var k = 0; k < calendarEvents.length; k++) { - var eventRep = calendarEvents[k]; - var nbr = eventRep.nbr; - - if (printHoursCheckBox.checked) { - var offset = _computeOffset(parentDiv); - if ((eventRep.start - offset[0]) > 0 && (eventRep.start - offset[0]) < offset[1]) { - var eventCell = newEventDIV(eventRep, calendarEventsData[nbr], offset[0]); - parentDiv.appendChild(eventCell); - } + var daysView = $("daysView"); + var subdivs = daysView.childNodesWithTag("div"); + var printHoursCheckBox = $("printHours"); + for (var i = 0; i < subdivs.length; i++) { + var subdiv = subdivs[i]; + if (subdiv.hasClassName("days")) { + var days = subdiv.childNodesWithTag("div"); + if (currentPreview == "multicolumndayview") { + for (var j = 0; j < days.length; j++) { + var parentDiv = days[j].childNodesWithTag("div")[0]; + var calendar = columnsData[j]; + var calendarEvents = calendar[2][0]; + var calendarEventsData = calendar[0]; + if (parentDiv.getElementsByClassName("event").length > 0) { + var oldEvents = parentDiv.getElementsByClassName("event"); + var length = oldEvents.length - 1; + for (var x = length; x >= 0; x--) + oldEvents[x].remove(); + } + for (var k = 0; k < calendarEvents.length; k++) { + var eventRep = calendarEvents[k]; + var nbr = eventRep.nbr; + + if (printHoursCheckBox.checked) { + var offset = _computeOffset(parentDiv); + if ((eventRep.start - offset[0]) > 0 && (eventRep.start - offset[0]) < offset[1]) { + var eventCell = newEventDIV(eventRep, calendarEventsData[nbr], offset[0]); + parentDiv.appendChild(eventCell); + } + } + else { + var eventCell = newEventDIV(eventRep, calendarEventsData[nbr], null); + parentDiv.appendChild(eventCell); + } + } + } } else { - var eventCell = newEventDIV(eventRep, calendarEventsData[nbr], null); - parentDiv.appendChild(eventCell); + for (var j = 0; j < days.length; j++) { + var parentDiv = days[j].childNodesWithTag("div")[0]; + if (parentDiv.getElementsByClassName("event").length > 0) { + var oldEvents = parentDiv.getElementsByClassName("event"); + var length = oldEvents.length - 1; + for (var x = length; x >= 0; x--) + oldEvents[x].remove(); + } + for (var k = 0; k < events[j].length; k++) { + var eventRep = events[j][k]; + var nbr = eventRep.nbr; + if (printHoursCheckBox.checked) { + var offset = _computeOffset(parentDiv); + if ((eventRep.start - offset[0]) > 0 && (eventRep.start - offset[0]) < offset[1]) { + var eventCell = newEventDIV(eventRep, eventsData[nbr], offset[0]); + parentDiv.appendChild(eventCell); + } + } + else { + var eventCell = newEventDIV(eventRep, eventsData[nbr], null); + parentDiv.appendChild(eventCell); + } + } + } } - } } - } - else { - for (var j = 0; j < days.length; j++) { - var parentDiv = days[j].childNodesWithTag("div")[0]; - if (parentDiv.getElementsByClassName("event").length > 0) { - var oldEvents = parentDiv.getElementsByClassName("event"); - var length = oldEvents.length - 1; - for (var x = length; x >= 0; x--){ - oldEvents[x].remove(); - } - } - for (var k = 0; k < events[j].length; k++) { - var eventRep = events[j][k]; - var nbr = eventRep.nbr; - if (printHoursCheckBox.checked) { - var offset = _computeOffset(parentDiv); - if ((eventRep.start - offset[0]) > 0 && (eventRep.start - offset[0]) < offset[1]) { - var eventCell = newEventDIV(eventRep, eventsData[nbr], offset[0]); - parentDiv.appendChild(eventCell); - } - } - else { - var eventCell = newEventDIV(eventRep, eventsData[nbr], null); - parentDiv.appendChild(eventCell); - } - } - } - } } - } } function _drawCalendarAllDayEvents(events, eventsData, columnsData) { - var headerView = $("calendarHeader"); - var subdivs = headerView.childNodesWithTag("div"); - - if (currentPreview == "multicolumndayview"){ - var days = subdivs[2].childNodesWithTag("div"); - for (var i = 0; i < days.length; i++) { - var parentDiv = days[i]; - var calendar = columnsData[i]; - var calendarAllDayEvents = calendar[1][0]; - var calendarAllDayEventsData = calendar[0]; - for (var j = 0; j < calendarAllDayEvents.length; j++) { - var eventRep = calendarAllDayEvents[j]; - var nbr = eventRep.nbr; - var eventCell = newAllDayEventDIV(eventRep, calendarAllDayEventsData[nbr]); - parentDiv.appendChild(eventCell); - } + var headerView = $("calendarHeader"); + var subdivs = headerView.childNodesWithTag("div"); + + if (currentPreview == "multicolumndayview") { + var days = subdivs[2].childNodesWithTag("div"); + for (var i = 0; i < days.length; i++) { + var parentDiv = days[i]; + var calendar = columnsData[i]; + var calendarAllDayEvents = calendar[1][0]; + var calendarAllDayEventsData = calendar[0]; + for (var j = 0; j < calendarAllDayEvents.length; j++) { + var eventRep = calendarAllDayEvents[j]; + var nbr = eventRep.nbr; + var eventCell = newAllDayEventDIV(eventRep, calendarAllDayEventsData[nbr]); + parentDiv.appendChild(eventCell); + } + } } - } - else { - var days = subdivs[1].childNodesWithTag("div"); - for (var i = 0; i < days.length; i++) { - var parentDiv = days[i]; - for (var j = 0; j < events[i].length; j++) { - var eventRep = events[i][j]; - var nbr = eventRep.nbr; - var eventCell = newAllDayEventDIV(eventRep, eventsData[nbr]); - parentDiv.appendChild(eventCell); - } + else { + var days = subdivs[1].childNodesWithTag("div"); + for (var i = 0; i < days.length; i++) { + var parentDiv = days[i]; + for (var j = 0; j < events[i].length; j++) { + var eventRep = events[i][j]; + var nbr = eventRep.nbr; + var eventCell = newAllDayEventDIV(eventRep, eventsData[nbr]); + parentDiv.appendChild(eventCell); + } + } } - } - adjustPreviewHeader(); + adjustPreviewHeader(); } // todo : month function newEventDIV(eventRep, event, offset) { - var eventCell = newBaseEventDIV(eventRep, event, event[4]); - - var pc = 100 / eventRep.siblings; - var left = Math.floor(eventRep.position * pc); - eventCell.style.left = left + "%"; - var right = Math.floor(100 - (eventRep.position + 1) * pc); - eventCell.style.right = right + "%"; - if (offset != null) { - eventCell.addClassName("starts" + (eventRep.start - offset)); - } - else { - eventCell.addClassName("starts" + eventRep.start); - } - eventCell.addClassName("lasts" + eventRep.length); - - if (event[7]) { - var inside = eventCell.childNodesWithTag("div")[0]; - var textDiv = inside.childNodesWithTag("div")[1]; - textDiv.appendChild(createElement("br")); - var span = createElement("span", null, "location"); - var text = _("Location:") + " " + event[7]; - span.update(text); - textDiv.appendChild(span); - } - - return eventCell; + var eventCell = newBaseEventDIV(eventRep, event, event[4]); + + var pc = 100 / eventRep.siblings; + var left = Math.floor(eventRep.position * pc); + eventCell.style.left = left + "%"; + var right = Math.floor(100 - (eventRep.position + 1) * pc); + eventCell.style.right = right + "%"; + if (offset != null) { + eventCell.addClassName("starts" + (eventRep.start - offset)); + } + else { + eventCell.addClassName("starts" + eventRep.start); + } + eventCell.addClassName("lasts" + eventRep.length); + + if (event[7]) { + var inside = eventCell.childNodesWithTag("div")[0]; + var textDiv = inside.childNodesWithTag("div")[1]; + textDiv.appendChild(createElement("br")); + var span = createElement("span", null, "location"); + var text = _("Location:") + " " + event[7]; + span.update(text); + textDiv.appendChild(span); + } + + return eventCell; } function newBaseEventDIV(eventRep, event, eventText) { - // log ("0 cname = " + event[0]); - // log ("1 calendar = " + event[1]); - // log ("2 calendar name = " + event[2]); - // log ("3 status = " + event[3]); - // log ("4 title = " + event[4]); - // log ("5 start = " + event[5]); - // log ("6 end = " + event[6]); - // log ("7 location = " + event[7]); - // log ("8 isallday = " + event[8]); - // log ("9 classification = " + event[9]); // 0 = public, 1 = private, 2 = confidential - // log ("10 category = " + event[10]); - // log ("11 participants emails = " + event[11]); - // log ("12 participants states = " + event[12]); - // log ("13 owner = " + event[13]); - // log ("14 iscycle = " + event[14]); - // log ("15 nextalarm = " + event[15]); - // log ("16 recurrenceid = " + event[16]); - // log ("17 isexception = " + event[17]); - // log ("18 editable = " + event[18]); - // log ("19 erasable = " + event[19]); - // log ("20 ownerisorganizer = " + event[20]); - - var eventCell = createElement("div"); - eventCell.cname = event[0]; - eventCell.calendar = event[1]; - var startDate = new Date(event[5]*1000); - if (startDate) { - eventCell.startDate = event[5]; - eventCell.writeAttribute('day', startDate.getDayString()); - eventCell.writeAttribute('hour', event[8]? 'allday' : startDate.getHourString()); - } - // if (event[8] == 1) - // eventCell.addClassName("private"); - // else if (event[8] == 2) - // eventCell.addClassName("confidential"); - if (eventRep.recurrenceTime) - eventCell.recurrenceTime = eventRep.recurrenceTime; - //eventCell.owner = event[12]; - eventCell.isException = event[17]; - eventCell.editable = event[18]; - eventCell.erasable = event[19] || IsSuperUser; - eventCell.ownerIsOrganizer = event[20]; - eventCell.addClassName("event"); - // if (event[14] > 0) - // eventCell.addClassName("alarm"); - - var innerDiv = createElement("div"); - eventCell.appendChild(innerDiv); - innerDiv.addClassName("eventInside"); - innerDiv.addClassName("calendarFolder" + event[1]); - if (eventRep.userState >= 0 && userStates[eventRep.userState]) - innerDiv.addClassName(userStates[eventRep.userState]); - - var gradientDiv = createElement("div"); - innerDiv.appendChild(gradientDiv); - gradientDiv.addClassName("gradient"); - - var gradientImg = createElement("img"); - gradientDiv.appendChild(gradientImg); - gradientImg.src = ResourcesURL + "/event-gradient.png"; - - var textDiv = createElement("div"); - innerDiv.appendChild(textDiv); - textDiv.addClassName("text"); - var iconSpan = createElement("span", null, "icons"); - textDiv.update(eventText.replace(/(\\r)?\\n/g, "
")); - textDiv.appendChild(iconSpan); - - // Add alarm and classification icons - if (event[9] == 1) - createElement("img", null, null, {src: ResourcesURL + "/private.png"}, null, iconSpan); - else if (event[9] == 2) - createElement("img", null, null, {src: ResourcesURL + "/confidential.png"}, null, iconSpan); - if (event[15] > 0) - createElement("img", null, null, {src: ResourcesURL + "/alarm.png"}, null, iconSpan); - - if (event[10] != null) { - var category = event[10].decodeEntities(); - var categoryStyle = categoriesStyles.get(category); - if (!categoryStyle) { - categoryStyle = 'category_' + categoriesStyles.keys().length; - categoriesStyles.set([category], categoryStyle); + // log ("0 cname = " + event[0]); + // log ("1 calendar = " + event[1]); + // log ("2 calendar name = " + event[2]); + // log ("3 status = " + event[3]); + // log ("4 title = " + event[4]); + // log ("5 start = " + event[5]); + // log ("6 end = " + event[6]); + // log ("7 location = " + event[7]); + // log ("8 isallday = " + event[8]); + // log ("9 classification = " + event[9]); // 0 = public, 1 = private, 2 = confidential + // log ("10 category = " + event[10]); + // log ("11 participants emails = " + event[11]); + // log ("12 participants states = " + event[12]); + // log ("13 owner = " + event[13]); + // log ("14 iscycle = " + event[14]); + // log ("15 nextalarm = " + event[15]); + // log ("16 recurrenceid = " + event[16]); + // log ("17 isexception = " + event[17]); + // log ("18 editable = " + event[18]); + // log ("19 erasable = " + event[19]); + // log ("20 ownerisorganizer = " + event[20]); + + var eventCell = createElement("div"); + eventCell.cname = event[0]; + eventCell.calendar = event[1]; + var startDate = new Date(event[5]*1000); + if (startDate) { + eventCell.startDate = event[5]; + eventCell.writeAttribute('day', startDate.getDayString()); + eventCell.writeAttribute('hour', event[8]? 'allday' : startDate.getHourString()); } - innerDiv.addClassName(categoryStyle); - } - - return eventCell; + // if (event[8] == 1) + // eventCell.addClassName("private"); + // else if (event[8] == 2) + // eventCell.addClassName("confidential"); + if (eventRep.recurrenceTime) + eventCell.recurrenceTime = eventRep.recurrenceTime; + //eventCell.owner = event[12]; + eventCell.isException = event[17]; + eventCell.editable = event[18]; + eventCell.erasable = event[19] || IsSuperUser; + eventCell.ownerIsOrganizer = event[20]; + eventCell.addClassName("event"); + // if (event[14] > 0) + // eventCell.addClassName("alarm"); + + var innerDiv = createElement("div"); + eventCell.appendChild(innerDiv); + innerDiv.addClassName("eventInside"); + innerDiv.addClassName("calendarFolder" + event[1]); + if (eventRep.userState >= 0 && userStates[eventRep.userState]) + innerDiv.addClassName(userStates[eventRep.userState]); + + var gradientDiv = createElement("div"); + innerDiv.appendChild(gradientDiv); + gradientDiv.addClassName("gradient"); + + var gradientImg = createElement("img"); + gradientDiv.appendChild(gradientImg); + gradientImg.src = ResourcesURL + "/event-gradient.png"; + + var textDiv = createElement("div"); + innerDiv.appendChild(textDiv); + textDiv.addClassName("text"); + var iconSpan = createElement("span", null, "icons"); + textDiv.update(eventText.replace(/(\\r)?\\n/g, "
")); + textDiv.appendChild(iconSpan); + + // Add alarm and classification icons + if (event[9] == 1) + createElement("img", null, null, {src: ResourcesURL + "/private.png"}, null, iconSpan); + else if (event[9] == 2) + createElement("img", null, null, {src: ResourcesURL + "/confidential.png"}, null, iconSpan); + if (event[15] > 0) + createElement("img", null, null, {src: ResourcesURL + "/alarm.png"}, null, iconSpan); + + if (event[10] != null) { + var category = event[10].decodeEntities(); + var categoryStyle = categoriesStyles.get(category); + if (!categoryStyle) { + categoryStyle = 'category_' + categoriesStyles.keys().length; + categoriesStyles.set([category], categoryStyle); + } + innerDiv.addClassName(categoryStyle); + } + + return eventCell; } function appendStyleElement(folderPath, color) { - if (document.styleSheets) { - var fgColor = getContrastingTextColor(color); - var styleElement = document.styleSheets[3]; - - styleElement.insertRule(".calendarFolder" + folderPath + - "{background-color: " + color + " !important;" + - " color: " + fgColor + " !important;}", styleElement.cssRules.length); - } + if (document.styleSheets) { + var fgColor = getContrastingTextColor(color); + var styleElement = document.styleSheets[3]; + + styleElement.insertRule(".calendarFolder" + folderPath + + "{background-color: " + color + " !important;" + + " color: " + fgColor + " !important;}", styleElement.cssRules.length); + } } function _parseEvent(event) { - // Localized strings : - var start = _("Start:"); - var end = _("End:"); - var Location = _("Location:"); - var Calendar = _("Calendar:"); - - - var parsedEvent; - var startDate = new Date(event[5] *1000); - var endDate = new Date(event[6] *1000); + // Localized strings : + var start = _("Start:"); + var end = _("End:"); + var Location = _("Location:"); + var Calendar = _("Calendar:"); + + var parsedEvent; + var startDate = new Date(event[5] *1000); + var endDate = new Date(event[6] *1000); parsedEvent = "
"; - parsedEvent += ""; - parsedEvent += ""; - parsedEvent += ""; - if (event[7] != "") - parsedEvent += ""; - parsedEvent += ""; - parsedEvent += "
"+ event[4] +"
" + start + "" + startDate.toLocaleString() + "
" + end + "" + endDate.toLocaleString() + "
"+ Location +"" + event[7] + "
"+ Calendar +"" + event[2] + "
"; + parsedEvent += ""+ event[4] +""; + parsedEvent += "" + start + "" + startDate.toLocaleString() + ""; + parsedEvent += "" + end + "" + endDate.toLocaleString() + ""; + if (event[7] != "") + parsedEvent += ""+ Location +"" + event[7] + ""; + parsedEvent += ""+ Calendar +"" + event[2] + ""; + parsedEvent += ""; return parsedEvent; } function _parseTask(task) { - var parsedTask; - var end = _("Due Date:"); - var Calendar = _("Calendar:"); - var Location = _("Location:"); - - parsedTask = "
"; - if (task[12] == "overdue") - parsedTask += ""; - else if (task[12] == "completed") { - parsedTask += ""; - } - else - parsedTask += ""; - - if (task[5] != null) { - var endDate = new Date(task[5] *1000); - parsedTask += ""; - } - if (task[7] != "") { - parsedTask += ""; - } - parsedTask += ""; - parsedTask += "
"+ task[4] +"
"+ task[4] +"
"+ task[4] +"
"+ end +""+ endDate.toLocaleString() + "
"+ Location +"" + task[7] + "
" + Calendar + "" + task[2] + "
"; - - return parsedTask; + var parsedTask; + var end = _("Due Date:"); + var Calendar = _("Calendar:"); + var Location = _("Location:"); + + parsedTask = "
"; + if (task[12] == "overdue") + parsedTask += ""; + else if (task[12] == "completed") { + parsedTask += ""; + } + else + parsedTask += ""; + + if (task[5] != null) { + var endDate = new Date(task[5] *1000); + parsedTask += ""; + } + if (task[7] != "") { + parsedTask += ""; + } + parsedTask += ""; + parsedTask += "
"+ task[4] +"
"+ task[4] +"
"+ task[4] +"
"+ end +""+ endDate.toLocaleString() + "
"+ Location +"" + task[7] + "
" + Calendar + "" + task[2] + "
"; + + return parsedTask; } function _computeOffset(hoursCells) { - var outOfDayCells = hoursCells.getElementsByClassName("outOfDay"); - var count = 1; - var offset = []; - var buffer; - var j = 1; - for (var i = 0; i < outOfDayCells.length; i++) { - hourCell1 = parseInt(outOfDayCells[i].getAttribute("hour")) + 100; - hourCell2 = parseInt(outOfDayCells[j].getAttribute("hour")); - if (hourCell1 == hourCell2) { - count += 1; + var outOfDayCells = hoursCells.getElementsByClassName("outOfDay"); + var count = 1; + var offset = []; + var buffer; + var j = 1; + for (var i = 0; i < outOfDayCells.length; i++) { + hourCell1 = parseInt(outOfDayCells[i].getAttribute("hour")) + 100; + hourCell2 = parseInt(outOfDayCells[j].getAttribute("hour")); + if (hourCell1 == hourCell2) + count += 1; + else + break; + j ++; } - else { - break; - } - j ++; - } - offset.push(count * 4); - offset.push((hourCell2 / 100 * 4) - (count * 4)); - - return offset; + offset.push(count * 4); + offset.push((hourCell2 / 100 * 4) - (count * 4)); + + return offset; } /************************************** Preview Navigation *****************************************/ function onCalendarGotoDay(node) { - var day = node.getAttribute("date"); - - changeDateSelectorDisplay(day); - updateDisplayView({ "day": day }); - refreshEvents(); - - return false; + var day = node.getAttribute("date"); + + changeDateSelectorDisplay(day); + updateDisplayView({ "day": day }); + refreshEvents(); + + return false; } function changeDateSelectorDisplay(day, keepCurrentDay) { - var url = ApplicationBaseURL + "/dateselector"; - if (day) { - if (day.length < 8) - day += "01"; - url += "?day=" + day; - } - - if (!keepCurrentDay) - currentDay = day; - - var month = day.substr(0, 6); - if (cachedDateSelectors[month]) { - // log ("restoring cached selector for month: " + month); - setDateSelectorContent(cachedDateSelectors[month]); - } - else { - // log ("loading selector for month: " + month); - if (document.dateSelectorAjaxRequest) { - document.dateSelectorAjaxRequest.aborted = true; - document.dateSelectorAjaxRequest.abort(); + var url = ApplicationBaseURL + "/dateselector"; + if (day) { + if (day.length < 8) + day += "01"; + url += "?day=" + day; + } + + if (!keepCurrentDay) + currentDay = day; + + var month = day.substr(0, 6); + if (cachedDateSelectors[month]) { + // log ("restoring cached selector for month: " + month); + setDateSelectorContent(cachedDateSelectors[month]); + } + else { + // log ("loading selector for month: " + month); + if (document.dateSelectorAjaxRequest) { + document.dateSelectorAjaxRequest.aborted = true; + document.dateSelectorAjaxRequest.abort(); + } + document.dateSelectorAjaxRequest + = triggerAjaxRequest(url, + dateSelectorCallback, + month); } - document.dateSelectorAjaxRequest - = triggerAjaxRequest(url, - dateSelectorCallback, - month); - } } function dateSelectorCallback(http) { - if (http.readyState == 4 - && http.status == 200) { - document.dateSelectorAjaxRequest = null; - var content = http.responseText; - setDateSelectorContent(content); - cachedDateSelectors[http.callbackData] = content; - } - else - log ("dateSelectorCallback Ajax error"); - - return false; + if (http.readyState == 4 + && http.status == 200) { + document.dateSelectorAjaxRequest = null; + var content = http.responseText; + setDateSelectorContent(content); + cachedDateSelectors[http.callbackData] = content; + } + else + log ("dateSelectorCallback Ajax error"); + + return false; } /*********************** Input Field, listMenu, Checkboxes and Radio *********************************/ function onInputTitleChange(event){ - var inputFieldTitle = $("inputFieldTitle").value; - if (inputFieldTitle) - document.getElementById("rightFrameTitle").innerHTML = inputFieldTitle + "
"; - else - document.getElementById("rightFrameTitle").remove(); - - return false; + var inputFieldTitle = $("inputFieldTitle").value; + if (inputFieldTitle) + document.getElementById("rightFrameTitle").innerHTML = inputFieldTitle + "
"; + else + document.getElementById("rightFrameTitle").remove(); + + return false; } function onPrintLayoutListChange() { - var parentView = window.parentvar("currentView"); - var selectedLayout = $("printLayoutList").value; - document.getElementById("printHours").disabled = (selectedLayout == 0); - switch(selectedLayout) { - case "0": // List view - window.resizeTo(700,500); - currentPreview = parentView; - break; - - case "1": // Day view - window.resizeTo(1010,500); - currentPreview = "dayview"; - break; - - case "2": // Multi-columns view - window.resizeTo(1010,500); - currentPreview = "multicolumndayview"; - break; - - case "3": // Week view - window.resizeTo(1010,500); - currentPreview = "weekview"; - break; - - /*case "4": // Month view - window.resizeTo(1010,500); - currentPreview = "monthview"; - break;*/ - } - refreshContent(); - return false; + var parentView = window.parentvar("currentView"); + var selectedLayout = $("printLayoutList").value; + document.getElementById("printHours").disabled = (selectedLayout == 0); + switch(selectedLayout) { + case "0": // List view + window.resizeTo(700,500); + currentPreview = parentView; + break; + + case "1": // Day view + window.resizeTo(1010,500); + currentPreview = "dayview"; + break; + + case "2": // Multi-columns view + window.resizeTo(1010,500); + currentPreview = "multicolumndayview"; + break; + + case "3": // Week view + window.resizeTo(1010,500); + currentPreview = "weekview"; + break; + + /*case "4": // Month view + window.resizeTo(1010,500); + currentPreview = "monthview"; + break;*/ + } + refreshContent(); + return false; } function adjustPreviewHeader() { - // 1 - Check if there is any allDay Events. If not reduce the space taken - var selectedLayout = $("printLayoutList").value; - if (selectedLayout != 0) { - var calendarHeader = $("calendarHeader"); - var allDayDisplay = $("calendarHeader").getElementsByClassName("days"); - var allDayEvents = $("calendarHeader").getElementsByClassName("eventInside"); - var eventHeight = 22; - var headerHeight = 38; - if (selectedLayout == 1) { // Since there is only one column in day view - height = allDayEvents.length * eventHeight; - } - else { // Applies only on week view and multi-columns view - var nbEventsMax = 0 - var eventClass = $("calendarHeader").getElementsByClassName("event"); - for (var i = 0; i < allDayDisplay[0].childNodes.length; i++) { - if (allDayDisplay[0].childNodes[i].firstChild != null) { - count = allDayDisplay[0].childNodes[i].getElementsByClassName("event").length; - if (count > nbEventsMax) { - nbEventsMax = count; - } + // 1 - Check if there is any allDay Events. If not reduce the space taken + var selectedLayout = $("printLayoutList").value; + if (selectedLayout != 0) { + var calendarHeader = $("calendarHeader"); + var allDayDisplay = $("calendarHeader").getElementsByClassName("days"); + var allDayEvents = $("calendarHeader").getElementsByClassName("eventInside"); + var eventHeight = 22; + var headerHeight = 38; + if (selectedLayout == 1) { // Since there is only one column in day view + height = allDayEvents.length * eventHeight; } - } - height = nbEventsMax * eventHeight; - if (selectedLayout == 2) { - headerHeight = 58; - adjustMultiColumnCalendarHeaderDIV(); - } + else { // Applies only on week view and multi-columns view + var nbEventsMax = 0 + var eventClass = $("calendarHeader").getElementsByClassName("event"); + for (var i = 0; i < allDayDisplay[0].childNodes.length; i++) { + if (allDayDisplay[0].childNodes[i].firstChild != null) { + count = allDayDisplay[0].childNodes[i].getElementsByClassName("event").length; + if (count > nbEventsMax) { + nbEventsMax = count; + } + } + } + height = nbEventsMax * eventHeight; + if (selectedLayout == 2) { + headerHeight = 58; + adjustMultiColumnCalendarHeaderDIV(); + } + } + calendarHeader.style.height = (height + headerHeight) + "px"; + allDayDisplay[0].style.height = height + "px"; } - calendarHeader.style.height = (height + headerHeight) + "px"; - allDayDisplay[0].style.height = height + "px"; - } } function adjustMultiColumnCalendarHeaderDIV() { - var ch = $("calendarHeader"); - var calendarLabels = ch.getElementsByClassName("calendarLabels")[0]; - var calendarsToDisplay = calendarLabels.getElementsByClassName("calendarsToDisplay"); - var dayLabels = ch.getElementsByClassName("dayLabels")[0].getElementsByClassName("dayColumn")[0]; - var days = ch.getElementsByClassName("days")[0].getElementsByClassName("dayColumn"); - var daysView = $("daysView").getElementsByClassName("dayColumn"); - - var nbCalendars = calendarsToDisplay.length; - - if (nbCalendars > 0) { - var width = 100/nbCalendars; - var left = 0; - var position = "absolute"; - for(var i=0; i < nbCalendars; i++){ - calendarsToDisplay[i].setStyle({ width: width + '%', left: left + '%', position: position}).show(); - days[i].setStyle({ width: width + '%', left: left + '%'}).show(); - daysView[i].setStyle({ width: width + '%', left: left + '%'}).show(); - left += width; + var ch = $("calendarHeader"); + var calendarLabels = ch.getElementsByClassName("calendarLabels")[0]; + var calendarsToDisplay = calendarLabels.getElementsByClassName("calendarsToDisplay"); + var dayLabels = ch.getElementsByClassName("dayLabels")[0].getElementsByClassName("dayColumn")[0]; + var days = ch.getElementsByClassName("days")[0].getElementsByClassName("dayColumn"); + var daysView = $("daysView").getElementsByClassName("dayColumn"); + var nbCalendars = calendarsToDisplay.length; + + if (nbCalendars > 0) { + var width = 100/nbCalendars; + var left = 0; + var position = "absolute"; + for(var i=0; i < nbCalendars; i++){ + calendarsToDisplay[i].setStyle({ width: width + '%', left: left + '%', position: position}).show(); + days[i].setStyle({ width: width + '%', left: left + '%'}).show(); + daysView[i].setStyle({ width: width + '%', left: left + '%'}).show(); + left += width; + } + dayLabels.setStyle({ width: '100%'}).show(); + } + else { + $("calendarHeader").remove(); + $("daysView").remove(); + var htmlText = "
" + _("notice:") + ""+_("Please go ahead and select calendars")+"
"; + $("calendarContent").innerHTML = htmlText; } - dayLabels.setStyle({ width: '100%'}).show(); - } - else { - $("calendarHeader").remove(); - $("daysView").remove(); - var htmlText = "
" + _("notice:") + ""+_("Please go ahead and select calendars")+"
"; - $("calendarContent").innerHTML = htmlText; - } } function adjustFrames() { - var view = $("printLayoutList").value; - if (view == 0) { - var eventsCheckBox = $("printEvents"); - var tasksCheckBox = $("printTasks"); - onEventsCheck(eventsCheckBox); - onTasksCheck(tasksCheckBox); - document.getElementById("rightFrameTasks").style.pageBreakBefore = 'auto'; - document.getElementById("rightFrameTasks").style.pageBreakInside = 'auto'; - } - else { - document.getElementById("rightFrameEvents").style.width = '100%'; - document.getElementById("rightFrameTasks").style.width = '100%'; - document.getElementById("rightFrameTasks").style.pageBreakBefore = 'always'; - document.getElementById("rightFrameTasks").style.pageBreakInside = 'avoid'; - } - return false; + var view = $("printLayoutList").value; + if (view == 0) { + var eventsCheckBox = $("printEvents"); + var tasksCheckBox = $("printTasks"); + onEventsCheck(eventsCheckBox); + onTasksCheck(tasksCheckBox); + document.getElementById("rightFrameTasks").style.pageBreakBefore = 'auto'; + document.getElementById("rightFrameTasks").style.pageBreakInside = 'auto'; + } + else { + document.getElementById("rightFrameEvents").style.width = '100%'; + document.getElementById("rightFrameTasks").style.width = '100%'; + document.getElementById("rightFrameTasks").style.pageBreakBefore = 'always'; + document.getElementById("rightFrameTasks").style.pageBreakInside = 'avoid'; + } + return false; } function onEventsCheck(checkBox) { - var printOptions = document.getElementById("printHours"); - var selectedLayout = $("printLayoutList").value; - if (!checkBox.checked || selectedLayout == 0) - printOptions.disabled = true; - else - printOptions.disabled = false; - - var events = $("rightFrameEvents").childNodesWithTag("DIV"); - if(checkBox.checked && events.length > 0){ - $("rightFrameEvents").style.display = 'block'; - if ($("printLayoutList").value == 0){ - $("rightFrameTasks").style.width = '49.5%'; + var printOptions = document.getElementById("printHours"); + var selectedLayout = $("printLayoutList").value; + if (!checkBox.checked || selectedLayout == 0) + printOptions.disabled = true; + else + printOptions.disabled = false; + + var events = $("rightFrameEvents").childNodesWithTag("DIV"); + if(checkBox.checked && events.length > 0){ + $("rightFrameEvents").style.display = 'block'; + if ($("printLayoutList").value == 0){ + $("rightFrameTasks").style.width = '49.5%'; + } } - } - else { - $("rightFrameEvents").style.display = 'none'; - if ($("printLayoutList").value == 0){ - $("rightFrameTasks").style.width = '100%'; + else { + $("rightFrameEvents").style.display = 'none'; + if ($("printLayoutList").value == 0){ + $("rightFrameTasks").style.width = '100%'; + } } - } - return false; + return false; } function onTasksCheck(checkBox) { - var printOptions = document.getElementsByName("printOptions"); - for (var i = 0; i < printOptions.length; i++) - printOptions[i].disabled = !checkBox.checked; - - var tasks = $("rightFrameTasks").childNodesWithTag("DIV"); - if(checkBox.checked && tasks.length > 0) { - $("rightFrameTasks").style.display = 'block'; - if ($("printLayoutList").value == 0){ - $("rightFrameEvents").style.width = '49.5%'; + var printOptions = document.getElementsByName("printOptions"); + for (var i = 0; i < printOptions.length; i++) + printOptions[i].disabled = !checkBox.checked; + + var tasks = $("rightFrameTasks").childNodesWithTag("DIV"); + if(checkBox.checked && tasks.length > 0) { + $("rightFrameTasks").style.display = 'block'; + if ($("printLayoutList").value == 0){ + $("rightFrameEvents").style.width = '49.5%'; + } } - } - else { - $("rightFrameTasks").style.display = 'none'; - if ($("printLayoutList").value == 0){ - $("rightFrameEvents").style.width = '100%'; + else { + $("rightFrameTasks").style.display = 'none'; + if ($("printLayoutList").value == 0){ + $("rightFrameEvents").style.width = '100%'; + } } - } - return false; + return false; } function onPrintWorkingHoursCheck(checkBox) { - var isCheked = checkBox.checked; - var outOfDayCells = $$("DIV#daysView .outOfDay"); - var hours = $$("DIV#daysView .hour"); - var hoursOutOfDay = []; - for (var i = 0; i < outOfDayCells.length; i++) { - var buffer = outOfDayCells[i].getAttribute("hour").substr(0,1); - if (buffer != "0") { - buffer += outOfDayCells[i].getAttribute("hour").substr(1,1); + var isCheked = checkBox.checked; + var outOfDayCells = $$("DIV#daysView .outOfDay"); + var hours = $$("DIV#daysView .hour"); + var hoursOutOfDay = []; + for (var i = 0; i < outOfDayCells.length; i++) { + var buffer = outOfDayCells[i].getAttribute("hour").substr(0,1); + if (buffer != "0") { + buffer += outOfDayCells[i].getAttribute("hour").substr(1,1); + } + else { + buffer = outOfDayCells[i].getAttribute("hour").substr(1,1); + } + if(isCheked) { + outOfDayCells[i].hide(); + hours[buffer].hide(); + } + else { + outOfDayCells[i].show(); + hours[buffer].show(); + } } + + if (currentPreview == "multicolumndayview") + _drawCalendarEvents(null, null, eventsBlocks); else { - buffer = outOfDayCells[i].getAttribute("hour").substr(1,1); + eventsList = eventsBlocks[2]; + if (currentPreview == "monthview") + //_drawMonthCalendarEvents(eventsList, eventsBlocks[0], null); + else + _drawCalendarEvents(eventsList, eventsBlocks[0], null); } - if(isCheked) { - outOfDayCells[i].hide(); - hours[buffer].hide(); - } - else { - outOfDayCells[i].show(); - hours[buffer].show(); - } - } - - if (currentPreview == "multicolumndayview") { - _drawCalendarEvents(null, null, eventsBlocks); - } - else { - eventsList = eventsBlocks[2]; - if (currentPreview == "monthview") { - //_drawMonthCalendarEvents(eventsList, eventsBlocks[0], null); - } - else { - _drawCalendarEvents(eventsList, eventsBlocks[0], null); - } - } - return false; + return false; } /*function onPrintDateCheck() { @@ -865,13 +851,13 @@ function onPrintWorkingHoursCheck(checkBox) { }*/ function onPrintCompletedTasksCheck(checkBox) { - printCompletedTasks = (checkBox.checked ? 1 : 0); - refreshContent(); + printCompletedTasks = (checkBox.checked ? 1 : 0); + refreshContent(); } function onPrintNoDueDateTasksCheck(checkBox) { - printNoDueDateTasks = (checkBox.checked ? 1 : 0); - refreshContent(); + printNoDueDateTasks = (checkBox.checked ? 1 : 0); + refreshContent(); } /************** Date picker functions ************* @@ -908,33 +894,33 @@ function onPrintNoDueDateTasksCheck(checkBox) { /******************************* Buttons ***********************************************/ function onPrintCancelClick(event) { - this.blur(); - onCloseButtonClick(event); + this.blur(); + onCloseButtonClick(event); } function onPrintClick(event) { - this.blur(); - window.print(); + this.blur(); + window.print(); } /**************************** Initialization *******************************************/ function init() { - initializePrintSettings(); - //initializeWhatToPrint(); - //initializeOptions(); - $("cancelButton").observe("click", onPrintCancelClick); - $("printButton").observe("click", onPrintClick); - - /* TODO : Selected and custom date must be implemented and finished. - document.getElementById("eventsTasks").disabled=true; - document.getElementById("customDate").disabled=true;*/ - - onPrintLayoutListChange(); + initializePrintSettings(); + //initializeWhatToPrint(); + //initializeOptions(); + $("cancelButton").observe("click", onPrintCancelClick); + $("printButton").observe("click", onPrintClick); + + /* TODO : Selected and custom date must be implemented and finished. + document.getElementById("eventsTasks").disabled=true; + document.getElementById("customDate").disabled=true;*/ + + onPrintLayoutListChange(); } function initializePrintSettings() { - $("inputFieldTitle").observe("change", onInputTitleChange); - $("printLayoutList").observe("change", onPrintLayoutListChange); + $("inputFieldTitle").observe("change", onInputTitleChange); + $("printLayoutList").observe("change", onPrintLayoutListChange); } /*function initializeWhatToPrint() {