Changeset 236

Show
Ignore:
Timestamp:
01/18/06 03:55:56 (3 years ago)
Author:
tomafro
Message:

For some unknown reason, active supports Object.subclasses_of doesn't include subclasses within modules, so we can't rely on it

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • user_engine/trunk/lib/user_engine/authorized_system.rb

    r154 r236  
    5252      # Returns an array containing all subclasses of ApplicationController 
    5353      def all_controllers 
    54         #ObjectSpace.subclasses_of(ApplicationController) 
    55         subclasses_of(ApplicationController) 
     54        superclasses = [ApplicationController]      
     55        subclasses = [] 
     56          ObjectSpace.each_object(Class) do |k| 
     57          next if (k.ancestors & superclasses).empty? || superclasses.include?(k) || subclasses.include?(k) 
     58          subclasses << k 
     59        end 
     60        subclasses 
    5661      end 
    5762    end