initialize: (options) ->\r
super(options)\r
@item = options.item\r
- @load()\r
- \r
- load: () ->\r
- @speech_balloon = @item.speech_balloon()\r
- @speech_balloon.fetch({cache: true}).done =>\r
- panel = @speech_balloon.panel()\r
- panel.fetch({cache: true}).done =>\r
- @panel_icon = new Pettanr.Views.Common.Icon({item: panel, half: true})\r
- @listenTo(@panel_icon, 'click', @panel_click)\r
- author = panel.author()\r
- author.fetch({cache: true}).done =>\r
- @author_icon_with_caption = author.icon_with_caption_view(true, 'name', 12)\r
- @listenTo(@author_icon_with_caption, 'click', @author_click)\r
- @trigger('ready')\r
+ retriever = @item.speech_balloon()\r
+ @listenTo(retriever, 'retrieve', @retrieve_speech_balloon)\r
+ retriever.retrieve()\r
+ \r
+ retrieve_speech_balloon: (@speech_balloon) ->\r
+ retriever = @speech_balloon.panel()\r
+ @listenTo(retriever, 'retrieve', @retrieve_panel)\r
+ retriever.retrieve()\r
+ \r
+ retrieve_panel: (@panel) ->\r
+ @panel_icon = new Pettanr.Views.Common.Icon({item: @panel, half: true})\r
+ @listenTo(@panel_icon, 'click', @panel_click)\r
+ retriever = @panel.author()\r
+ @listenTo(retriever, 'retrieve', @retrieve_author)\r
+ retriever.retrieve()\r
+ \r
+ retrieve_author: (@author) ->\r
+ @author_icon_with_caption = @author.icon_with_caption_view(true, 'name', 12)\r
+ @listenTo(@author_icon_with_caption, 'click', @author_click)\r
+ @trigger('ready')\r
\r
render: () ->\r
this.$el.html('')\r
this\r
\r
panel_click: () ->\r
- @trigger('navigate', @panel_icon.url())\r
+ @trigger('http_get', @panel_icon.url())\r
\r
author_click: () ->\r
- @trigger('navigate', @author_icon_with_caption.url())\r
+ @trigger('http_get', @author_icon_with_caption.url())\r
\r