class Peta.Item extends Backbone.Model\r
\r
initialize: (attr = {}, options = {}) ->\r
+ @url = @default_url()\r
super(attr, options)\r
@expire_time = options.expire_time\r
@boosters = {}\r
\r
# ClassMethods\r
\r
+ @default_url: () ->\r
+ '/' + @table_name() + '/'\r
+ \r
@my_class: () ->\r
this\r
\r
\r
#InstanceMethods\r
\r
+ default_url: () ->\r
+ r = @my_class().default_url()\r
+ r = r.concat( @id ) if @id\r
+ r\r
+ \r
singular: () ->\r
@my_class().singular()\r
\r
else\r
@item_name()\r
\r
+ has_many: (has_many_name) ->\r
+ has_many_manifest = @my_class().my_manifest().associations.has_many[has_many_name]\r
+ action_name = has_many_manifest.list_action_name\r
+ Locmare.ListGroup.list(\r
+ has_many_name, action_name, {id: @get('id')}\r
+ )\r
+ \r
+ has_one: (has_one_name) ->\r
+ has_one_manifest = @my_class().my_manifest().associations.has_one[has_one_name]\r
+ controller_name = has_one_manifest.model().table_name()\r
+ action_name = has_one_manifest.list_action_name\r
+ Locmare.ListGroup.list(\r
+ controller_name, action_name, {id: @get('id')}\r
+ )\r
+ \r
boosts: (level) ->\r
c = @my_class().my_peta().boost\r
_.each c, (boost_manifest, boost_name) =>\r
is_extend_column: (column_name) ->\r
@is_extend_column column_name\r
\r
- is_visible: (operators) ->\r
+ is_visible: (operators = Pettanr.cache.operators) ->\r
if Manifest.manifest().magic_numbers['run_mode'] == 0\r
return false if not operators.is_guest()\r
else\r
destroy_url: () ->\r
Pettanr.url(@table_name(), 'destroy', {id: @get('id')})\r
\r
+ hold: () ->\r
+ Pettanr.cache.hold(this)\r
+ \r
+ fix: () ->\r
+ Pettanr.cache.fix(this)\r
+ \r
+ release: () ->\r
+ Pettanr.cache.release(this)\r
+ \r
save: (model_attr) ->\r
super(model_attr || @attributes, {\r
success: (model, response, options) =>\r