OSDN Git Service

fix editor event
[pettanr/pettanr.git] / app / assets / javascripts / views / panels / show.js.coffee
1 # panel: panel item\r
2 # operators: operators\r
3 # spot: no opacity element\r
4 class Pettanr.Views.Panel.Show extends Backbone.View\r
5   tagName: 'div'\r
6   \r
7   initialize: (options) ->\r
8     @panel = options.panel\r
9     @operators = options.operators\r
10     @spot = options.spot\r
11     \r
12     icon_url = Pettanr.url(@panel.table_name(), 'show', {id: @panel.get('id')})\r
13     caption_url = Pettanr.url(@panel.table_name(), 'show', {id: @panel.get('id')})\r
14     prof_url = Pettanr.url(@panel.table_name(), 'show', {id: @panel.get('id'), format: 'prof'})\r
15     @header = new Pettanr.Views.Scroll.ShowModule.Header({\r
16       item: @panel, \r
17       operators: @operators,\r
18       caption: @panel.get('caption'), \r
19       icon_url: icon_url,\r
20       caption_url: caption_url,\r
21       prof_url: prof_url\r
22     })\r
23     @body = new Pettanr.Views.Panel.Body({\r
24       panel: @panel,\r
25       operators: @operators,\r
26       spot: @spot\r
27     })\r
28     @footer = new Pettanr.Views.Panel.Footer({\r
29       panel: @panel,\r
30       operators: @operators\r
31     })\r
32     @credits = new Pettanr.Views.Panel.Show.Credits({\r
33       pictures: @panel.licensed_pictures()\r
34     })\r
35   \r
36   render: () ->\r
37     this.$el.html('')\r
38     this.$el.append(@header.render().el)\r
39     this.$el.append(@body.render().el)\r
40     this.$el.append(@footer.render().el)\r
41     this.$el.append(@credits.render().el)\r
42     rb = new Tag.RowBreak()\r
43     this.$el.append(rb.render().el)\r
44     this\r
45   \r
46 class Pettanr.Views.Panel.Show.Credits extends Backbone.View\r
47   tagName: 'div'\r
48   className: 'credits'\r
49   \r
50   initialize: (options) ->\r
51     @pictures = options.pictures\r
52   \r
53   render: () ->\r
54     this.$el.html('')\r
55     _.each @pictures, (picture) =>\r
56       @add_picture(picture)\r
57     this\r
58   \r
59   add_picture: (picture) ->\r
60     if not @pictures[picture.get('id')]\r
61       picture.fetch({cache: true}).done =>\r
62         @pictures[picture.get('id')] = picture\r
63         credit = picture.credit_view()\r
64         this.$el.append(credit.render().el)\r
65   \r