Пример #1
0
 public function getPrivileges()
 {
     if (is_null($this->privileges)) {
         $this->privileges = UserRepository::getPrivilegesForRoleId($this->id);
     }
     return $this->privileges;
 }
    $response->getBody()->write(" {$count} records changed");
    return $response;
};
$app->post("/role/save", $save_role);
$get_role_privileges = function (Request $request, Response $response) {
    $parser = new RequestParser($request);
    $data = $parser->getData();
    if (empty($data['role_id'])) {
        /*
        $new_response = $response->withStatus( 400 );
        $new_response->getBody()->write( "Must supply role id" );
        return $new_response;
        */
        $privileges = UserRepository::getAllPrivileges();
    } else {
        $privileges = UserRepository::getPrivilegesForRoleId($data['role_id']);
    }
    $response->getBody()->write(json_encode($privileges));
    return $privileges;
};
$app->get("/role/privileges", $get_role_privileges);
$save_role_privileges = function (Request $request, Response $response) {
    $parser = new RequestParser($request);
    $data = $parser->getData();
    if (empty($data['role_id']) || empty($data['privilege_ids'])) {
        $new_response = $response->withStatus(400);
        $new_response->getBody()->write("Must supply role_id and privilege_ids");
        return $new_response;
    }
    $count = UserRepository::saveRolePrivilegeRelationships($data['role_id'], $data['privilege_ids']);
    $response->getBody()->write("Saved {$count} relationships");