initialize: (options) ->\r
super(options)\r
\r
+class Pettanr.Views.ResourcePicture.ShowModule.LinkedReplaceButton extends Tag.A\r
+ \r
+ initialize: (options) ->\r
+ item = options.item\r
+ op = new Pettanr.OriginalPicture({id: item.get('original_picture_id')})\r
+ super({\r
+ attr: {href: '/' + op.edit_url()}, \r
+ content: I18n.t('original_pictures.show.replace')\r
+ })\r
+ \r
+class Pettanr.Views.ResourcePicture.ShowModule.LinkedSourceButton extends Tag.A\r
+ \r
+ initialize: (options) ->\r
+ item = options.item\r
+ op = new Pettanr.OriginalPicture({id: item.get('original_picture_id')})\r
+ super({\r
+ attr: {href: '/' + op.show_url()}, \r
+ content: I18n.t('original_pictures.show.title')\r
+ })\r
+ \r
+class Pettanr.Views.ResourcePicture.ShowModule.LinkedStopButton extends Tag.A\r
+ \r
+ initialize: (options) ->\r
+ item = options.item\r
+ super({\r
+ attr: {href: '/' + item.destroy_url()}, \r
+ content: I18n.t('original_pictures.index.stop')\r
+ })\r
+ \r
+class Pettanr.Views.ResourcePicture.ShowModule.OwnerFooter extends Backbone.View\r
+ tagName: 'div'\r
+ className: 'show-owner-footer'\r
+ \r
+ initialize: (options) ->\r
+ super(options)\r
+ @item = options.item\r
+ @replace = new Pettanr.Views.ResourcePicture.ShowModule.LinkedReplaceButton({item: @item})\r
+ @source = new Pettanr.Views.ResourcePicture.ShowModule.LinkedSourceButton({item: @item})\r
+ @stop = new Pettanr.Views.ResourcePicture.ShowModule.LinkedStopButton({item: @item})\r
+ @listenTo(@replace, 'click', @click_replace)\r
+ @listenTo(@source, 'click', @click_source)\r
+ @listenTo(@stop, 'click', @click_stop)\r
+ \r
+ render: () ->\r
+ super()\r
+ this.$el.append(@replace.render().el)\r
+ this.$el.append(@source.render().el)\r
+ this.$el.append(@stop.render().el)\r
+ this\r
+ \r
+ click_replace: () ->\r
+ @trigger('click:replace')\r
+ \r
+ click_source: () ->\r
+ @trigger('click:source')\r
+ \r
+ click_stop: () ->\r
+ @trigger('click:stop')\r
+ \r
class Pettanr.Views.ResourcePicture.ShowModule.Owner extends Pettanr.Views.Show.Owner\r
\r
initialize: (options) ->\r
super(options)\r
+ @listenTo(@footer, 'click:replace', @click_replace)\r
+ @listenTo(@footer, 'click:source', @click_source)\r
+ @listenTo(@footer, 'click:stop', @click_stop)\r
+ \r
+ click_replace: () ->\r
+ @trigger('click:replace')\r
+ \r
+ click_source: () ->\r
+ @trigger('click:source')\r
+ \r
+ click_stop: () ->\r
+ @trigger('click:stop')\r
+ \r
+ footer_class: () ->\r
+ Pettanr.Views.ResourcePicture.ShowModule.OwnerFooter\r
\r
class Pettanr.Views.ResourcePicture.Show extends Backbone.View\r
tagName: 'div'\r
prof_url: @item.prof_url()\r
})\r
@artist = new Pettanr.Views.Show.HeaderArtist({item: @item})\r
+ @img = new Pettanr.Views.ResourcePicture.Img({item: @item})\r
+ @credit = @item.credit_view(false)\r
+ @owner = new Pettanr.Views.ResourcePicture.ShowModule.Owner({item: @item, original_picture: @original_picture})\r
@listenTo(@header, 'click:pick', @click_pick)\r
@listenTo(@header, 'click:icon', @click_show)\r
@listenTo(@header, 'click:prof', @click_prof)\r
@listenTo(@artist, 'click:artist', @click_artist)\r
+ @listenTo(@owner, 'click:replace', @click_replace)\r
+ @listenTo(@owner, 'click:source', @click_source)\r
+ @listenTo(@owner, 'click:stop', @click_stop)\r
\r
render: () ->\r
this.$el.html('')\r
this.$el.append(@header.render().el)\r
this.$el.append(@artist.render().el)\r
+ this.$el.append(@img.render().el)\r
+ this.$el.append(@credit.render().el)\r
+ this.$el.append(@owner.render().el)\r
this\r
\r
click_show: () ->\r
click_artist: () ->\r
@trigger('http_get', @item.artist().show_url())\r
\r
+ click_replace: () ->\r
+ op = new Pettanr.OriginalPicture({id: @item.get('original_picture_id')})\r
+ @trigger('http_get', op.edit_url())\r
+ \r
+ click_source: () ->\r
+ op = new Pettanr.OriginalPicture({id: @item.get('original_picture_id')})\r
+ @trigger('http_get', op.show_url())\r
+ \r
+ click_stop: () ->\r
+ redirect = (url) =>\r
+ @trigger('http_get', url)\r
+ Pettanr.Proxy.destroy(@item, {redirect: redirect})\r
+ \r
click_pick: () ->\r
@trigger('pick', @item)\r
\r