diff options
author | Frederic Guillot <fred@kanboard.net> | 2015-09-05 17:06:01 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2015-09-05 17:06:01 -0400 |
commit | 70d3340cd0c9d7a009c186b14ca436e9c4e61aa5 (patch) | |
tree | 2fd898d99e73d79607beb72f57cbd706f238f976 /assets/js/src | |
parent | ccaf78b3484134336212780587835befa8759096 (diff) |
Creating another task stay in the popover
Diffstat (limited to 'assets/js/src')
-rw-r--r-- | assets/js/src/Popover.js | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/assets/js/src/Popover.js b/assets/js/src/Popover.js index 2fd951b4..b978c087 100644 --- a/assets/js/src/Popover.js +++ b/assets/js/src/Popover.js @@ -15,7 +15,8 @@ Popover.prototype.open = function(link) { $.get(link, function(content) { $("body").append('<div id="popover-container"><div id="popover-content">' + content + '</div></div>'); self.router.dispatch(); - self.app.listen(); + self.app.refresh(); + self.afterOpen(); }); }; @@ -48,3 +49,29 @@ Popover.prototype.listen = function() { $(document).on("click", "#popover-container", this.close.bind(this)); $(document).on("click", "#popover-content", function(e) { e.stopPropagation(); }); }; + +Popover.prototype.afterOpen = function() { + var self = this; + var taskForm = $("#task-form"); + + if (taskForm) { + taskForm.on("submit", function(e) { + e.preventDefault(); + + $.ajax({ + type: "POST", + url: taskForm.attr("action"), + data: taskForm.serialize(), + success: function(data, textStatus, request) { + if (request.getResponseHeader("X-Ajax-Redirect")) { + window.location = request.getResponseHeader("X-Ajax-Redirect"); + } + else { + $("#popover-content").html(data); + self.afterOpen(); + } + } + }); + }); + } +}; |