OSDN Git Service

fix: fetch fail
[pettanr/pettanr.git] / app / assets / javascripts / locmare / filer.js.coffee
index 382f8d5..0fd0c0d 100644 (file)
@@ -1,4 +1,4 @@
-class Locmare.Filer extends Backbone.View\r
+class Locmare.Filer extends Pettanr.View\r
   tagName: 'div'\r
   className: 'filer'\r
   \r
@@ -6,17 +6,18 @@ class Locmare.Filer extends Backbone.View
     @item_name = options.item_name\r
     @items = options.items\r
     @pager = options.pager\r
-    @operators = options.operators\r
     @manifest = LocalManifest.manifest().filers[@item_name]\r
-    @header = new Locmare.FilerModule.Header({'filer': this})\r
-    @body = new Locmare.FilerModule.Body({'filer': this})\r
+    @header = new (@module().Header)({'filer': this})\r
+    @body = new (@module().Body)({'filer': this})\r
     @listenTo(@header, 'click', @click_header)\r
+    @listenTo(@body, 'click:pick', @click_pick)\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
+    @listenTo(@body, 'http_get', @http_get)\r
+    @listenTo(@body, 'http_post', @http_post)\r
+    @listenTo(@body, 'remove', @remove)\r
+    @listenTo(@pager, 'http_get', @http_get) if @pager\r
   \r
   render: () ->\r
     this.$el.html('')\r
@@ -28,16 +29,21 @@ class Locmare.Filer extends Backbone.View
   model: () ->\r
     Manifest.item_name_to_model @item_name\r
   \r
-  # switch body class for dialog\r
-  mybody: () ->\r
-    Locmare.FilerModule.Body\r
-  \r
   image_dir: () ->\r
     '/images/'\r
   \r
+  is_pickable: () ->\r
+    true\r
+  \r
+  add_pick: (target_model) ->\r
+    @body.add_pick(target_model)\r
+  \r
   click_header: (url) ->\r
     @trigger('click:header', url)\r
-    @trigger('navigate', url)\r
+    @http_get(url)\r
+  \r
+  click_pick: (file_item_view) ->\r
+    @trigger('pick', file_item_view.item)\r
   \r
   click_symbol: (item_view) ->\r
     @trigger('click:symbol', item_view)\r
@@ -48,8 +54,17 @@ class Locmare.Filer extends Backbone.View
   click_prof: (item_view) ->\r
     @trigger('click:prof', item_view)\r
   \r
-  navigate: (url) ->\r
-    @trigger('navigate', url)\r
+  http_get: (url) ->\r
+    @trigger('http_get', url)\r
+  \r
+  http_post: (url) ->\r
+    @trigger('http_post', url)\r
+  \r
+  remove: (item) ->\r
+    @items = _.without(@items, item)\r
+  \r
+  module: () ->\r
+    Locmare.FilerModule\r
   \r
 class Locmare.FilerModule\r
 \r