当前位置: 首页>>代码示例>>PHP>>正文


PHP DatabaseManager::validateScope方法代码示例

本文整理汇总了PHP中DatabaseManager::validateScope方法的典型用法代码示例。如果您正苦于以下问题:PHP DatabaseManager::validateScope方法的具体用法?PHP DatabaseManager::validateScope怎么用?PHP DatabaseManager::validateScope使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DatabaseManager的用法示例。


在下文中一共展示了DatabaseManager::validateScope方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: DatabaseManager

if (!$_GET['type'] || !$_GET['username'] || !$_GET['scope'] || !$_GET['level']) {
    json_p($INVALID);
}
$type = $_GET['type'];
$username = $_GET['username'];
$scope = $_GET['scope'];
$level = $_GET['level'];
if ($type !== "add" && $type !== "remove") {
    json_p(['success' => false, 'reason' => "Expected values of add or remove for parameter type."]);
}
$user = Auth::user();
if (!$user) {
    json_p(["success" => false, "This endpoint requires authentication."]);
}
$dbManager = new DatabaseManager();
if (!$dbManager->validateScope($scope)) {
    json_p("Invalid room name.");
}
switch ($level) {
    case "admin":
        if (!$dbManager->isOwner($user, $scope)) {
            json_p(['success' => false, 'reason' => "Only the room owner can appoint or demote admins."]);
        }
        json_p($dbManager->changePermission($type, $username, $scope, DatabaseManager::PERMISSION_LEVEL_ROOM_ADMIN));
        break;
    case "host":
    case "ban":
        if (!$dbManager->isOwnerOrAdmin($user, $scope)) {
            json_p(['success' => false, 'reason' => "You don't have permission to do this."]);
        }
        json_p($dbManager->changePermission($type, $username, $scope, $level === "host" ? DatabaseManager::PERMISSION_LEVEL_ROOM_HOST : DatabaseManager::PERMISSION_LEVEL_ROOM_BANNED));
开发者ID:williamtdr,项目名称:totem-api,代码行数:31,代码来源:permission.php


注:本文中的DatabaseManager::validateScope方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。