/** * Set user roles in lesson * * This function sets the role for the specified user * <br/>Example: * <code> * $lesson -> addUsers('jdoe', 'student'); //Added the user 'jdoe' in the lesson, having the role 'student' * $lesson -> setRoles('jdoe', 'professor'); //Updated jdoe's role to be 'professor' * </code> * Multiple values can be set if arguments are arrays * * @param mixed $login The user login name * @param mixed $role The user role for this lesson * @return boolean true if everything is ok * @since 3.5.0 * @access public */ public function setRoles($users, $roles) { $users = EfrontUser::verifyUsersList($users); $roles = EfrontUser::verifyRolesList($roles, sizeof($users)); foreach ($users as $key => $value) { eF_updateTableData("users_to_lessons", array('archive' => 0, 'user_type' => $roles[$key]), "users_LOGIN='******' and lessons_ID=" . $this->lesson['id']); //$cacheKey = "user_lesson_status:lesson:".$this -> lesson['id']."user:".$value; //EfrontCache::getInstance()->deleteCache($cacheKey); } }
/** * Set user roles in course * * This function sets the role for the specified user in the course * <br/>Example: * <code> * $course -> addUsers('jdoe', 'student'); //Added the user 'jdoe' in the lesson, having the role 'student' * $course -> setRoles('jdoe', 'professor'); //Updated jdoe's role to be 'professor' * </code> * Multiple values can be set if arguments are arrays * * @param mixed $users The user login name * @param mixed $roles The user role for this course * @since 3.5.0 * @access public */ public function setRoles($users, $roles) { $users = EfrontUser::verifyUsersList($users); $roles = EfrontUser::verifyRolesList($roles, sizeof($users)); $courseLessons = $this->getCourseLessons(); foreach ($users as $key => $value) { $fields = array('user_type' => $roles[$key]); $where = "users_LOGIN='******' and courses_ID=" . $this->course['id']; self::persistCourseUsers($fields, $where, $this->course['id'], $value); foreach ($courseLessons as $lessonId => $lesson) { $lesson->setRoles($value, $roles[$key]); } } }
/** * Remove users from group * * This function is used to remove users from the current group * <br>Example: * <code> * $group = new EfrontGroup(2); * $group -> removeUsers(array('jdoe', 'doej')); * </code> * * @param mixed $users An array of user logins or EfrontUser objects, or a single login or EfrontUser object * @return boolean True if everything is ok * @since 3.5.2 * @access public */ public function removeUsers($users) { $users = EfrontUser::verifyUsersList($users); foreach ($users as $user) { eF_deleteTableData("users_to_groups", "users_LOGIN='******' and groups_ID=" . $this->group['id']); } return true; }