OSDN Git Service

change: cache system
[pettanr/pettanr.git] / app / assets / javascripts / addons / circle_speech_balloons / init.js.coffee
index 1110032..4708570 100644 (file)
@@ -112,17 +112,12 @@ class Pettanr.CircleSpeechBalloon.BalloonModule
   \r
   hoge_templates: () ->\r
     if !@templates.speech_balloon_template\r
-      empty_item = new Pettanr.SpeechBalloonTemplate({id: @get('speech_balloon_template_id')})\r
-      item = Pettanr.cache.restore(empty_item)\r
-      if item\r
-        # got cached item\r
-        @templates.speech_balloon_template = item\r
-      else\r
-        # built empty item\r
-        item = empty_item\r
-        item.fetch().done =>\r
-          Pettanr.cache.store(item)\r
-        @templates.speech_balloon_template = item\r
+      retriever = new Pettanr.Cache.Retriever(Pettanr.SpeechBalloonTemplate, @get('speech_balloon_template_id'))\r
+      @listenTo(retriever, 'retrieve', @retrieve_speech_balloon_template)\r
+      retriever.retrieve()\r
+  \r
+  retrieve_speech_balloon_template: (speech_balloon_template) -> \r
+    @templates.speech_balloon_template = speech_balloon_template\r
   \r
   balloon_extend: () ->\r
     @new_balloon() if not @bex\r