====== Класс Permissions ====== Данный класс предоставляет возможности программного управления пользователями, группами пользователей и правами доступа. =====Методы===== ==== AddChildGroupToParentGroup ==== public void AddChildGroupToParentGroup(int parent_group_id, int child_group_id) Задает для группы c идентификатором //child_group_id// родительскую группу с идентификатором //parent_group_id//. ====AddGroup==== public int AddGroup(string name) public int AddGroup(string name, bool AllowSharedOwnershipOfItem) Метод создает новую группу с именем //name// и возвращает ее идентификатор. Флаг //AllowSharedOwnershipOfItem// позволяет установить опцию **Совместное использование статей** в [[:user_group|свойствах группы]]. Значение по умолчанию - //false//. ==== AddGroupToContentPermission ==== public void AddGroupToContentPermission(int groupId, int contentId, int permissionId) public void AddGroupToContentPermission(int groupId, int contentId, int permissionId, bool propagateToItems) Задает (обновляет) права доступа для группы пользователей на заданный контент. Параметр //propagateToItems// означает, что эти права доступа также будут применяться к новым статьям, создаваемым в данном контенте. ==== AddGroupToItemPermission ==== public void AddGroupToItemPermission(int groupId, int itemId, int permissionId) Задает (обновляет) права доступа для группы пользователей на заданную статью. ====AddUser==== public int AddUser(string username, string password, string First_Name, string Last_Name, string Email) Метод создает нового пользователя и возвращает его идентификатор. ==== AddUserToContentPermission ==== public void AddUserToContentPermission(int userId, int contentId, int permissionId) public void AddUserToContentPermission(int userId, int contentId, int permissionId, bool propagateToItems) Задает (обновляет) права доступа для пользователя на заданный контент. Параметр //propagateToItems// означает, что эти права доступа также будут применяться к новым статьям, создаваемым в данном контенте ==== AddUserToGroup ==== public void AddUserToGroup(int userId, int groupId) Выполняет привязку пользователя к группе. ==== AddUserToItemPermission ==== public void AddUserToItemPermission(int userId, int itemId, int permissionId) Задает (обновляет) права доступа для пользователя на заданную статью. ====AuthenticateUser==== public int AuthenticateUser(string username, string password) Производит попытку аутентификации пользователя в соответствии с заданными параметрами. Возвращает идентификатор пользователя при успешной аутентификации, либо 0 -- при неуспешной. ==== CopyUsersFromGroupToGroup ==== public void CopyUsersFromGroupToGroup(int fromGroupId, int toGroupId) Копирует пользователей из группы //fromGroupId// в группу //toGroupId//. Копируются только отсутствующие пользователи. ==== GetAllGroups ==== public DataTable GetAllGroups() Возвращает все группы пользователей. Возвращаемые поля: group_id, group_name, created, modified. ==== GetAllGroupsForContentPermission ==== public DataTable GetAllGroupsForContentPermission(int contentId) Возвращает все группы пользователей, для которых явно настроены права доступа на заданный контент. Возвращаемые поля: group_id, group_name, created, modified. ==== GetAllGroupsForItemPermission ==== public DataTable GetAllGroupsForItemPermission(int itemId) Возвращает все группы пользователей, для которых явно настроены права доступа на заданную статью. Возвращаемые поля: group_id, group_name, created, modified. ==== GetAllUsersForItemPermission ==== public DataTable GetAllUsersForItemPermission(int itemId) Возвращает всех пользователей, для которых явно настроены права доступа на заданную статью. Возвращаемые поля: user_id, login, password, disabled, first_name, last_name, email, created, modified. ==== GetAllUsersForContentPermission ==== public DataTable GetAllUsersForContentPermission(int contentId) Возвращает всех пользователей, для которых явно настроены права доступа на заданный контент. Возвращаемые поля: user_id, login, password, disabled, first_name, last_name, email, created, modified. ==== GetChildParentGroups ==== public DataTable GetChildParentGroups() Возвращает список групп с информацией о родителе. Возвращаемые поля: child_group_id, child_group_name, parent_group_id, parent_group_name. ====GetGroupInfo==== public DataTable GetGroupInfo(int group_id) public DataTable GetGroupInfo(string group_name) Возвращает информацию о выбранной группе по идентификатору или имени. Возвращаемые поля: group_id, group_name, created, modified. ==== GetPermissionLevels ==== public DataTable GetPermissionLevels() Возвращает информацию об уровнях доступа. Возвращаемые поля: permission_level_id, permission_level, permission_level_name ==== GetRootGroupsForUser ==== public DataTable GetRootGroupsForUser(int user_id) Для заданного пользователя возвращается список групп, в которые он входит явно. Возвращаемые поля: group_id. ====GetUserInfo==== public DataTable GetUserInfo(int user_id) public DataTable GetUserInfo(string login) Возвращает информацию о выбранном пользователе по идентификатору или имени. Возвращаемые поля: user_id, login, password, disabled, first_name, last_name, email, created, modified. ==== GetUsersForGroup ==== public DataTable GetUsersForGroup(int group_id) Возвращает список пользователей, явно входящих в группу. Возвращаемые поля: user_id, login, password, disabled, first_name, last_name, email, created, modified. ==== MoveUsersFromGroupToGroup ==== public void MoveUsersFromGroupToGroup(int fromGroupId, int toGroupId) Перемещает пользователей из группы //fromGroupId// в группу //toGroupId//. ==== RemoveAllEntitiesFromContentPermission ==== public void RemoveAllEntitiesFromContentPermission(int contentId) Удаляет все права доступа, явно определенные для данного контента. ==== RemoveAllEntitiesFromItemPermission ==== public void RemoveAllEntitiesFromItemPermission(int itemId) Удаляет все права доступа, явно определенные для данной статьи. ==== RemoveAllGroupsFromContentPermission ==== public void RemoveAllGroupsFromContentPermission(int contentId) Удаляет все права доступа групп пользователей, явно определенные для данного контента. ==== RemoveAllGroupsFromItemPermission ==== public void RemoveAllGroupsFromItemPermission(int itemId) Удаляет все права доступа групп пользователей, явно определенные для данной статьи. ==== RemoveAllUsersFromContentPermission ==== public void RemoveAllUsersFromContentPermission(int contentId) Удаляет все права доступа пользователей, явно определенные для данного контента. ==== RemoveAllUsersFromItemPermission ==== public void RemoveAllUsersFromItemPermission(int itemId) Удаляет все права доступа пользователей, явно определенные для данной статьи. ==== RemoveChildGroupFromParentGroup ==== public void RemoveChildGroupFromParentGroup(int parent_group_id, int child_group_id) Удаляет связь родитель-потомок для заданной родительской и дочерней групп. ==== RemoveGroup ==== public void RemoveGroup(int groupId) Удаляет группу пользователей из системы ==== RemoveGroupFromContentPermission ==== public void RemoveGroupFromContentPermission(int groupId, int contentId) Удаляет явно определенные права доступа группы пользователей на данный контент. ==== RemoveGroupFromItemPermission ==== public void RemoveGroupFromItemPermission(int groupId, int itemId) Удаляет явно определенные права доступа группы пользователей на данную статью. ====RemoveUser==== bool RemoveUser(int userId) Удаляет пользователя из системы ==== RemoveUserFromContentPermission ==== public void RemoveUserFromContentPermission(int userId, int contentId) Удаляет явно определенные права доступа пользователя на данный контент. ==== RemoveUserFromItemPermission ==== public void RemoveUserFromItemPermission(int userId, int itemId) Удаляет явно определенные права доступа пользователя на данную статью. ==== RemoveUserFromGroup ==== public void RemoveUserFromGroup(int userId, int groupId) Удаляет привязку пользователя к группе ====UpdateGroup==== public void UpdateGroup(int groupId, string newName) public void UpdateGroup(int groupId, string newName, bool AllowSharedOwnershipOfItems) Обновляет информацию о группе с заданным идентификатором. ==== UpdateGroupContentPermission ==== public void UpdateGroupContentPermission(int groupId, int contentId, int permissionId) public void UpdateGroupContentPermission(int groupId, int contentId, int permissionId, bool propagateToItems) Обновляет явно определенные права доступа группы пользователей на данный контент. ==== UpdateGroupItemPermission ==== public void UpdateGroupItemPermission(int groupId, int itemId, int permissionId) Обновляет явно определенные права доступа группы пользователей на данную статью. ====UpdateUser==== public void UpdateUser(int userId, string newUserName, string newPassword, string newFirst_Name, string newLast_Name, string newEmail) Обновляет информацию о пользователе с заданным идентификатором. ==== UpdateUserContentPermission ==== public void UpdateUserContentPermission(int userId, int contentId, int permissionId, bool propagateToItems) Обновляет явно определенные права доступа пользователя на данный контент. ====UpdateUserItemPermission ==== public void UpdateUserItemPermission(int userId, int itemId, int permissionId) Обновляет явно определенные права доступа пользователя на данную статью.