OSDN Git Service

fd7081eee3aab3216f8fa4ca20040148adac1a14
[pettanr/pettanr.git] / app / assets / javascripts / models / resource_picture.js.coffee
1 class Pettanr.ResourcePicture extends Peta.Content\r
2   \r
3   @singular: () ->\r
4     'ResourcePicture'\r
5   \r
6   @plural: () ->\r
7     'ResourcePictures'\r
8   \r
9   defaults: {\r
10     id: null\r
11   } \r
12   \r
13   is_visible: (operators = Pettanr.cache.operators) ->\r
14     @is_user_visible(operators)\r
15   \r
16   filename: () ->\r
17     @get('id') + '.' + @get('ext')\r
18   \r
19   gifname: () ->\r
20     @get('id') + '.gif'\r
21   \r
22   mime_type: () ->\r
23     'image/' + @get('ext')\r
24   \r
25   full_src: () ->\r
26     @src('full')\r
27   \r
28   src: (subdir = null) ->\r
29     opt = if _.isEmpty(subdir)\r
30       ''\r
31     else\r
32       '?subdir=' + Pettanr.to_s(subdir)\r
33     '/resource_pictures/' + @filename() + opt\r
34   \r
35   tmb_opt_img_tag: () ->\r
36     klass = if true # thumbnail\r
37       Pettanr.Image.SymbolPicture\r
38     new klass({\r
39       attr: {\r
40         src: @src()\r
41       },\r
42       picture: this\r
43     })\r
44   \r
45   opt_img_tag: () ->\r
46     {src: @url('full'), width: @get('width'), height: @get('height')}\r
47   \r
48   alt_name: () ->\r
49     lgn = Pettanr.to_s(@license().license_group().get('caption'))\r
50     ln = Pettanr.to_s(@license().get('caption'))\r
51     lgn + '[' + ln + ']'\r
52   \r
53   symbol_option: (context, options) ->\r
54     @retrieve(this, {\r
55       success: (symbol_item) => \r
56         options.success.call(context, symbol_item.to_symbol())\r
57     })\r
58   \r
59   credit_icon_view: () ->\r
60     new Pettanr.Views.ResourcePicture.CreditIcon({item: this})\r
61   \r
62   credit_view: (with_icon = true) ->\r
63     new Pettanr.Views.ResourcePicture.Credit({item: this, with_icon: with_icon})\r
64   \r
65   initialize: (attr = {}, options = {}) ->\r
66     super(attr, options)\r
67   \r