- Group game and member management merged into the same function
This commit is contained in:
		
							parent
							
								
									139c3aa38d
								
							
						
					
					
						commit
						b820afabec
					
				@ -821,41 +821,29 @@ function get_game_groups(ReqHandler &$rh, array $params): array
 | 
				
			|||||||
    return $groups;
 | 
					    return $groups;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function change_group_members(ReqHandler &$rh, array $params): string
 | 
					function change_group_members_or_games(ReqHandler &$rh, array $params): string
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    global $groupMgr;
 | 
					    global $groupMgr;
 | 
				
			||||||
    global $user;
 | 
					    global $user;
 | 
				
			||||||
    global $userMgr;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    $group = $groupMgr->getGroup($params["groupid"]);
 | 
					    $group = $groupMgr->getGroup($params["groupid"]);
 | 
				
			||||||
    if ($group !== null) {
 | 
					    if ($group !== null) {
 | 
				
			||||||
        if ($group->isUserContributor($user->getNickname()) || $user->hasQuizmasterPrivilege()) {
 | 
					        if ($group->isUserContributor($user->getNickname()) || $user->hasQuizmasterPrivilege()) {
 | 
				
			||||||
            $add = explode_list(trim($params["add"]));
 | 
					            $add = explode_list(trim($params["add"]));
 | 
				
			||||||
            $add = $userMgr->sanitizeNicknames($add);
 | 
					 | 
				
			||||||
            $remove = explode_list(trim($params["remove"]));
 | 
					            $remove = explode_list(trim($params["remove"]));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            $action = $params["action"];
 | 
				
			||||||
 | 
					            if ($action === "change_group_members") {
 | 
				
			||||||
 | 
					                global $userMgr;
 | 
				
			||||||
 | 
					                $add = $userMgr->sanitizeNicknames($add);
 | 
				
			||||||
                $remove = $userMgr->sanitizeNicknames($remove);
 | 
					                $remove = $userMgr->sanitizeNicknames($remove);
 | 
				
			||||||
                $group->changeMembers($add, $remove);
 | 
					                $group->changeMembers($add, $remove);
 | 
				
			||||||
            return "OK";
 | 
					            } else if ($action === "change_group_games") {
 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return "FAIL";
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function change_group_games(ReqHandler &$rh, array $params): string
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    global $groupMgr;
 | 
					 | 
				
			||||||
    global $user;
 | 
					 | 
				
			||||||
                global $gameMgr;
 | 
					                global $gameMgr;
 | 
				
			||||||
 | 
					 | 
				
			||||||
    $group = $groupMgr->getGroup($params["groupid"]);
 | 
					 | 
				
			||||||
    if ($group !== null) {
 | 
					 | 
				
			||||||
        if ($group->isUserContributor($user->getNickname()) || $user->hasQuizmasterPrivilege()) {
 | 
					 | 
				
			||||||
            $add = explode_list(trim($params["add"]));
 | 
					 | 
				
			||||||
                $add = $gameMgr->sanitizeGames($add);
 | 
					                $add = $gameMgr->sanitizeGames($add);
 | 
				
			||||||
            $remove = explode_list(trim($params["remove"]));
 | 
					 | 
				
			||||||
                $remove = $gameMgr->sanitizeGames($remove);
 | 
					                $remove = $gameMgr->sanitizeGames($remove);
 | 
				
			||||||
                $group->changeGames($add, $remove);
 | 
					                $group->changeGames($add, $remove);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
            return "OK";
 | 
					            return "OK";
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@ -876,8 +864,7 @@ $rh->add("update_group", ["groupname", "description", "owner", "editors", "id"],
 | 
				
			|||||||
$rh->add("delete_groups", ["ids"], PRIVILEGE_QUIZMASTER, "delete_groups", RESP_PLAIN, "Delete group.");
 | 
					$rh->add("delete_groups", ["ids"], PRIVILEGE_QUIZMASTER, "delete_groups", RESP_PLAIN, "Delete group.");
 | 
				
			||||||
$rh->add("get_all_groups", [], PRIVILEGE_QUIZMASTER, "get_all_groups", RESP_JSON, "Get all player groups.");
 | 
					$rh->add("get_all_groups", [], PRIVILEGE_QUIZMASTER, "get_all_groups", RESP_JSON, "Get all player groups.");
 | 
				
			||||||
$rh->add("search_groups", ["needle"], PRIVILEGE_QUIZMASTER, "search_groups", RESP_JSON, "Serach and fetch player groups.");
 | 
					$rh->add("search_groups", ["needle"], PRIVILEGE_QUIZMASTER, "search_groups", RESP_JSON, "Serach and fetch player groups.");
 | 
				
			||||||
$rh->add("change_group_members", ["groupid", "add", "remove"], PRIVILEGE_QUIZMASTER, "change_group_members", RESP_PLAIN, "Change group members.");
 | 
					$rh->add(["change_group_members", "change_group_games"], ["groupid", "add", "remove"], PRIVILEGE_QUIZMASTER, "change_group_members_or_games", RESP_PLAIN, "Change group members or games.");
 | 
				
			||||||
$rh->add("change_group_games", ["groupid", "add", "remove"], PRIVILEGE_QUIZMASTER, "change_group_games", RESP_PLAIN, "Change group games.");
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
$rh->add(["create_user", "update_user"], ["nickname", "password", "realname", "privilege"], PRIVILEGE_QUIZMASTER, "create_update_user", RESP_PLAIN, "Create or update user.");
 | 
					$rh->add(["create_user", "update_user"], ["nickname", "password", "realname", "privilege"], PRIVILEGE_QUIZMASTER, "create_update_user", RESP_PLAIN, "Create or update user.");
 | 
				
			||||||
$rh->add("delete_users", ["users"], PRIVILEGE_QUIZMASTER, "delete_users", RESP_PLAIN, "Delete users.");
 | 
					$rh->add("delete_users", ["users"], PRIVILEGE_QUIZMASTER, "delete_users", RESP_PLAIN, "Delete users.");
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user