rendered_list += "<li "
+ "id=\"" + randomString() + "\" "
+ "onclick=\"gotoroom('" + roomlist_json[i].name + "')\" "
- + "ondragstart=\"mail_folder_dragstart(event)\" "
+ //+ "ondragstart=\"mail_folder_dragstart(event)\" "
+ "ondragover=\"mail_folder_dragover(event)\" "
+ "ondragleave=\"mail_folder_dragleave(event)\" "
+ "ondrop=\"mail_folder_drop(event, '" + escapeJS(roomlist_json[i].name) + "')\" "
}
-// The user has begun hovering over this folder while dragging one or more messages -- highlight it as a drop target
-function mail_folder_dragstart(event) {
- event.preventDefault();
- // FIXME write this
-}
+// The user has begun hovering over this folder while dragging one or more messages.
+//function mail_folder_dragstart(event) {
+ //event.preventDefault();
+ //console.log("mail_folder_dragstart()");
+//}
-// There MUST be a dragover handler, otherwise drop doesn't work. This may be a browser specific quirk.
+// There MUST be a dragover handler, otherwise drop doesn't work.
function mail_folder_dragover(event) {
event.preventDefault();
+ console.log("mail_folder_dragover() " + event.target.id);
+ event.target.classList.toggle("ctdl_mail_folder_droppable", true);
}
-// The user is no longer hovering over this folder -- unhighlight it
+// The user is no longer hovering over this folder.
function mail_folder_dragleave(event) {
event.preventDefault();
- // FIXME write this
+ console.log("mail_folder_dragleave()");
+ event.target.classList.toggle("ctdl_mail_folder_droppable", false);
}
-function mail_folder_drop(event, target) {
+function mail_folder_drop(event, destination_room) {
event.preventDefault();
- console.log("FIXME: complete the code for target DROP! " + target);
+ console.log("mail_folder_drop(" + destination_room + ")");
+ event.target.classList.toggle("ctdl_mail_folder_droppable", false);
}