1 class Pettanr.OriginalPicture extends Peta.Content
\r
2 url: '/original_pictures/'
\r
16 new Pettanr.Cache.Retriever(Pettanr.Picture, @get('picture_id'))
\r
19 new Pettanr.Cache.Retriever(Pettanr.Artist, @get('artist_id'))
\r
21 is_visible: (operators = Pettanr.cache.operators) ->
\r
25 @get('id') + '.' + @get('ext')
\r
28 'image/' + @get('ext')
\r
31 '/original_pictures/' + @filename()
\r
34 '/original_picture_license_groups/new/' + @get('id')
\r
37 {src: @r_url(), width: @get('width'), height: @get('height')}
\r
39 tmb_opt_img_tag: () ->
\r
40 new Pettanr.Image.SymbolPicture({
\r
47 symbol_option: () ->
\r
48 retriever = @retriever()
\r
49 @listenTo(retriever, 'retrieve', @retrieve_symbol)
\r
50 retriever.retrieve()
\r
52 retrieve_symbol: (item) ->
\r
53 @trigger('ready:symbol', item.tmb_opt_img_tag())
\r
55 filer_caption: () ->
\r
56 history = @history()
\r
57 history.fetch({cache: true}).done =>
\r
58 caption = if _.isEmpty(history.models)
\r
61 head = _.first(history.models)
\r
62 Pettanr.to_s(head.get('revision'))
\r
63 @trigger('ready:caption', caption)
\r
66 new Pettanr.OriginalPicture.Head({original_picture: this})
\r
69 new Pettanr.OriginalPicture.History({original_picture: this})
\r
71 is_unpublished: () ->
\r
72 @get('published_at') == null and @get('stopped_at') == null
\r
75 @get('stopped_at') != null
\r
77 is_unlicensed: () ->
\r
78 dt = @get('published_at') || @get('stopped_at')
\r
79 return false if not dt
\r
80 @get('uploaded_at') > dt
\r
83 @get('published_at') != null
\r
87 when @is_unpublished()
\r
89 when @is_unlicensed()
\r
93 when @is_published()
\r
96 initialize: (attr = {}, options = {}) ->
\r
97 super(attr, options)
\r
101 class Pettanr.OriginalPicture.History extends Backbone.Collection
\r
102 url: '/original_pictures/'
\r
104 initialize: (options) ->
\r
105 @original_picture = options.original_picture
\r
106 @model = Pettanr.Picture
\r
107 @url = @url + @original_picture.get('id') + '/history'
\r
109 class Pettanr.OriginalPicture.Head extends Backbone.View
\r
111 initialize: (options) ->
\r
112 @original_picture = options.original_picture
\r
113 @pictures = new Pettanr.OriginalPicture.History({id: @original_picture.get('id')})
\r
116 @pictures.fetch({cache: true}).done =>
\r
117 head = @pictures.models[0]
\r
119 head.get('revision')
\r
122 this.$el.html(value)
\r