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 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