OSDN Git Service

f979d25e50100b54a121d923bf6dd209fe2bbffb
[pettanr/pettanr.git] / app / assets / javascripts / views / panel_pictures / element.js.coffee
1 class Pettanr.Views.PanelPicture.Element extends Backbone.View\r
2   tagName: 'div'\r
3   className: 'pettanr-panel-picture-wrapper'\r
4   \r
5   initialize: (options) ->\r
6     @element = options.element\r
7     @root = options.root\r
8     @spot = options.spot\r
9   \r
10   render: () ->\r
11     @attr = {style: Pettanr.to_style(@opt_div_style())}\r
12     this.$el.attr(@attr)\r
13     @img = new Tag.Img({\r
14       attr: @opt_img_tag(@spot)\r
15     })\r
16     this.$el.html(@img.render().el)\r
17     this\r
18   \r
19   opt_div_style: () ->\r
20     {\r
21       'top': Pettanr.to_s(@element.get('y')) + 'px',\r
22       'left': Pettanr.to_s(@element.get('x')) + 'px',\r
23       'z-index': @element.get('z'),\r
24       'position': 'absolute'\r
25     }\r
26   \r
27   opt_img_tag: (spot = null, opacity = 20) ->\r
28     style = {}\r
29     if spot and spot != @element\r
30       @merge_opacity(style, opacity)\r
31     {\r
32       vPicture: @element.get('id'), \r
33       src: @element.r_url(), \r
34       width: Pettanr.to_s(Math.abs(@element.get('width'))) + 'px', \r
35       height: Pettanr.to_s(Math.abs(@element.get('height'))) + 'px', \r
36       alt: @element.get('caption'), \r
37       style: Pettanr.to_style(style)\r
38     }\r
39   \r