public function handle($data) { $this->validate_request(["setting" => ["key", "value"]]); $profile = GroupBackend::fetch_group_profile($this->params["id"]); $setting = $data->{"setting"}; GroupBackend::set_group_setting($profile, $setting); return ["user" => $profile->toExternalForm(), "setting" => $setting]; }
public function handle($data) { $this->validate_request(["permission"]); $profile = GroupBackend::fetch_group_profile($this->params["id"]); $permission = $data->{"permission"}; GroupBackend::set_group_permission($profile, $permission, true); return ["user" => $profile->toExternalForm(), "permission" => $permission]; }
public function handle($data) { $this->validate_request(["group"]); $user = UserBackend::fetch_user_profile($this->params['id']); $group = GroupBackend::fetch_group_profile($data->{"group"}); UserBackend::add_user_group($user, $group); return []; }
public function handle($data) { $groups = []; /** @var GroupProfile $group */ foreach (GroupBackend::fetch_all_groups() as $group) { $groups[] = $group->toExternalForm(); } return ["count" => count($groups), "groups" => $groups]; }
public function handle($data) { $group = GroupBackend::fetch_group_profile($this->params['id']); $users = []; /** @var \meteor\data\profiles\UserProfile $user */ foreach (GroupBackend::fetch_group_users($group) as $user) { $users[] = $user->toExternalForm(); } return ["users" => $users]; }
public function handle($data) { $group = GroupBackend::fetch_group_profile($this->params['id']); $assignment = AssignmentBackend::fetch_assignment_profile(Token::decode($this->params['assignment'])); $data = []; /** @var UserProfile $user */ foreach (GroupBackend::fetch_group_users($group) as $user) { $data[] = ["user" => $user->toExternalForm(), "score" => UserBackend::fetch_user_scores($user, $assignment)]; } return ["users" => $data]; }
public function handle($data) { $this->validate_request(["assignment"]); $group = GroupBackend::fetch_group_profile($this->params['id']); $users = GroupBackend::fetch_group_users($group); $assignmentId = Token::decode($data->{"assignment"}); foreach ($users as $user) { UserBackend::add_user_assignment($user, $assignmentId); } $assignmentId = AssignmentBackend::fetch_assignment_profile($assignmentId); return ["assignment" => $assignmentId]; }
public function handle_get($data) { $profile = GroupBackend::fetch_group_profile($this->params["id"]); $data = []; $data["profile"] = $profile->toExternalForm(); $data["settings"] = GroupBackend::fetch_group_settings($profile); $data["permissions"] = GroupBackend::fetch_group_permissions($profile); $users = []; /** @var UserProfile $user */ foreach (GroupBackend::fetch_group_users($profile) as $user) { $users[] = $user->toExternalForm(); } $data["users"] = $users; return $data; }
private function handleCompleted($data) { $group = GroupBackend::fetch_group_profile($this->params['id']); $assignments = []; foreach (GroupBackend::fetch_group_users($group) as $user) { foreach (UserBackend::fetch_user_assignments_complete($user) as $assignment) { $assignments[$assignment["assignment"]["assignment-id"]] = $assignment["assignment"]; } } $completed = []; foreach ($assignments as $assignment) { $completed[] = $assignment; } return ["assignments" => $completed]; }
public function handle($data) { $this->validate_request(["group-name"]); $groupname = $data->{"group-name"}; $displayname = $groupname; if (isset($data->{"display-name"})) { $displayname = $data->{"display-name"}; } if (GroupBackend::group_exists($groupname)) { throw new EndpointExecutionException("Group with name already exists", ["group-name", $groupname]); } // Add the group to the database $group = GroupBackend::create_group($groupname, $displayname); // Return the new user to the client return ["group" => $group->toExternalForm()]; }
public function handle($data) { $profile = GroupBackend::fetch_group_profile($this->params["id"]); $permissions = GroupBackend::fetch_group_permissions($profile); return ["permissions" => $permissions]; }
private function handlePost($data) { $profile = GroupBackend::fetch_group_profile($this->params["id"]); GroupBackend::delete_group_setting($profile, $this->params["setting"]); return []; }
public static function set_group_setting(GroupProfile $profile, $setting) { if (array_key_exists($setting->{"key"}, GroupBackend::fetch_group_settings($profile))) { $query = Database::generate_query("group_setting_update", [$profile->getGroupId()->toString(), $setting->{"key"}, $setting->{"value"}]); } else { $query = Database::generate_query("group_setting_set", [$profile->getGroupId()->toString(), $setting->{"key"}, $setting->{"value"}]); } $query->execute(); }
public function handleDelete($data) { $profile = GroupBackend::fetch_group_profile($this->params["id"]); GroupBackend::set_group_permission($profile, $this->params["permission"], true); return []; }
public function handle($data) { $profile = GroupBackend::fetch_group_profile($this->params["id"]); $settings = GroupBackend::fetch_group_settings($profile); return ["settings" => $settings]; }
public static function check_user_permission(UserProfile $profile, $permission) { $query = Database::generate_query("user_permission_check", [$profile->getUserId()->toString(), $permission]); $result = $query->execute(); $count = $result->count(); $result->close(); if ($count >= 1) { return true; } foreach (UserBackend::fetch_user_groups($profile) as $group) { if (GroupBackend::check_group_permission($group, $permission)) { return true; } } return false; }