Add user authorization

This commit is contained in:
gabdevele
2026-06-02 20:01:56 +02:00 Unverified
parent 795383a98c
commit 54aa4cb73e
13 changed files with 361 additions and 36 deletions
+22 -1
View File
@@ -81,6 +81,28 @@ void AuthController::loginWithPassword(
serviceResponse(service.loginWithPassword(body), std::move(callback));
}
void AuthController::changePassword(
const drogon::HttpRequestPtr &req,
std::function<void(const HttpResponsePtr &)> &&callback)
{
const auto user = visione::auth::authenticate(req);
if (!user)
{
callback(visione::http::error("unauthorized", drogon::k401Unauthorized));
return;
}
const auto body = visione::http::requireJson(req);
if (body.isNull())
{
callback(visione::http::error("invalid_json", drogon::k400BadRequest));
return;
}
visione::services::AuthService service;
serviceResponse(service.changePassword(*user, body), std::move(callback));
}
void AuthController::me(
const drogon::HttpRequestPtr &req,
std::function<void(const HttpResponsePtr &)> &&callback)
@@ -95,4 +117,3 @@ void AuthController::me(
visione::services::AuthService service;
callback(visione::http::json(service.currentUser(*user)));
}