-class Locmare.ProfilerModule.AssociationModule.HasOne extends Backbone.View\r
+class Locmare.ProfilerModule.AssociationModule.HasOne extends Pettanr.View\r
tagName: 'div'\r
\r
initialize: (options) ->\r
@filer = null\r
controller = Manifest.manifest().controllers[@has_one_manifest.controller_name]\r
action = controller.actions[@has_one_manifest.action_name]\r
- @list = Locmare.ListGroup.list(\r
- action.path_name(), action.name, \r
- @profiler().operators, {id: @item().get('id')}\r
- )\r
- @list.open((page_status) =>\r
- @filer = new Locmare.Filer({\r
- item_name: @has_one_model().item_name(), \r
- items: @list.items(), \r
- pager: @pager, \r
- operators: @profiler().operators\r
- })\r
- @listenTo(@filer, 'navigate', @navigate)\r
- @render()\r
- )\r
+ @list = action.find({id: @item().get('id')})\r
+ \r
+ clear: () ->\r
+ this.$el.html('')\r
+ @list.open(this, {\r
+ success: (page_status) =>\r
+ @set_filer()\r
+ @render()\r
+ fail: (response, opt) =>\r
+ @open_error_dialog(response, opt)\r
+ })\r
+ this\r
\r
render: () ->\r
this.$el.html('')\r
- if @filer\r
- this.$el.html(@filer.render().el)\r
+ this.$el.html(@filer.el)\r
this\r
\r
+ set_filer: () ->\r
+ @filer = new Locmare.Filer({\r
+ item_name: @has_one_model().item_name(), \r
+ items: @list.items(), \r
+ pager: @pager, \r
+ })\r
+ @filer.render()\r
+ @listenTo(@filer, 'http_get', @http_get)\r
+ @listenTo(@filer, 'pick', @pick)\r
+ \r
item: () ->\r
@profiler().item\r
\r
profiler: () ->\r
@association.profiler\r
\r
- navigate: (url) ->\r
- @trigger('navigate', url)\r
+ add_pick: (target_model) ->\r
+ @list.open(this, {\r
+ success: (page_status) =>\r
+ @set_filer()\r
+ @render()\r
+ @filer.add_pick(target_model)\r
+ fail: (response, opt) =>\r
+ @open_error_dialog(response, opt)\r
+ })\r
+ \r
+ http_get: (url) ->\r
+ @trigger('http_get', url)\r
+ \r
+ pick: (item) ->\r
+ @trigger('pick', item)\r
\r