UNPKG

lpio

Version:

The last dashboard app you'll ever need

56 lines (44 loc) 1.42 kB
<link rel="import" href="../../../bower_components/polymer/polymer.html"> <link rel="import" href="app-actions.html"> <link rel="import" href="../../lp-imports/jquery.html"> <link rel="import" href="../../lp-imports/q.html"> <script> window.ApiBehaviors = window.ApiBehaviors || {}; /** * * @polymerBehavior ApiBehaviors.Crud * **/ ApiBehaviors.CrudImpl = { getEntity: function(type,id){ }, createEntity: function(type,entity){ var self = this; // @TODO: add validation if(!type || !_.isObject(entity)){ console.error("create: invalid payload"); return; } var url = self.endpoint + "/v1/"+type; var defer = Q.defer(); $.ajax({ url: url, type : 'POST', contentType: "application/json", data: JSON.stringify(entity) }) .done(function(data) { defer.resolve(data); }) .fail(function(jqXHR, textStatus) { defer.reject(new Error(textStatus)); }); return defer.promise; }, updateEntity: function(type,entity){ }, deleteEntity: function(type,entity){ } }; ApiBehaviors.Crud = [ApiBehaviors.CrudImpl,ApiBehaviors.App]; </script>