From 90177cda6335db5f08cb692f8981993ef51b4ee4 Mon Sep 17 00:00:00 2001 From: Kaarle Ritvanen Date: Tue, 15 Oct 2013 00:29:32 +0300 Subject: web client: action buttons --- web/client.js | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'web/client.js') diff --git a/web/client.js b/web/client.js index 7b1b724..0db3082 100644 --- a/web/client.js +++ b/web/client.js @@ -330,6 +330,10 @@ $(function() { return def; }; + data.invoke = function(name) { + return objRequest(join(path, name), {type: "POST"}); + }; + def.resolve(data); }).fail(function() { def.reject(); }); @@ -750,10 +754,23 @@ $(function() { this.div = $("
"); this.el.append(this.div); - _.bind(Inline.render, this)(data, meta); - var self = this; + if (data.meta.type == "model") + _.each(data.meta.actions, function(action) { + self.div.append($("").attr( + {type: "submit", value: action["ui-name"]} + ).click(function() { + data.invoke(action.name).done(function() { + alert("Done"); + }).fail(function() { + alert("Failed"); + }); + })); + }); + + _.bind(Inline.render, this)(data, meta); + if (_.contains(["collection", "list"], data.meta.type)) { var keys = _.clone(_.keys(data.data)); -- cgit v1.2.3