} else {
        $roles = UserRepository::getRolesForUserId($data['user_id']);
    }
    $response->getBody()->write(json_encode($roles));
    return $response;
};
$app->get("/role/list", $list_roles);
$delete_role = function (Request $request, Response $response) {
    $parser = new RequestParser($request);
    $data = $parser->getData();
    if (empty($data['id'])) {
        $new_response = $response->withStatus(400);
        $new_response->getBody()->write("Must supply role id");
        return $new_response;
    }
    $count = UserRepository::markRoleAsDeleted($data['id']);
    if ($count < 1) {
        $new_response = $response->withStatus(404);
        $new_response->getBody()->write("Invalid role id");
        return $new_response;
    }
    $response->getBody()->write("Successfully deleted role with id: " . $data['id']);
    return $response;
};
$app->post("/role/delete", $delete_role);
$save_role = function (Request $request, Response $response) {
    $parser = new RequestParser($request);
    $data = $parser->getData();
    $role = new Role();
    $role->hydrate($data);
    $errors = $role->validateData();