OSDN Git Service

fix peta test
[pettanr/pettanr.git] / app / models / story_sheet.rb
1 class StorySheet < Peta::Leaf
2   load_manifest
3   belongs_to :story
4   belongs_to :sheet
5   
6   validates :story_id, :presence => true, :numericality => true, :existence => {:both => false}
7   validates :sheet_id, :presence => true, :numericality => true, :existence => {:both => false}
8   validates :t, :presence => true, :numericality => {:greater_than_or_equal_to => 0}
9   
10   def supply_default
11     self.story_id = nil
12     self.sheet_id = nil
13     self.t = nil
14   end
15   
16   def self.public_list_where
17     'stories.visible > 0'
18   end
19   
20   def self.by_author_list_includes
21     {
22       :story => {
23         :author => {}
24       }
25     }
26   end
27   
28   def self.show_opt
29     {:include => {
30       :story => {}, 
31       :sheet => {
32         :author => {} 
33       }
34     }}
35   end
36   
37   def allow? operators
38     return nil if self.story_id == nil or self.sheet_id == nil
39     self.story.own?(operators) and self.sheet.usable?(operators)
40   end
41   
42 end