module RailsConnector # The permissions assigned to an Obj. class Permission < CmsBaseModel belongs_to :object, :class_name => 'Obj', :foreign_key => 'object_id' # Returns the Array of the names of the user groups to which read permission has been granted. def self.read user_groups_for_permission_type(1) end # Returns the Array of the names of the user groups to which write permission has been granted def self.write user_groups_for_permission_type(2) end # Returns the Array of the names of the user groups to which root permission has been granted def self.root user_groups_for_permission_type(3) end # Returns the Array of the names of the user groups to which the children creation permission has been granted. def self.create_children user_groups_for_permission_type(4) end # Returns the Array of the names of the user groups to which live read permission has been granted. def self.live user_groups_for_permission_type(5) end private def self.user_groups_for_permission_type(permission_type) # Field name "user_login" is a legacy from CM tables. # Actually the field contains the user group. select(:user_login).where(:permission_type => permission_type).map(&:user_login) end end end