1 class Pettanr.Views.Speech.ShowModule
\r
2 class Pettanr.Views.Speech.ShowModule.Header extends Pettanr.Views.Show.Header
\r
4 initialize: (options) ->
\r
7 class Pettanr.Views.Speech.Show extends Backbone.View
\r
11 initialize: (options) ->
\r
12 @item = options.item
\r
13 @operators = options.operators
\r
14 icon_url = Pettanr.url(@item.table_name(), 'show', {id: @item.get('id')})
\r
15 caption_url = icon_url
\r
16 prof_url = Pettanr.url(@item.table_name(), 'show', {id: @item.get('id'), format: 'prof'})
\r
17 @header = new Pettanr.Views.Speech.ShowModule.Header({
\r
19 operators: @operators,
\r
22 caption_url: caption_url,
\r
25 @listenTo(this, 'ready', @ready)
\r
26 @speech_balloon = @item.speech_balloon()
\r
27 @speech_balloon.fetch({cache: true}).done =>
\r
28 @panel = @speech_balloon.panel().with_elements()
\r
29 @panel.fetch({cache: false}).done => # with elements
\r
30 @author = new Pettanr.Views.Show.HeaderAuthor({item: @panel})
\r
31 @body = new Pettanr.Views.Panel.Body({
\r
33 operators: @operators,
\r
36 @credits = new Pettanr.Views.Panel.ShowModule.Credits({
\r
37 pictures: @panel.licensed_pictures()
\r
39 @listenTo(@header, 'click:icon', @click_show)
\r
40 @listenTo(@header, 'click:caption', @click_show)
\r
41 @listenTo(@header, 'click:prof', @click_prof)
\r
42 @listenTo(@author, 'click:author', @click_author)
\r
43 @listenTo(@credits, 'click:credit:icon', @click_credit_icon)
\r
52 this.$el.append(@header.render().el)
\r
53 this.$el.append(@author.render().el)
\r
54 this.$el.append(@body.render().el)
\r
55 this.$el.append(@credits.render().el)
\r
56 rb = new Tag.RowBreak()
\r
57 this.$el.append(rb.render().el)
\r
60 @trigger('http_get', @item.show_url())
\r
63 @trigger('http_get', @panel.author().show_url())
\r
66 @trigger('http_get', @item.prof_url())
\r
68 click_credit_icon: (item) ->
\r
69 @trigger('http_get', item.show_url())
\r