OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / assets / javascripts / models / panel_picture.js.coffee
1 class Pettanr.PanelPicture extends Peta.Element\r
2   url: '/panel_pictures/'\r
3   \r
4   @singular: () ->\r
5     'PanelPicture'\r
6   \r
7   @plural: () ->\r
8     'PanelPictures'\r
9   \r
10   defaults: {\r
11     id: null\r
12   } \r
13   \r
14   picture: () ->\r
15     new Pettanr.Picture({id: @get('picture_id')})\r
16   \r
17   @has_picture: () ->\r
18     true\r
19   \r
20   flip: () ->\r
21     v = if @get('height') > 0\r
22       ''\r
23     else\r
24       'v'\r
25     h = if @get('width') > 0\r
26       ''\r
27     else\r
28       'h'\r
29     res = v + h\r
30     res = res # format of /1.png?subdir=v\r
31     # res += '/' unless res.empty? # format of /v/1.png\r
32     res\r
33   \r
34   filename: () ->\r
35     @picture().filename() + '?subdir=' + @flip()\r
36   \r
37   r_url: () ->\r
38     '/pictures/' + @filename()\r
39   \r
40   tmb_opt_img_tag: (picture) ->\r
41     new Pettanr.Image.SymbolPicture({\r
42       attr: {\r
43         src: picture.r_url(), \r
44         alt: @get('caption')\r
45       },\r
46       picture: picture\r
47     })\r
48   \r
49   symbol_option: (cb) ->\r
50     i = @picture()\r
51     _this = this\r
52     i.fetch().done ->\r
53       cb(_this.tmb_opt_img_tag(i))\r
54   \r
55   initialize: () ->\r
56     if @id\r
57       @url = @url + @id\r
58   \r
59 class Pettanr.PanelPicture.Collection extends Backbone.Collection\r
60   model: Pettanr.PanelPicture\r
61   url: '/panel_pictures/'\r
62   \r