]> code.citadel.org Git - citadel.git/blobdiff - webcit/static/wclib.js
Implemented the ajax call for updating notes.
[citadel.git] / webcit / static / wclib.js
index fca12b2fbe54a68e8db7cd9941e1fdf2ce1168b1..f1e7eaf9f501c2273ce0b3b4e808e9491716f956 100644 (file)
@@ -426,7 +426,7 @@ function CtdlResizeMsgListMouseDown(evt) {
 
 // These functions handle moving sticky notes around the screen by dragging them
 
-var msgnum_of_note_being_dragged = 0;
+var uid_of_note_being_dragged = 0;
 var saved_cursor_style = 'default';
 var note_was_dragged = 0;
 
@@ -437,15 +437,25 @@ function NotesDragMouseUp(evt) {
                document.releaseEvents(Event.MOUSEUP | Event.MOUSEMOVE);
        }
 
-       d = $('note' + msgnum_of_note_being_dragged);
+       d = $('note-' + uid_of_note_being_dragged);
        d.style.cursor = saved_cursor_style;
 
-       // Only submit the change if motion actually happened
+       // If any motion actually occurred, submit an ajax http call to record it to the server
        if (note_was_dragged > 0) {
-               alert('FIXME do ajax call to move position x=' + d.style.left + ' y=' + d.style.top);
+               p = 'note_uid=' + uid_of_note_being_dragged
+                       + '&left=' + d.style.left
+                       + '&top=' + d.style.top
+                       + '&r=' + CtdlRandomString();
+               new Ajax.Request(
+                       'ajax_update_note',
+                       {
+                               method: 'post',
+                               parameters: p
+                       }
+               );
        }
 
-       msgnum_of_note_being_dragged = 0;
+       uid_of_note_being_dragged = '';
        return true;
 }
 
@@ -456,7 +466,7 @@ function NotesDragMouseMove(evt) {
        y_increment = y - saved_y;
 
        // Move the div
-       d = $('note' + msgnum_of_note_being_dragged);
+       d = $('note-' + uid_of_note_being_dragged);
 
        divTop = parseInt(d.style.top);
        divLeft = parseInt(d.style.left);
@@ -471,7 +481,7 @@ function NotesDragMouseMove(evt) {
 }
 
 
-function NotesDragMouseDown(evt, msgnum) {
+function NotesDragMouseDown(evt, uid) {
        saved_x = (ns6 ? evt.clientX : event.clientX);
        saved_y = (ns6 ? evt.clientY : event.clientY);
        document.onmouseup = NotesDragMouseUp;
@@ -479,8 +489,8 @@ function NotesDragMouseDown(evt, msgnum) {
        if (document.layers) {
                document.captureEvents(Event.MOUSEUP | Event.MOUSEMOVE);
        }
-       msgnum_of_note_being_dragged = msgnum;
-       d = $('note' + msgnum_of_note_being_dragged);
+       uid_of_note_being_dragged = uid;
+       d = $('note-' + uid_of_note_being_dragged);
        saved_cursor_style = d.style.cursor;
        d.style.cursor = 'move';
        return false;           // disable the default action