OSDN Git Service

change: cache system
[pettanr/pettanr.git] / app / assets / javascripts / models / license.js.coffee
index 6d888e6..9f2bb4a 100644 (file)
@@ -12,23 +12,31 @@ class Pettanr.License extends Peta.SystemResource
   } \r
   \r
   license_group: () ->\r
-    r = new Pettanr.LicenseGroup({id: @get('license_group_id')})\r
+    new Pettanr.Cache.Retriever(Pettanr.LicenseGroup, @get('license_group_id'))\r
   \r
   system_picture: () ->\r
-    new Pettanr.SystemPicture({id: @get('system_picture_id')})\r
+    new Pettanr.Cache.Retriever(Pettanr.SystemPicture, @get('system_picture_id'))\r
   \r
   symbol_option: () ->\r
-    i = @system_picture()\r
-    i.fetch({cache: true}).done =>\r
-      @trigger('ready:symbol', i.tmb_opt_img_tag())\r
+    retriever = @system_picture()\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
   caption_with_group: () ->\r
-    i = @license_group()\r
-    i.fetch({cache: true}).done =>\r
-      caption = i.escape('caption') + '/' + @escape('caption')\r
-      @trigger('ready:caption', caption)\r
+    retriever = @license_group()\r
+    @listenTo(retriever, 'retrieve', @retrieve_license_group)\r
+    retriever.retrieve()\r
+  \r
+  retrieve_license_group: (license_group) -> \r
+    caption = license_group.escape('caption') + '/' + @escape('caption')\r
+    @trigger('ready:caption', caption)\r
+  \r
   is_own: () ->\r
     true\r
+  \r
   initialize: () ->\r
     if @id\r
       @url = @url + @id\r