diff options
Diffstat (limited to 'modules/local_import/js')
-rw-r--r-- | modules/local_import/js/local_import.js | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/modules/local_import/js/local_import.js b/modules/local_import/js/local_import.js new file mode 100644 index 00000000..3ad01ce8 --- /dev/null +++ b/modules/local_import/js/local_import.js @@ -0,0 +1,67 @@ +/** + * Set up autocomplete on the server path list + * + */ +$("document").ready(function() { + var previous_search = ""; + $("#gLocalImportAdmin input").autocomplete({ + url: base_url + "admin/local_import/autocomplete", + mustMatch: true, + }); + ajaxify_form({ + form: "#gLocalImportAdmin form", + url: "admin/local_import/", + returnCode: 200, + callback: function(xhr, statusText) { + $("#gImportLocalDirList").html(xhr.responseText); + setDroppable("#gImportLocalDirList #gRemoveDir"); + setDraggable("#gImportLocalDirList li"); + } + }); + + setDroppable("#gImportLocalDirList #gRemoveDir"); + setDraggable("#gImportLocalDirList li"); +}); + +function setDraggable(selector) { + $(selector).draggable({ + helper: 'clone', +// containment: "#gImportLocalDirList", + opacity: .6, + revert: "invalid" + }); +} + +function setDroppable(selector) { + $(selector).droppable({ + accept: "#gImportLocalDirList li", + drop: function(ev, ui) { + var element = ui.draggable[0]; + + if (confirm("Do you really want to remove " + element.textContent)) { + $.ajax({ + data: "path=" + element.textContent, + url: base_url + "admin/local_import/remove", + success: function(data, textStatus) { + $("#gImportLocalDirList").html(data); + setDroppable("#gImportLocalDirList #gRemoveDir"); + setDraggable("#gImportLocalDirList li"); + }, + error: function(xhr, textStatus, errorThrown) { + alert("Text Status: " + textStatus + " Http Error Code: " + xhr.status); + }, + type: "POST" + }); + } + } + }); +} + +function ajaxify_form(options) { + $(options.form).ajaxForm({ + complete:function(xhr, statusText) { + options.callback(xhr, statusText); + $(options.form).clearForm(); + } + }); +} |