X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=app%2Fassets%2Fjavascripts%2Fmodels%2Fballoon.js.coffee;h=acfae1f9c1ff4a7c1940fcf8ebc2bb9e3beefba8;hb=289993687b12d7f0b482c7ee04e75b48c19116fa;hp=48fb028dbf55ca40120715ee10fb7059a54b26f6;hpb=664f8d5b324115a330cbe80338f2374fe570fdff;p=pettanr%2Fpettanr.git diff --git a/app/assets/javascripts/models/balloon.js.coffee b/app/assets/javascripts/models/balloon.js.coffee index 48fb028d..acfae1f9 100644 --- a/app/assets/javascripts/models/balloon.js.coffee +++ b/app/assets/javascripts/models/balloon.js.coffee @@ -16,26 +16,43 @@ class Pettanr.Balloon extends Peta.Element r: 0 } + pick: () -> + # + speech_balloon_template = @templates.speech_balloon_template + { + speech_balloon_template_id: speech_balloon_template.get('id'), + speech_balloon_template_module_name: speech_balloon_template.get('module_name'), + } + speech_balloon: () -> - new Pettanr.SpeechBalloon({id: @get('speech_balloon_id')}) + new Pettanr.Cache.Retriever(Pettanr.SpeechBalloon, @get('speech_balloon_id')) + + system_picture: () -> + new Pettanr.Cache.Retriever(Pettanr.SystemPicture, @get('system_picture_id')) r_url: () -> '/system_pictures/' + @system_picture().filename() - symbol_option: (cb) -> - sb = @speech_balloon() - sb.fetch().done -> - sbt = sb.speech_balloon_template() - sbt.fetch().done -> - sp = sbt.system_picture() - sp.fetch().done -> - cb(sp.tmb_opt_img_tag()) + symbol_option: () -> + retriever = @speech_balloon() + @listenTo(retriever, 'retrieve', @retrieve_speech_balloon) + retriever.retrieve() + + retrieve_speech_balloon: (speech_balloon) -> + retriever = speech_balloon.speech_balloon_template() + @listenTo(retriever, 'retrieve', @retrieve_speech_balloon_template) + retriever.retrieve() + + retrieve_speech_balloon_template: (speech_balloon_template) -> + retriever = speech_balloon_template.system_picture() + @listenTo(retriever, 'retrieve', @retrieve_system_picture) + retriever.retrieve() + + retrieve_system_picture: (system_picture) -> + @trigger('ready:symbol', system_picture.tmb_opt_img_tag()) - initialize: () -> + initialize: (attr, options) -> + super(attr, options) if @id @url = @url + @id -class Pettanr.Balloon.Collection extends Backbone.Collection - model: Pettanr.Balloon - url: '/balloons' -