diff options
| author | Julie Lala <jules@okfoc.us> | 2014-06-10 19:46:53 -0400 |
|---|---|---|
| committer | Julie Lala <jules@okfoc.us> | 2014-06-10 19:46:53 -0400 |
| commit | 4e4b5b5668835097f335efaf55dfe837eec7dc3c (patch) | |
| tree | 5cd6cb12a203c5dd7c8cf9f62b9cd9235e52513c /public/assets/javascripts/ui/site/DocumentModal.js | |
| parent | 3074488306e041718dec221ff9142748e2e68916 (diff) | |
| parent | b231af3e38b8f066f18031fd69b0fdb30a5e244a (diff) | |
Merge branch 'master' of github.com:okfocus/vvalls
Diffstat (limited to 'public/assets/javascripts/ui/site/DocumentModal.js')
| -rw-r--r-- | public/assets/javascripts/ui/site/DocumentModal.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/public/assets/javascripts/ui/site/DocumentModal.js b/public/assets/javascripts/ui/site/DocumentModal.js new file mode 100644 index 0000000..6f16169 --- /dev/null +++ b/public/assets/javascripts/ui/site/DocumentModal.js @@ -0,0 +1,49 @@ + +var DocumentModal = ModalFormView.extend({ + el: ".mediaDrawer.editDocument", + createAction: "/api/docs/new", + updateAction: "/api/docs/edit", + destroyAction: "/api/docs/destroy", + + load: function(name, isNew){ + this.reset() + + if (isNew || name === "new") { + name = sanitize(name) + if (name !== "new") { + this.$("[name='new_name']").val( name.replace(/\s+/g,"-") ) + this.$("[name='displayName']").val( capitalize(name.replace(/-/g," ")) ) + } + this.action = this.createAction + return this.show() + } + + this.action = this.updateAction + + $.get("/api/docs", { name: name }, $.proxy(function(data){ + if (data.isNew) { + this.action = this.createAction + } + + for (var i in data) { + this.$("[name='" + i + "']").val(data[i]) + } + this.$("[name='new_name']").val(name) + + this.show() + }, this)) + }, + + success: function(res){ + window.location.pathname = "/about/" + res.name + }, + + destroy: function(name, cb){ + $.ajax({ + type: "delete", + url: this.destroyAction, + data: { name: name, _csrf: $("[name=_csrf]").val() } + }).complete(cb || function(){}) + }, + +}) |
