OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / assets / javascripts / locmare / filer.js.coffee
index 7471a58..382f8d5 100644 (file)
@@ -1,28 +1,30 @@
 class Locmare.Filer extends Backbone.View\r
   tagName: 'div'\r
+  className: 'filer'\r
+  \r
   initialize: (options) ->\r
     @item_name = options.item_name\r
-    @list_result = options.list_result\r
     @items = options.items\r
-    @pager_type = options.pager_type\r
+    @pager = options.pager\r
     @operators = options.operators\r
     @manifest = LocalManifest.manifest().filers[@item_name]\r
-    @template_dir = 'templates-filer-'\r
     @header = new Locmare.FilerModule.Header({'filer': this})\r
     @body = new Locmare.FilerModule.Body({'filer': this})\r
-    #@init_pager\r
+    @listenTo(@header, 'click', @click_header)\r
+    @listenTo(@body, 'click:symbol', @click_symbol)\r
+    @listenTo(@body, 'click:caption', @click_caption)\r
+    @listenTo(@body, 'click:prof', @click_prof)\r
+    @listenTo(@body, 'navigate', @navigate)\r
+    @listenTo(@pager, 'navigate', @navigate) if @pager\r
+    @render()\r
   \r
   render: () ->\r
-    template = _.template($("#" + @template_name()).html())\r
-    this.$el.html(template({'filer': this}))\r
+    this.$el.html('')\r
+    this.$el.append(@header.render().el)\r
+    this.$el.append(@body.render().el)\r
+    this.$el.append(@pager.render().el) if @pager\r
     this\r
   \r
-  init_pager: () ->\r
-    @pager = self.class.pager[@pager_type].new self\r
-  \r
-  @pager: () ->\r
-    {'none': NonePager, 'default': DefaultPager, 'more': MorePager}\r
-  \r
   model: () ->\r
     Manifest.item_name_to_model @item_name\r
   \r
@@ -30,14 +32,24 @@ class Locmare.Filer extends Backbone.View
   mybody: () ->\r
     Locmare.FilerModule.Body\r
   \r
-  template_file_name: () ->\r
-    "filer"\r
-  \r
-  template_name: () ->\r
-    @template_dir + @template_file_name()\r
-  \r
   image_dir: () ->\r
     '/images/'\r
   \r
+  click_header: (url) ->\r
+    @trigger('click:header', url)\r
+    @trigger('navigate', url)\r
+  \r
+  click_symbol: (item_view) ->\r
+    @trigger('click:symbol', item_view)\r
+  \r
+  click_caption: (item_view) ->\r
+    @trigger('click:caption', item_view)\r
+  \r
+  click_prof: (item_view) ->\r
+    @trigger('click:prof', item_view)\r
+  \r
+  navigate: (url) ->\r
+    @trigger('navigate', url)\r
+  \r
 class Locmare.FilerModule\r
 \r