diff --git a/UI/WebServerResources/SchedulerUI.css b/UI/WebServerResources/SchedulerUI.css index 5b21a3479..18aea2d56 100644 --- a/UI/WebServerResources/SchedulerUI.css +++ b/UI/WebServerResources/SchedulerUI.css @@ -1,20 +1,19 @@ DIV#leftPanel { position: absolute; - top: 5.5em; + top: 5.2em; left: 0px; width: 18em; bottom: 0px; overflow: hidden; } -DIV#dateSelectorView +DIV#schedulerTabs { - position: absolute; - width: 100%; - height: 18em; top: 0px; - overflow: auto; + left: .2em; + width: 17.2em; + height: 14em; } DIV#tasksView @@ -80,7 +79,7 @@ DIV#calendarView A { position: absolute; cursor: e-resize; - top: 5.5em; + top: 5em; left: 18em; width: 5px; bottom: 0px; @@ -100,7 +99,6 @@ DIV#calendarView A #dateSelector { width: 16em; - margin: .5em auto; background: #fff; border-top: 1px solid #fff; border-left: 1px solid #fff; @@ -246,7 +244,8 @@ TABLE.weekOverview TD.hourOfDay background: #eef; } SPAN.daysHeader, -SPAN.weeksHeader +SPAN.weeksHeader, +SPAN.monthsHeader { display: block; white-space: nowrap; background: #dbdad5; @@ -259,7 +258,8 @@ SPAN.weeksHeader border-bottom: 1px solid #ccc; } SPAN.daysHeader SPAN, -SPAN.weeksHeader SPAN +SPAN.weeksHeader SPAN, +SPAN.monthsHeader SPAN { display: block; margin: .1em; float: left; @@ -270,7 +270,8 @@ SPAN.weeksHeader SPAN vertical-align: top; } SPAN.daysHeader A, -SPAN.weeksHeader A +SPAN.weeksHeader A, +SPAN.monthsHeader A { padding: 0px .5em; } A.leftNavigationArrow, @@ -283,7 +284,8 @@ A.rightNavigationArrow A.leftNavigationArrow:hover, A.rightNavigationArrow:hover, SPAN.daysHeader A:hover, -SPAN.weeksHeader A:hover +SPAN.weeksHeader A:hover, +SPAN.monthsHeader A:hover { border-left: 1px solid #fff; border-top: 1px solid #fff; border-right: 1px solid #ccc; @@ -292,23 +294,24 @@ SPAN.weeksHeader A:hover A.leftNavigationArrow:active, A.rightNavigationArrow:active, SPAN.daysHeader A:active, -SPAN.weeksHeader A:active +SPAN.weeksHeader A:active, +SPAN.monthsHeader A:active { border-left: 1px solid #ccc; border-top: 1px solid #ccc; border-right: 1px solid #fff; border-bottom: 1px solid #fff; } -.week2 +.week2, .month2 { font-size: small; } -.day2, .week1 +.day2, .week1, .month1 { font-size: medium; } -.day1, .week0 +.day1, .week0, .month0 { font-size: large; } @@ -318,7 +321,7 @@ SPAN.weeksHeader A:active font-size: x-large; } -.day0, .week0 +.day0, .week0, .month0 { border-top: 1px solid #aaa !important; border-left: 1px solid #aaa !important; border-bottom: 1px solid #fff !important; diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index 72e65cd7b..11a7caeca 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -29,14 +29,41 @@ function editEvent() { var list = $("appointmentsList"); var nodes = list.getSelectedRowsId(); - if (nodes.length > 0) { - var row = nodes[0]; - _editEventId(row); - } + if (nodes.length > 0) + _editEventId(nodes[0]); return false; /* stop following the link */ } +function deleteEvent() { + var list = $("appointmentsList"); + var nodes = list.getSelectedRowsId(); + + if (nodes.length > 0) { + if (confirm(labels["appointmentDeleteConfirmation"])) { + var urlstr = ApplicationBaseURL + nodes[0] + "/delete"; + document.deleteEventAjaxRequest = triggerAjaxRequest(urlstr, + deleteEventCallback, + nodes[0]); + } + } + + return false; +} + +function deleteEventCallback(http) +{ + if (http.readyState == 4 + && http.status == 200) { + document.deleteEventAjaxRequest = null; + var node = $(http.callbackData); + log ("deleteEventCallback: " + node); + node.parentNode.removeChild(node); + } + else + log ("ajax fuckage"); +} + function editDoubleClickedEvent(node) { var id = node.getAttribute("id"); @@ -45,6 +72,13 @@ function editDoubleClickedEvent(node) return false; } +function onSelectAll() { + var list = $("appointmentsList"); + list.selectRowsMatchingClass("appointmentRow"); + + return false; +} + function displayAppointment(sender) { var aptId = sender.getAttribute("aptId"); var urlstr = ApplicationBaseURL + aptId + "/view"; @@ -125,6 +159,9 @@ function onCalendarGotoDay(node) function gotoToday() { + currentDay = ''; + currentCalendarDay = ''; + changeCalendarDisplay(); changeDateSelectorDisplay();