1 class Pettanr.Views.OriginalPicture.ShowModule
\r
2 class Pettanr.Views.OriginalPicture.ShowModule.Header extends Pettanr.Views.Show.Header
\r
4 initialize: (options) ->
\r
7 class Pettanr.Views.OriginalPicture.ShowModule.LinkedLicenseButton extends Tag.A
\r
9 initialize: (options) ->
\r
12 attr: {href: '/' + item.license_url()},
\r
13 content: I18n.t('original_pictures.show.select')
\r
16 class Pettanr.Views.OriginalPicture.ShowModule.LinkedReplaceButton extends Tag.A
\r
18 initialize: (options) ->
\r
21 attr: {href: '/' + item.edit_url()},
\r
22 content: I18n.t('original_pictures.show.replace')
\r
25 class Pettanr.Views.OriginalPicture.ShowModule.LinkedDropButton extends Tag.A
\r
27 initialize: (options) ->
\r
30 attr: {href: '/' + item.destroy_url()},
\r
31 content: I18n.t('link.destroy')
\r
34 class Pettanr.Views.OriginalPicture.ShowModule.OwnerFooter extends Pettanr.View
\r
36 className: 'show-owner-footer'
\r
38 initialize: (options) ->
\r
40 @item = options.item
\r
41 @license = new Pettanr.Views.OriginalPicture.ShowModule.LinkedLicenseButton({item: @item})
\r
42 @edit = new Pettanr.Views.OriginalPicture.ShowModule.LinkedReplaceButton({item: @item})
\r
43 @destroy = new Pettanr.Views.OriginalPicture.ShowModule.LinkedDropButton({item: @item})
\r
44 @listenTo(@license, 'click', @click_license)
\r
45 @listenTo(@edit, 'click', @click_edit)
\r
46 @listenTo(@destroy, 'click', @click_destroy)
\r
50 this.$el.append(@license.render().el)
\r
51 this.$el.append(@edit.render().el)
\r
53 content: 'expert only'
\r
55 this.$el.append(dh.render().el)
\r
56 this.$el.append(@destroy.render().el)
\r
59 click_license: () ->
\r
60 @trigger('click:license')
\r
63 @trigger('click:edit')
\r
65 click_destroy: () ->
\r
66 @trigger('click:destroy')
\r
68 class Pettanr.Views.OriginalPicture.ShowModule.Owner extends Pettanr.Views.Show.Owner
\r
70 initialize: (options) ->
\r
72 @listenTo(@footer, 'click:license', @click_license)
\r
74 click_license: () ->
\r
75 @trigger('click:footer:license')
\r
76 @trigger('click:license')
\r
79 Pettanr.Views.OriginalPicture.ShowModule.OwnerFooter
\r
81 class Pettanr.Views.OriginalPicture.ShowModule.History extends Pettanr.View
\r
83 initialize: (options) ->
\r
85 @item = options.item
\r
86 @list = @item.history()
\r
91 content: I18n.t('original_pictures.show.history')
\r
93 this.$el.append(h.render().el)
\r
94 @list.fetch().done =>
\r
95 _.each @list.models, (picture) =>
\r
96 view = picture.history_view()
\r
97 @listenTo(view, 'http_get', @http_get)
\r
98 this.$el.append(view.render().el)
\r
102 @trigger('http_get', url)
\r
104 class Pettanr.Views.OriginalPicture.Show extends Pettanr.View
\r
107 initialize: (options) ->
\r
108 @item = options.item
\r
109 @header = new Pettanr.Views.OriginalPicture.ShowModule.Header({
\r
111 icon_url: @item.show_url(),
\r
112 prof_url: @item.prof_url()
\r
114 @artist = new Pettanr.Views.Show.HeaderArtist({item: @item})
\r
115 @img = new Pettanr.Views.OriginalPicture.Img({item: @item})
\r
116 @owner = new Pettanr.Views.OriginalPicture.ShowModule.Owner({item: @item})
\r
117 @history = new Pettanr.Views.OriginalPicture.ShowModule.History({item: @item})
\r
118 @listenTo(@header, 'click:icon', @click_show)
\r
119 @listenTo(@header, 'click:prof', @click_prof)
\r
120 @listenTo(@artist, 'click:artist', @click_artist)
\r
121 @listenTo(@owner, 'click:license', @click_license)
\r
122 @listenTo(@owner, 'click:edit', @click_edit)
\r
123 @listenTo(@owner, 'click:destroy', @click_destroy)
\r
124 @listenTo(@history, 'http_get', @http_get)
\r
128 this.$el.append(@header.render().el)
\r
129 this.$el.append(@artist.render().el)
\r
130 this.$el.append(@img.render().el)
\r
131 this.$el.append(@owner.render().el)
\r
132 this.$el.append(@history.render().el)
\r
136 @trigger('http_get', @item.show_url())
\r
139 @trigger('http_get', @item.prof_url())
\r
141 click_artist: () ->
\r
142 @trigger('http_get', @item.artist().show_url())
\r
144 click_license: () ->
\r
146 @trigger('click:license', @dialog)
\r
149 @trigger('http_get', @item.edit_url())
\r
151 click_destroy: () ->
\r
152 redirect = (url) =>
\r
153 @trigger('http_get', url)
\r
154 Pettanr.Proxy.destroy(@item, {redirect: redirect})
\r
157 @trigger('http_get', url)
\r
159 create_dialog: () ->
\r
160 @dialog = new Editor.PicturePublisher.Dialog({
\r
163 this.$el.append(@dialog.render().el)
\r
165 @dialog.$el.dialog({
\r
169 close: (ui, event) ->
\r
170 _this.close_dialog()
\r
173 controller: 'original_picture_license_groups', action: 'new', id: @item.get('id'),
\r
175 @listenTo(@dialog, 'success', @success)
\r
176 @dialog.start(params, null)
\r
182 success: (resource_picture) ->
\r
183 #Pettanr.cache.fix(@item)
\r
184 @trigger('success', @params, @dialog)
\r
185 @trigger('http_get', resource_picture.show_url())
\r
186 Pettanr.cache.refresh(@item)
\r
188 close_dialog: () ->
\r
189 #Pettanr.cache.release(@item)
\r
190 @trigger('click:close', @dialog)
\r