initialize: (options) ->\r
@file_body = options.file_body\r
@item = options.item\r
- @symbol = Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.SymbolItemColumnFactory.factory this, @manifest().symbol, @item\r
- @caption = Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.CaptionItemColumnFactory.factory this, @manifest().caption, @item\r
- @summary = Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.SummaryItemColumnFactory.factory this, @manifest().summary, @item\r
- @icon = Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.IconItemColumnFactory.factory this, @manifest().icon, @item\r
- @date = Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.DateItemColumnFactory.factory this, @manifest().date, @item\r
- @edit = Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.EditItemColumnFactory.factory this, @manifest().edit, @item\r
+ @symbol = @module().SymbolItemColumnFactory.factory this, @manifest().symbol, @item\r
+ @caption = @module().CaptionItemColumnFactory.factory this, @manifest().caption, @item\r
+ @summary = @module().SummaryItemColumnFactory.factory this, @manifest().summary, @item\r
+ @icon = @module().IconItemColumnFactory.factory this, @manifest().icon, @item\r
+ @date = @module().DateItemColumnFactory.factory this, @manifest().date, @item\r
+ @edit = @module().EditItemColumnFactory.factory this, @manifest().edit, @item\r
@el.className = 'filer-item filer-item-' + @item.item_name()\r
+ @listenTo(@symbol, 'click:symbol', @click_symbol)\r
+ @listenTo(@caption, 'click:caption', @click_caption)\r
+ @listenTo(@icon, 'click:prof', @click_prof)\r
+ @listenTo(@symbol, 'http_get', @http_get)\r
+ @listenTo(@caption, 'http_get', @http_get)\r
+ @listenTo(@summary, 'http_get', @http_get)\r
+ @listenTo(@icon, 'http_get', @http_get)\r
+ @listenTo(@edit, 'http_get', @http_get)\r
+ @listenTo(@edit, 'http_post', @http_post)\r
+ @listenTo(@item, 'destroy', @destroy)\r
\r
render: () ->\r
- args = {'header': this}\r
- template = _.template($("#" + @template_name()).html())\r
- this.$el.html(template(args))\r
+ this.$el.html('')\r
+ if @pick\r
+ this.$el.append(@pick.render().el)\r
+ if @symbol.is_visible()\r
+ this.$el.append(@symbol.render().el)\r
+ if @caption.is_visible()\r
+ this.$el.append(@caption.render().el)\r
+ if @summary.is_visible()\r
+ this.$el.append(@summary.render().el)\r
+ if @icon.is_visible()\r
+ this.$el.append(@icon.render().el)\r
+ if @date.is_visible()\r
+ this.$el.append(@date.render().el)\r
+ if !@pick and @edit.is_visible()\r
+ this.$el.append(@edit.render().el)\r
this\r
\r
filer: () ->\r
items: () ->\r
@filer().items\r
\r
- template_dir: () ->\r
- @filer().template_dir\r
+ add_pick: (target_model) ->\r
+ @pick = new Pettanr.Views.Common.PickIcon({\r
+ name: target_model.pick_type(@item_name()), class_name: 'filer-item-pick'\r
+ })\r
+ @listenTo(@pick, 'click', @click_pick)\r
+ @render()\r
\r
- template_file_name: () ->\r
- "file_item"\r
+ click_pick: () ->\r
+ @trigger('click:pick', this)\r
\r
- template_name: () ->\r
- @template_dir() + @template_file_name()\r
+ click_symbol: () ->\r
+ @trigger('click:symbol', this)\r
+ \r
+ click_caption: () ->\r
+ @trigger('click:caption', this)\r
+ \r
+ click_prof: (url) ->\r
+ @trigger('click:prof', this)\r
+ @trigger('http_get', url)\r
+ \r
+ http_get: (url) ->\r
+ @trigger('http_get', url)\r
+ \r
+ http_post: (url) ->\r
+ @trigger('http_post', url)\r
+ \r
+ destroy: (model, collection, options) ->\r
+ @trigger('remove', this)\r
+ \r
+ module: () ->\r
+ Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule\r
\r
class Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule\r
\r
+class Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.PickModule\r
+class Locmare.FilerModule.BodyModule.FileBodyModule.FileItemModule.PickModule.Icon extends Backbone.View\r
+ tagName: 'div'\r
+ \r
+ initialize: (options) ->\r
+ @name = options.name\r
+ @el.className = 'filer-item-pick'\r
+ @button = new Pettanr.Views.Common.PickIcon({name: @name})\r
+ \r
+ render: () ->\r
+ this.$el.html('')\r
+ @listenTo(@button, 'click', @click)\r
+ this.$el.append(@button.render().el)\r
+ this\r
+ \r
+ click: () ->\r
+ @trigger('click', this)\r
+ \r