diff options
Diffstat (limited to 'assets/js/src/Subtask.js')
-rw-r--r-- | assets/js/src/Subtask.js | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/assets/js/src/Subtask.js b/assets/js/src/Subtask.js deleted file mode 100644 index eef160d7..00000000 --- a/assets/js/src/Subtask.js +++ /dev/null @@ -1,86 +0,0 @@ -Kanboard.Subtask = function(app) { - this.app = app; -}; - -Kanboard.Subtask.prototype.listen = function() { - var self = this; - this.dragAndDrop(); - - $(document).on("click", ".js-subtask-toggle-status", function(e) { - var el = $(this); - e.preventDefault(); - - $.ajax({ - cache: false, - url: el.attr("href"), - success: function(data) { - $(el).closest('.subtask-title').replaceWith(data); - } - }); - }); - - $(document).on("click", ".js-subtask-toggle-timer", function(e) { - var el = $(this); - e.preventDefault(); - - $.ajax({ - cache: false, - url: el.attr("href"), - success: function(data) { - $(el).closest('.subtask-time-tracking').replaceWith(data); - } - }); - }); -}; - -Kanboard.Subtask.prototype.dragAndDrop = function() { - var self = this; - - $(".draggable-row-handle").mouseenter(function() { - $(this).parent().parent().addClass("draggable-item-hover"); - }).mouseleave(function() { - $(this).parent().parent().removeClass("draggable-item-hover"); - }); - - $(".subtasks-table tbody").sortable({ - forcePlaceholderSize: true, - handle: "td:first i", - helper: function(e, ui) { - ui.children().each(function() { - $(this).width($(this).width()); - }); - - return ui; - }, - stop: function(event, ui) { - var subtask = ui.item; - subtask.removeClass("draggable-item-selected"); - self.savePosition(subtask.data("subtask-id"), subtask.index() + 1); - }, - start: function(event, ui) { - ui.item.addClass("draggable-item-selected"); - } - }).disableSelection(); -}; - -Kanboard.Subtask.prototype.savePosition = function(subtaskId, position) { - var url = $(".subtasks-table").data("save-position-url"); - var self = this; - - this.app.showLoadingIcon(); - - $.ajax({ - cache: false, - url: url, - contentType: "application/json", - type: "POST", - processData: false, - data: JSON.stringify({ - "subtask_id": subtaskId, - "position": position - }), - complete: function() { - self.app.hideLoadingIcon(); - } - }); -}; |