@@ -11,17 +11,17 @@ def where(relation, *args)
1111 def where_strict ( relation , args )
1212 return relation . where ( :name => args [ :name ] ) if args [ :resource ] . blank?
1313 resource = if args [ :resource ] . is_a? ( Class )
14- { class : args [ :resource ] . to_s , id : nil }
14+ { class : Rolify . base_class_for ( args [ :resource ] ) . to_s , id : nil }
1515 else
16- { class : args [ :resource ] . class . name , id : args [ :resource ] . id }
16+ { class : Rolify . base_class_for ( args [ :resource ] . class ) . name , id : args [ :resource ] . id }
1717 end
1818
1919 relation . where ( :name => args [ :name ] , :resource_type => resource [ :class ] , :resource_id => resource [ :id ] )
2020 end
2121
2222 def find_cached ( relation , args )
2323 resource_id = ( args [ :resource ] . nil? || args [ :resource ] . is_a? ( Class ) || args [ :resource ] == :any ) ? nil : args [ :resource ] . id
24- resource_type = args [ :resource ] . is_a? ( Class ) ? args [ :resource ] . to_s : args [ :resource ] . class . name
24+ resource_type = args [ :resource ] . is_a? ( Class ) ? Rolify . base_class_for ( args [ :resource ] ) . to_s : Rolify . base_class_for ( args [ :resource ] . class ) . name
2525
2626 return relation . find_all { |role | role . name == args [ :name ] . to_s } if args [ :resource ] == :any
2727
@@ -34,7 +34,7 @@ def find_cached(relation, args)
3434
3535 def find_cached_strict ( relation , args )
3636 resource_id = ( args [ :resource ] . nil? || args [ :resource ] . is_a? ( Class ) ) ? nil : args [ :resource ] . id
37- resource_type = args [ :resource ] . is_a? ( Class ) ? args [ :resource ] . to_s : args [ :resource ] . class . name
37+ resource_type = args [ :resource ] . is_a? ( Class ) ? Rolify . base_class_for ( args [ :resource ] ) . to_s : Rolify . base_class_for ( args [ :resource ] . class ) . name
3838
3939 relation . find_all do |role |
4040 role . resource_id == resource_id && role . resource_type == resource_type && role . name == args [ :name ] . to_s
@@ -67,7 +67,7 @@ def remove(relation, role_name, resource = nil)
6767 # role.destroy if role.send(user_class.to_s.tableize.to_sym).empty?
6868 #end
6969 cond = { :name => role_name }
70- cond [ :resource_type ] = ( resource . is_a? ( Class ) ? resource . to_s : resource . class . name ) if resource
70+ cond [ :resource_type ] = ( resource . is_a? ( Class ) ? Rolify . base_class_for ( resource ) . to_s : Rolify . base_class_for ( resource . class ) . name ) if resource
7171 cond [ :resource_id ] = resource . id if resource && !resource . is_a? ( Class )
7272 roles = relation . roles . where ( cond )
7373 roles . each do |role |
@@ -116,9 +116,9 @@ def build_query(role, resource = nil)
116116 return [ { :name => role } ] if resource == :any
117117 query = [ { :name => role , :resource_type => nil , :resource_id => nil } ]
118118 if resource
119- query << { :name => role , :resource_type => ( resource . is_a? ( Class ) ? resource . to_s : resource . class . name ) , :resource_id => nil }
119+ query << { :name => role , :resource_type => ( resource . is_a? ( Class ) ? Rolify . base_class_for ( resource ) . to_s : Rolify . base_class_for ( resource . class ) . name ) , :resource_id => nil }
120120 if !resource . is_a? Class
121- query << { :name => role , :resource_type => resource . class . name , :resource_id => resource . id }
121+ query << { :name => role , :resource_type => Rolify . base_class_for ( resource . class ) . name , :resource_id => resource . id }
122122 end
123123 end
124124 query
0 commit comments