OSDN Git Service

merge:
[pettanr/pettanr.git] / app / assets / javascripts / models / resource_picture.js.coffee
index 1853af3..b004967 100644 (file)
@@ -1,25 +1,70 @@
-class ResourcePicture extends Item\r
-  @single: () ->\r
+class Pettanr.ResourcePicture extends Peta.Content\r
+  url: '/resource_pictures/'\r
+  \r
+  @singular: () ->\r
     'ResourcePicture'\r
   \r
   @plural: () ->\r
     'ResourcePictures'\r
   \r
   defaults: {\r
-    id: 11\r
+    id: null\r
   } \r
   \r
-  initialize: () ->\r
-    confirm("Welcome to Panel")\r
+  picture: () ->\r
+    new Pettanr.Cache.Retriever(Pettanr.Picture, @get('picture_id'))\r
+  \r
+  is_visible: (operators) ->\r
+    @is_user_visible(operators)\r
+  \r
+  filename: () ->\r
+    @get('id') + '.' + @get('ext')\r
+  \r
+  gifname: () ->\r
+    @get('id') + '.gif'\r
+  \r
+  mime_type: () ->\r
+    'image/' + @get('ext')\r
+  \r
+  r_url: (subdir = null) ->\r
+    opt = if Pettanr.to_s(@subdir).empty\r
+      ''\r
+    else\r
+      '?subdir=' + Pettanr.to_s(subdir)\r
+    '/resource_pictures/' + @filename() + opt\r
+  \r
+  tmb_opt_img_tag: () ->\r
+    new Pettanr.Image.SymbolPicture({\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
+  \r
+  alt_name: () ->\r
+    lgn = Pettanr.to_s(@license().license_group().get('caption'))\r
+    ln = Pettanr.to_s(@license().get('caption'))\r
+    lgn + '[' + ln + ']'\r
+  \r
+  symbol_option: () ->\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
-  @test: () ->\r
-    confirm( @single())\r
-    confirm( @plural() )\r
-    confirm( @class_name() )\r
-    confirm( @element_name() )\r
-    confirm( @table_name() )\r
-    \r
+  initialize: (attr = {}, options = {}) ->\r
+    super(attr, options)\r
+    if @id\r
+      @url = @url + @id\r
   \r
-  test: () ->\r
-\r
-@Panel = Panel\r