@body = options.body\r
@file_items = []\r
@file_items = _.map @filer().items, (item) =>\r
- fi = @file_item_class()\r
- file_item_view = new fi({'file_body': this, 'item': item})\r
- @listenTo(file_item_view, 'click:symbol', @click_symbol)\r
- @listenTo(file_item_view, 'navigate', @navigate)\r
- file_item_view\r
- @render()\r
+ @init_file_item(item)\r
\r
render: () ->\r
this.$el.html('')\r
this.$el.append(file_item.render().el)\r
this\r
\r
- file_item_class: () ->\r
- Locmare.FilerModule.BodyModule.FileBodyModule.FileItem\r
+ init_file_item: (item) ->\r
+ file_item_view = new (@module().FileItem)({'file_body': this, 'item': item})\r
+ @listenTo(file_item_view, 'click:pick', @click_pick)\r
+ @listenTo(file_item_view, 'click:symbol', @click_symbol)\r
+ @listenTo(file_item_view, 'http_get', @http_get)\r
+ @listenTo(file_item_view, 'http_post', @http_post)\r
+ @listenTo(file_item_view, 'remove', @remove)\r
+ file_item_view\r
\r
filer: () ->\r
@body.filer\r
items: () ->\r
@filer().items\r
\r
- click_symbol: (symbol_view) ->\r
- @trigger('click:symbol', symbol_view)\r
+ add_pick: (target_model) ->\r
+ _.each @file_items, (file_item) =>\r
+ file_item.add_pick(target_model)\r
+ \r
+ click_pick: (file_item_view) ->\r
+ @trigger('click:pick', file_item_view)\r
+ \r
+ click_symbol: (file_item_view) ->\r
+ @trigger('click:symbol', file_item_view)\r
+ \r
+ http_get: (url) ->\r
+ @trigger('http_get', url)\r
+ \r
+ http_post: (url) ->\r
+ @trigger('http_post', url)\r
+ \r
+ remove: (file_item_view) ->\r
+ @trigger('remove', file_item_view.item)\r
+ @file_items = _.without(@file_items, file_item_view)\r
+ @render()\r
\r
- navigate: (url) ->\r
- @trigger('navigate', url)\r
+ module: () ->\r
+ Locmare.FilerModule.BodyModule.FileBodyModule\r
\r
class Locmare.FilerModule.BodyModule.FileBodyModule\r