OSDN Git Service

fix: js models
[pettanr/pettanr.git] / app / assets / javascripts / models / picture.js.coffee
1 class Pettanr.Picture extends Peta.Content\r
2   @singular: () ->\r
3     'Picture'\r
4   \r
5   @plural: () ->\r
6     'Pictures'\r
7   \r
8   defaults: {\r
9     id: null\r
10   } \r
11   \r
12   is_visible: (operators) ->\r
13     return true\r
14   \r
15   filename: () ->\r
16     @get('id') + '.' + @get('ext')\r
17   \r
18   gifname: () ->\r
19     @get('id') + '.gif'\r
20   \r
21   mime_type: () ->\r
22     'image/' + @get('ext')\r
23   \r
24   r_url: () ->\r
25     '/pictures/' + @filename()\r
26   \r
27   opt_img_tag: () ->\r
28     {src: @r_url(), width: @get('width'), height: @get('height')}\r
29   \r
30   tmb_opt_img_tag: () ->\r
31     wh = Pettanr.Imager.thumbnail_size(@get('width'), @get('height'))\r
32     {src: @r_url(), width: wh[0], height: wh[1]}\r
33   \r
34   tail_opt_img_tag: (img) ->\r
35     {src: img, width: @get('width'), height: @get('height')}\r
36   \r
37   tail_tmb_opt_img_tag: (img) ->\r
38     wh = Pettanr.Imager.thumbnail_size(@get('width'), @get('height'))\r
39     {src: img, width: wh[0], height: wh[1]}\r
40   \r
41   alt_name: () ->\r
42     lgn = Pettanr.to_s(@license().license_group().get('caption'))\r
43     ln = Pettanr.to_s(@license().get('caption'))\r
44     lgn + '[' + ln + ']'\r
45   \r
46   symbol_option: () ->\r
47     @tmb_opt_img_tag()\r
48   \r
49   is_enable: () ->\r
50     if @head().resource_picture()\r
51       true\r
52     else\r
53       false\r
54   \r
55   @head: (opid) ->\r
56     #Picture.find( conditions => ['original_picture_id = ?', opid], :order => 'pictures.revision desc')\r
57   \r
58   head: () ->\r
59     Picture.head(@get('original_picture_id'))\r
60   \r
61   is_head: () ->\r
62     #this == @head()\r
63   \r
64   subdirs: () ->\r
65     if @license_extend().reverse < 0\r
66       ['']\r
67     else\r
68       ['', 'v', 'h', 'vh']\r
69   \r
70   is_showable: (operators = null) ->\r
71     return false if not @original_picture()\r
72     return true if @is_own(operators)\r
73     #@is_enable() and @is_head()\r
74   \r
75   initialize: () ->\r
76     if @id\r
77       @url = @url + @id\r
78   \r
79 class Pettanr.Picture.Collection extends Backbone.Collection\r
80   model: Pettanr.Picture\r
81   url: '/pictures'\r