1 class Pettanr.Views.PanelPicture.ShowModule
\r
2 class Pettanr.Views.PanelPicture.ShowModule.Header extends Pettanr.Views.Show.Header
\r
4 initialize: (options) ->
\r
7 class Pettanr.Views.PanelPicture.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.PanelPicture.ShowModule.Header({
\r
19 operators: @operators,
\r
20 caption: @item.get('caption'),
\r
22 caption_url: caption_url,
\r
25 @listenTo(this, 'ready', @ready)
\r
26 @panel = @item.panel({with_elements: true})
\r
27 @panel.fetch({cache: false}).done => # with elements
\r
28 @author = new Pettanr.Views.Show.HeaderAuthor({item: @panel})
\r
29 @body = new Pettanr.Views.Panel.Body({
\r
31 operators: @operators,
\r
34 @credits = new Pettanr.Views.Panel.ShowModule.Credits({
\r
35 pictures: @panel.licensed_pictures()
\r
37 @listenTo(@header, 'click:icon', @click_show)
\r
38 @listenTo(@header, 'click:caption', @click_show)
\r
39 @listenTo(@header, 'click:prof', @click_prof)
\r
40 @listenTo(@author, 'click:author', @click_author)
\r
41 @listenTo(@credits, 'click:credit:icon', @click_credit_icon)
\r
50 this.$el.append(@header.render().el)
\r
51 this.$el.append(@author.render().el)
\r
52 this.$el.append(@body.render().el)
\r
53 this.$el.append(@credits.render().el)
\r
54 rb = new Tag.RowBreak()
\r
55 this.$el.append(rb.render().el)
\r
58 @trigger('navigate', @item.show_url())
\r
61 @trigger('navigate', @panel.author().show_url())
\r
64 @trigger('navigate', @item.prof_url())
\r
66 click_credit_icon: (item) ->
\r
67 @trigger('navigate', item.show_url())
\r