]> code.citadel.org Git - citadel.git/blobdiff - webcit/static/wclib.js
* fix NULL conditions in room sorters
[citadel.git] / webcit / static / wclib.js
index 79df4271ef8aa0aa572ce9ddb244c6b6d12d4f94..66df5b699316d705ae9e36c3a84d16bc614c0577 100644 (file)
@@ -234,32 +234,37 @@ function IconBarRoomList() {
   mailboxLI.appendChild(mailboxUL);
   var mailboxRooms = GetMailboxRooms();
   for(var i=0; i<mailboxRooms.length; i++) {
-    var room = mailboxRooms[i];
-    currentDropTargets.push(addRoomToList(mailboxUL, room, curRoomName));
+         var room = mailboxRooms[i];
+         currentDropTargets.push(addRoomToList(mailboxUL, room, curRoomName));
   }
   if (currentExpanded != null && currentExpanded == _mailbox ) {
-    expandFloor(mailboxSPAN);
+         expandFloor(mailboxSPAN);
   }
   for(var a=0; a<floors.length; a++) {
-    var floor = floors[a];
-    var floornum = floor[0];
-    var name = floor[1];
-    var floorLI = document.createElement("li");
-    ul.appendChild(floorLI);
-    var floorSPAN = document.createElement("span");
-    floorSPAN.appendChild(document.createTextNode(name));
-    $(floorSPAN).observe('click', expandFloorEvent);
-    floorLI.appendChild(floorSPAN);
-    floorLI.className = "floor";
-    var floorUL = document.createElement("ul");
-    floorLI.appendChild(floorUL);
-    var roomsForFloor = GetRoomsByFloorNum(floornum);
-    for(var b=0; b<roomsForFloor.length; b++) {
-      var room = roomsForFloor[b];
-      currentDropTargets.push(addRoomToList(floorUL, room, curRoomName));
-    }
-    if (currentExpanded != null && currentExpanded == name) {
-      expandFloor(floorSPAN);
+         var floor = floors[a];
+         var floornum = floor[0];
+    
+         if (floornum != -1)
+         {
+
+                 var name = floor[1];
+                 var floorLI = document.createElement("li");
+                 ul.appendChild(floorLI);
+                 var floorSPAN = document.createElement("span");
+                 floorSPAN.appendChild(document.createTextNode(name));
+                 $(floorSPAN).observe('click', expandFloorEvent);
+                 floorLI.appendChild(floorSPAN);
+                 floorLI.className = "floor";
+                 var floorUL = document.createElement("ul");
+                 floorLI.appendChild(floorUL);
+                 var roomsForFloor = GetRoomsByFloorNum(floornum);
+                 for(var b=0; b<roomsForFloor.length; b++) {
+                         var room = roomsForFloor[b];
+                         currentDropTargets.push(addRoomToList(floorUL, room, curRoomName));
+                 }
+                 if (currentExpanded != null && currentExpanded == name) {
+                         expandFloor(floorSPAN);
+                 }
     }
   }
 }
@@ -304,7 +309,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
@@ -509,8 +514,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;
@@ -649,52 +660,42 @@ function HandleRSVP(question_divname, title_divname, msgnum, cal_partnum, sc) {
 // TODO: Collapse into one function
 function toggleTaskDtStart(event) {
        var checkBox = $('nodtstart');
-       var checkBoxTime = $('dtstart_time');
-       dtStart = document.getElementById("dtstart");
-       dtStartHour = document.getElementById("dtstart_hour");
-       dtStartMinute = document.getElementById("dtstart_minute");
+       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;
-               dtStartHour.disabled = true;
-               dtStartMinute.disabled = true;
-               dtStart.style.textDecoration = "line-through";
+               dtstart_date.style.visibility = "hidden";
+               dtstart_time.style.visibility = "hidden";
        } else {
-               dtStart.disabled = false;
                if (checkBoxTime.checked) {
-                       dtStartHour.disabled = false;
-                       dtStartMinute.disabled = false;
+                       dtstart_time.style.visibility = "visible";
                } else {
-                       dtStartHour.disabled = true;
-                       dtStartMinute.disabled = true;
+                       dtstart_time.style.visibility = "hidden";
                }
-               dtStart.style.textDecoration = "";
-               if (dtStart.value.length == 0)
-                       dtStart.dpck._initCurrentDate();
+               dtstart_date.style.visibility = "visible";
+               if (dtstart.value.length == 0)
+                       dtstart.dpck._initCurrentDate();
        }
 }
 function toggleTaskDue(event) {
        var checkBox = $('nodue');
-       var checkBoxTime = $('due_time');
-       dueField = document.getElementById("due");
-       dueFieldHour = document.getElementById("due_hour");
-       dueFieldMinute = document.getElementById("due_minute");
+       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;
-               dueFieldHour.disabled = true;
-               dueFieldMinute.disabled = true;
-               dueField.style.textDecoration = "line-through";
+               due_date.style.visibility = "hidden";
+               due_time.style.visibility = "hidden";
        } else {
-               dueField.disabled = false;
                if (checkBoxTime.checked) {
-                       dueFieldHour.disabled = false;
-                       dueFieldMinute.disabled = false;
+                       due_time.style.visibility = "visible";
                } else {
-                       dueFieldHour.disabled = true;
-                       dueFieldMinute.disabled = true;
+                       due_time.style.visibility = "hidden";
                }
-               dueField.style.textDecoration = "";
-               if (dueField.value.length == 0)
-                       dueField.dpck._initCurrentDate();
+               due_date.style.visibility = "visible";
+               if (due.value.length == 0)
+                       due.dpck._initCurrentDate();
        }
 }
 function ToggleTaskDateOrNoDateActivate(event) {
@@ -703,9 +704,9 @@ function ToggleTaskDateOrNoDateActivate(event) {
                toggleTaskDtStart(null);
                toggleTaskDue(null);
                $('nodtstart').observe('click', toggleTaskDtStart);
-               $('dtstart_time').observe('click', toggleTaskDtStart);
+               $('dtstart_time_assoc').observe('click', toggleTaskDtStart);
                $('nodue').observe('click', toggleTaskDue);
-               $('due_time').observe('click', toggleTaskDue);
+               $('due_time_assoc').observe('click', toggleTaskDue);
        } 
 }
 function TaskViewGatherCategoriesFromTable() {
@@ -724,13 +725,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";
        }
 }
 
@@ -927,3 +929,19 @@ function resizeViewport() {
     global.style.width = newContentSize+"px";
   }
 }
+
+function RefreshSMTPqueueDisplay() {
+       new Ajax.Updater('smtpqueue_inner_div',
+       'display_smtpqueue_inner_div', { method: 'get',
+               parameters: Math.random() } );
+}
+
+function DeleteSMTPqueueMsg(msgnum1, msgnum2) {
+       new Ajax.Request(
+               'ajax_servcmd', {
+                       method: 'post',
+                       parameters: 'g_cmd=DELE ' + msgnum1 + ',' + msgnum2,
+                       onComplete: RefreshSMTPqueueDisplay()
+               }
+       );
+}