OSDN Git Service

fix read permission for element
authoryasushiito <yas@pen-chan.jp>
Tue, 1 Apr 2014 02:51:47 +0000 (11:51 +0900)
committeryasushiito <yas@pen-chan.jp>
Tue, 1 Apr 2014 02:51:47 +0000 (11:51 +0900)
app/models/ground_color.rb
app/models/ground_picture.rb
app/models/panel_picture.rb
app/models/scroll_panel.rb
app/models/sheet_panel.rb
app/models/story.rb
app/models/story_sheet.rb
lib/peta/element.rb
lib/peta/leaf.rb

index e750723..a73571a 100644 (file)
@@ -54,11 +54,6 @@ class GroundColor < Peta::Element
     self.panel_id = pid
   end
   
-  def visible? operators
-    return false unless super
-    self.owner_model.visible? operators
-  end
-  
   def div_offset
     xy ? xy : 0
   end
index bed742a..aaa6840 100644 (file)
@@ -61,11 +61,6 @@ class GroundPicture < Peta::Element
     self.panel_id = pid
   end
   
-  def visible? operators
-    return false unless super
-    self.owner_model.visible? operators
-  end
-  
   def style spot = nil, opacity = 20
     r = {
       'position' => 'absolute', 'top' => '0px', 'left' => '0px', 'z-index' => self.z, 
index e806217..54ddf44 100644 (file)
@@ -47,11 +47,6 @@ class PanelPicture < Peta::Element
     true
   end
   
-  def visible? operators
-    return false unless super
-    self.owner_model.visible? operators
-  end
-  
   def supply_default
     self.x = 0
     self.y = 0
index 3b8b76c..8dab5bb 100644 (file)
@@ -20,11 +20,6 @@ class ScrollPanel < Peta::Leaf
     self.author_id = operators.author.id
   end
   
-  def visible? operators
-    return false unless super
-    self.owner_model.visible? operators
-  end
-  
   def self.list_order
     'scroll_panels.updated_at desc'
   end
index 1561234..60d3346 100644 (file)
@@ -32,11 +32,6 @@ class SheetPanel < Peta::Element
     self.author_id = operators.author.id
   end
   
-  def visible? operators
-    return false unless super
-    self.owner_model.visible? operators
-  end
-  
   def self.list_where
     'sheets.visible > 0'
   end
index efb6666..b93cb78 100644 (file)
@@ -20,7 +20,7 @@ class Story < Peta::Binder
   
   def visible? operators
     return false unless super
-    self.owner_model.visible? operators
+    self.visible > 0
   end
   
   def disp_t
index e0f98ed..9056a7a 100644 (file)
@@ -20,11 +20,6 @@ class StorySheet < Peta::Leaf
     self.author_id = operators.author.id
   end
   
-  def visible? operators
-    return false unless super
-    self.owner_model.visible? operators
-  end
-  
   def self.list_where
     'stories.visible > 0'
   end
index 5f9f9e5..6a69229 100644 (file)
@@ -19,8 +19,12 @@ module Peta
     end
     
     def self.root_model
-      if self.parent_model and self.parent_model.element?
-        self.parent_model.root_model
+      if self.parent_model
+        if self.parent_model.element?
+          self.parent_model.root_model
+        else
+          self.parent_model
+        end
       else
         self
       end
@@ -28,9 +32,13 @@ module Peta
     
     # Instance Methods
     
+    def root
+      self.__send__ self.class.root_model.item_name
+    end
+    
     def visible? operators
       return false unless super
-      true
+      self.root.visible? operators
     end
     
     def self.list_opt_for_panel
index a877c5a..5b35555 100644 (file)
@@ -22,9 +22,13 @@ module Peta
       self.parent_model
     end
     
+    def root
+      self.__send__ self.class.root_model.item_name
+    end
+    
     def visible? operators
       return false unless super
-      self.class.root_model.visible? operators
+      self.root.visible? operators
     end
     
     def self.play_list_where cid