OSDN Git Service

fix: show's destroy button
[pettanr/pettanr.git] / app / assets / javascripts / models / resource_picture.js.coffee
index 2d5b454..183ebdb 100644 (file)
@@ -1,4 +1,5 @@
 class Pettanr.ResourcePicture extends Peta.Content\r
+  \r
   @singular: () ->\r
     'ResourcePicture'\r
   \r
@@ -9,7 +10,16 @@ class Pettanr.ResourcePicture extends Peta.Content
     id: null\r
   } \r
   \r
-  is_visible: (operators) ->\r
+  original_picture: () ->\r
+    new Pettanr.Cache.Retriever(Pettanr.OriginalPicture, @get('original_picture_id'))\r
+  \r
+  picture: () ->\r
+    new Pettanr.Cache.Retriever(Pettanr.Picture, @get('picture_id'))\r
+  \r
+  artist: () ->\r
+    new Pettanr.Cache.Retriever(Pettanr.Artist, @get('artist_id'))\r
+  \r
+  is_visible: (operators = Pettanr.cache.operators) ->\r
     @is_user_visible(operators)\r
   \r
   filename: () ->\r
@@ -22,15 +32,21 @@ class Pettanr.ResourcePicture extends Peta.Content
     'image/' + @get('ext')\r
   \r
   r_url: (subdir = null) ->\r
-    opt = if Pettanr.to_s(@subdir).empty\r
+    opt = if _.isEmpty(subdir)\r
       ''\r
     else\r
       '?subdir=' + Pettanr.to_s(subdir)\r
     '/resource_pictures/' + @filename() + opt\r
   \r
   tmb_opt_img_tag: () ->\r
-    wh = Pettanr.Imager.thumbnail_size(@get('width'), @get('height'))\r
-    {src: @r_url(), width: wh[0], height: wh[1]}\r
+    klass = if true # thumbnail\r
+      Pettanr.Image.SymbolPicture\r
+    new klass({\r
+      attr: {\r
+        src: @r_url()\r
+      },\r
+      picture: this\r
+    })\r
   \r
   opt_img_tag: () ->\r
     {src: @url('full'), width: @get('width'), height: @get('height')}\r
@@ -41,12 +57,19 @@ class Pettanr.ResourcePicture extends Peta.Content
     lgn + '[' + ln + ']'\r
   \r
   symbol_option: () ->\r
-    @tmb_opt_img_tag()\r
+    retriever = @retriever()\r
+    @listenTo(retriever, 'retrieve', @retrieve_symbol)\r
+    retriever.retrieve()\r
+  \r
+  retrieve_symbol: (item) -> \r
+    @trigger('ready:symbol', item.tmb_opt_img_tag())\r
+  \r
+  credit_icon_view: () ->\r
+    new Pettanr.Views.ResourcePicture.CreditIcon({item: this})\r
+  \r
+  credit_view: (with_icon = true) ->\r
+    new Pettanr.Views.ResourcePicture.Credit({item: this, with_icon: with_icon})\r
   \r
-  initialize: () ->\r
-    if @id\r
-      @url = @url + @id\r
+  initialize: (attr = {}, options = {}) ->\r
+    super(attr, options)\r
   \r
-class Pettanr.ResourcePicture.Collection extends Backbone.Collection\r
-  model: Pettanr.ResourcePicture\r
-  url: '/resource_pictures'\r