class Pettanr.Inspire\r
\r
- constructor: (options) ->\r
+ constructor: (@item) ->\r
_.extend(this, Backbone.Events)\r
- @item = options.item\r
\r
- inspire: () -> \r
- @item = @item.with_elements() # retake panel for 'with_elements' mode\r
- @item.fetch({cache: false}).done =>\r
- @item.attributes = @item.replaced_attributes()\r
- delete @item.attributes['id']\r
- @item.overwrite({})\r
- @set_root()\r
- @set_elements()\r
- @save()\r
+ go: (context, options) -> \r
+ @item.edit({\r
+ context: this, \r
+ success: (@item) ->\r
+ @item.boosts 'post'\r
+ delete @item.attributes['id']\r
+ @item.overwrite({})\r
+ @set_root()\r
+ @set_elements()\r
+ @save(context, options)\r
+ fail: (model, response) ->\r
+ options.fail.call(context, response)\r
+ })\r
\r
set_root: () ->\r
@root_form = Locmare.Form.factory({\r
form.add_elements()\r
form\r
\r
- save: () ->\r
+ save: (context, options) ->\r
# merge panel and elements\r
attrs = @root_form.save_data()\r
delete attrs['id']\r
_.extend(attrs, @elements_save_data())\r
# save json data by panel form\r
- @listenTo(@root_form, 'success', @post_success)\r
- @listenTo(@root_form, 'fail', @post_fail)\r
- @root_form.save(attrs)\r
+ new_panel = new Pettanr.Panel.Edit()\r
+ new_form = Locmare.Form.factory({\r
+ form_name: new_panel.item_name(), \r
+ use_name: 'default' \r
+ item: new_panel, \r
+ submit: 'default' \r
+ })\r
+ success = (model, response) ->\r
+ options.success.call(context, model)\r
+ fail = (model, response) ->\r
+ options.fail.call(context, response)\r
+ @listenTo(new_form, 'success', success)\r
+ @listenTo(new_form, 'fail', fail)\r
+ new_form.save(attrs)\r
\r
elements_save_data: () ->\r
attrs = {}\r
attrs[name].push(d)\r
attrs\r
\r
- post_success: (model, response) ->\r
- @trigger('inspire', model)\r
- \r
- post_fail: (model, response) ->\r
- @trigger('fail', response)\r
- \r