OSDN Git Service

t#30137:fix authenticate
[pettanr/pettanr.git] / app / models / artist.rb
index bfd9b76..6ac95a6 100644 (file)
@@ -16,23 +16,18 @@ class Artist < ActiveRecord::Base
     self.author_id = au.id
   end
   
-  def own? au
-    if au.is_a?(Author)
-      self.author_id == au.id
-    elsif au.is_a?(Artist)
-      self.id == au.id
-    else
-      false
-    end
+  def own? roles
+    roles = [roles] unless roles.respond_to?(:each)
+    au = Artist.get_author_from_roles roles
+    return false unless au
+    self.author_id == au.id
   end
   
-  def visible? au
-    if au == nil
-      return false if MagicNumber['run_mode'] == 1
-    elsif au.is_a?(Author)
-      return true
+  def visible? roles
+    if MagicNumber['run_mode'] == 0
+      return false unless guest_role_check(roles)
     else
-      return false
+      return false unless resource_reader_role_check(roles)
     end
     true
   end