before_validation :valid_encode
+ cattr_reader :singular, :plural
+ @@singular = 'Scroll'
+ @@plural = 'Scrolls'
+ def self.item_name
+ self.singular.underscore
+ end
+
+ def item_name
+ self.class.item_name
+ end
+
+ def self.path_name with_engine = false
+ self.plural.underscore
+ end
+
+ def path_name
+ self.class.path_name
+ end
+
def valid_encode
['title', 'description'].each do |a|
next if attributes[a] == nil
self.visible = 0 if self.visible.blank?
end
- def overwrite au
- return false unless au
- self.author_id = au.id
+ def overwrite operators
+ return false unless operators.author
+ self.author_id = operators.author.id
end
def own? roles
self.author_id == au.id
end
- def visible? roles
+ def visible? operators
if MagicNumber['run_mode'] == 0
- return false unless guest_role_check(roles)
+ return false unless operators.guest?
else
- return false unless reader_role_check(roles)
+ return false unless operators.resource_reader?
end
- return true if self.own?(roles)
self.visible > 0
end
page_size
end
+ def self.list_order
+ 'scrolls.updated_at desc'
+ end
+
def self.list_where
'scrolls.visible > 0'
end
{:include => {:scroll_panels => {:include => {:panel => {}}}, :author => {}}}
end
- def self.show sid, roles
+ def self.show sid, operators
opt = {}
opt.merge!(Scroll.show_opt)
res = Scroll.find(sid, opt)
- raise ActiveRecord::Forbidden unless res.visible?(roles)
+ raise ActiveRecord::Forbidden unless res.visible?(operators)
res
end