-class Pettanr.Views.ResourcePicture.ShowModule\r
-class Pettanr.Views.ResourcePicture.ShowModule.Header extends Pettanr.Views.Show.Header\r
+class Pettanr.Views.ResourcePicture.Show extends Pettanr.View.Show\r
\r
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 Pettanr.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 Pettanr.View\r
- tagName: 'div'\r
- className: 'show'\r
- \r
- initialize: (options) ->\r
- @item = options.item\r
- @header = new Pettanr.Views.ResourcePicture.ShowModule.Header({\r
- item: @item, \r
- icon_url: @item.show_url(),\r
- caption_url: @item.show_url(),\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
+ @header = new Pettanr.View.Show.Header(@item, this, @default_header_options())\r
+ @authored_by = @item.authored_by()\r
+ @img = @item.real_picture('full')\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
+ @listenTo(@authored_by, 'click', @click_authored_by)\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(@authored_by.render().el)\r
this.$el.append(@img.render().el)\r
- this.$el.append(@credit.render().el)\r
- this.$el.append(@owner.render().el)\r
+ @item.get_parent('picture', this, {\r
+ success: (picture) =>\r
+ @add_credit(picture)\r
+ })\r
+ if @item.is_own()\r
+ @item.get_parent('original_picture', this, {\r
+ success: (@original_picture) =>\r
+ @owner = new Pettanr.View.Show.Footer(null, this, {\r
+ actions: {\r
+ replace: {\r
+ item: @original_picture,\r
+ url: @original_picture.edit_url(),\r
+ dic_name: 'original_pictures.show.replace',\r
+ click: () =>\r
+ @trigger('http_get', @original_picture.edit_url())\r
+ }, \r
+ source: {\r
+ item: @original_picture,\r
+ url: @original_picture.show_url(),\r
+ dic_name: 'original_pictures.show.title',\r
+ click: () =>\r
+ @trigger('http_get', @original_picture.show_url())\r
+ }, \r
+ stop: {\r
+ item: @item,\r
+ url: @item.destroy_url(),\r
+ dic_name: 'original_pictures.index.stop',\r
+ click: () =>\r
+ redirect = (url) =>\r
+ @trigger('http_get', url)\r
+ Pettanr.Proxy.destroy(@item, {redirect: redirect})\r
+ }, \r
+ }, \r
+ })\r
+ this.$el.append(@owner.render().el)\r
+ })\r
this\r
\r
- click_show: () ->\r
- @trigger('http_get', @item.show_url())\r
- \r
- click_prof: () ->\r
- @trigger('http_get', @item.prof_url())\r
- \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