]> code.citadel.org Git - citadel.git/blobdiff - webcit/static/wclib.js
* Do not allow notes to be resized any smaller than 50x50px. Resolves bug 479.
[citadel.git] / webcit / static / wclib.js
index 01febd884da1a311a67f8c3979507050ac02fac3..ff5d1b0cdada42c58dc250b6c262b203ee04594d 100644 (file)
@@ -1,9 +1,11 @@
-//
-// $Id$
-//
-// JavaScript function library for WebCit.
-//
-//
+/*
+ * $Id$
+ * Copyright 2005 - 2009 The Citadel Team
+ * Licensed under the GPL V3
+ *
+ * JavaScript function library for WebCit.
+ *
+ */
 
 
 var browserType;
@@ -302,7 +304,7 @@ function addRoomToList(floorUL,room, roomToEmphasize) {
 }
 
 function roomListDropHandler(target, dropped) {
-  if (dropped.ctdlMsgId) {
+  if (dropped.getAttribute("citadel:msgid")) {
     var room = getTextContent(target);
     var msgIds = "";
     for(msgId in currentlyMarkedRows) { //defined in summaryview.js
@@ -507,8 +509,14 @@ function NotesResizeMouseMove(evt) {
        divTop = parseInt(d.style.height);
        divLeft = parseInt(d.style.width);
 
-       d.style.height = (divTop + y_increment) + 'px';
-       d.style.width = (divLeft + x_increment) + 'px';
+       newHeight = divTop + y_increment;
+       if (newHeight < 50) newHeight = 50;
+
+       newWidth = divLeft + x_increment;
+       if (newWidth < 50) newWidth = 50;
+
+       d.style.height = newHeight + 'px';
+       d.style.width = newWidth + 'px';
 
        saved_x = x;
        saved_y = y;
@@ -647,28 +655,42 @@ function HandleRSVP(question_divname, title_divname, msgnum, cal_partnum, sc) {
 // TODO: Collapse into one function
 function toggleTaskDtStart(event) {
        var checkBox = $('nodtstart');
-       dtStart = document.getElementById("dtstart");
+       var checkBoxTime = $('dtstart_time_assoc');
+       var dtstart = document.getElementById("dtstart");
+       var dtstart_date = document.getElementById("dtstart_date");
+       var dtstart_time = document.getElementById("dtstart_time");
        if (checkBox.checked) {
-               dtStart.disabled = true;
-               dtStart.style.textDecoration = "line-through";
+               dtstart_date.style.visibility = "hidden";
+               dtstart_time.style.visibility = "hidden";
        } else {
-               dtStart.disabled = false;
-               dtStart.style.textDecoration = "";
-               if (dtStart.value.length == 0)
-                       dtStart.dpck._initCurrentDate();
+               if (checkBoxTime.checked) {
+                       dtstart_time.style.visibility = "visible";
+               } else {
+                       dtstart_time.style.visibility = "hidden";
+               }
+               dtstart_date.style.visibility = "visible";
+               if (dtstart.value.length == 0)
+                       dtstart.dpck._initCurrentDate();
        }
 }
 function toggleTaskDue(event) {
        var checkBox = $('nodue');
-       dueField = document.getElementById("due");
+       var checkBoxTime = $('due_time_assoc');
+       var due = document.getElementById("due");
+       var due_date = document.getElementById("due_date");
+       var due_time = document.getElementById("due_time");
        if (checkBox.checked) {
-               dueField.disabled = true;
-               dueField.style.textDecoration = "line-through";
+               due_date.style.visibility = "hidden";
+               due_time.style.visibility = "hidden";
        } else {
-               dueField.disabled = false;
-               dueField.style.textDecoration = "";
-               if (dueField.value.length == 0)
-                       dueField.dpck._initCurrentDate();
+               if (checkBoxTime.checked) {
+                       due_time.style.visibility = "visible";
+               } else {
+                       due_time.style.visibility = "hidden";
+               }
+               due_date.style.visibility = "visible";
+               if (due.value.length == 0)
+                       due.dpck._initCurrentDate();
        }
 }
 function ToggleTaskDateOrNoDateActivate(event) {
@@ -677,7 +699,9 @@ function ToggleTaskDateOrNoDateActivate(event) {
                toggleTaskDtStart(null);
                toggleTaskDue(null);
                $('nodtstart').observe('click', toggleTaskDtStart);
+               $('dtstart_time_assoc').observe('click', toggleTaskDtStart);
                $('nodue').observe('click', toggleTaskDue);
+               $('due_time_assoc').observe('click', toggleTaskDue);
        } 
 }
 function TaskViewGatherCategoriesFromTable() {
@@ -696,13 +720,14 @@ function attachDatePicker(relative) {
 }
 function eventEditAllDay() {
        var allDayCheck = document.getElementById("alldayevent");
-       var dtend= document.getElementById("dtendcell");
+       var dtend_time = document.getElementById("dtend_time");
+       var dtstart_time = document.getElementById("dtstart_time");
        if(allDayCheck.checked) {
-               //dtend.disabled = true;
-               dtend.style.textDecoration = "line-through";
+               dtstart_time.style.visibility = "hidden";
+               dtend_time.style.visibility = "hidden";
        } else {
-               //dtend_day.disabled = false;
-               dtend.style.textDecoration = "";
+               dtstart_time.style.visibility = "visible";
+               dtend_time.style.visibility = "visible";
        }
 }
 
@@ -783,6 +808,23 @@ function RecurrenceShowHide() {
        }
 
 }
+
+
+// Enable or disable the 'check attendee availability' button depending on whether
+// the attendees list is empty
+function EnableOrDisableCheckButton()
+{
+       if ($('attendees_box').value.length == 0) {
+               $('check_button').disabled = true;
+       }
+       else {
+               $('check_button').disabled = false;
+       }
+}
+
+
+
+
 function launchChat(event) {
 window.open('chat', 'ctdl_chat_window', 'toolbar=no,location=no,directories=no,copyhistory=no,status=no,scrollbars=yes,resizable=yes');
 }