mirror of
https://github.com/Lyxminxx/jast.git
synced 2026-10-11 12:51:51 +02:00
removed frontend, added ci
This commit is contained in:
1 parent
b6dbb34a89
commit
90ad2f05ce
11 files changed
+69
-752
No files matched your search
+35
@@ -108,6 +108,13 @@ class TransactionIn(Schema):
|
||||
class SuccessResponse(Schema):
|
||||
success: bool
|
||||
|
||||
class UserUpdateIn(Schema):
|
||||
username: str | None = None
|
||||
email: str | None = None
|
||||
first_name: str | None = None
|
||||
last_name: str | None = None
|
||||
password: str | None = None
|
||||
|
||||
|
||||
# Endpoints
|
||||
@api.post("/auth/register", response=TokenOut)
|
||||
@@ -145,6 +152,34 @@ def login_view(request, payload: LoginIn):
|
||||
"user": user,
|
||||
}
|
||||
|
||||
@api.put("/auth/me", response=UserOut, auth=auth)
|
||||
def update_current_user(request, payload: UserUpdateIn):
|
||||
user = request.auth
|
||||
|
||||
if payload.username and payload.username != user.username:
|
||||
if User.objects.filter(username=payload.username).exclude(id=user.id).exists():
|
||||
raise HttpError(400, "Username already taken")
|
||||
user.username = payload.username
|
||||
|
||||
if payload.email is not None:
|
||||
user.email = payload.email
|
||||
if payload.first_name is not None:
|
||||
user.first_name = payload.first_name
|
||||
if payload.last_name is not None:
|
||||
user.last_name = payload.last_name
|
||||
if payload.password:
|
||||
user.set_password(payload.password)
|
||||
|
||||
user.save()
|
||||
return user
|
||||
|
||||
|
||||
@api.delete("/auth/me", response=SuccessResponse, auth=auth)
|
||||
def delete_current_user(request):
|
||||
user = request.auth
|
||||
user.delete()
|
||||
return {"success": True}
|
||||
|
||||
|
||||
@api.post("/auth/refresh", response=RefreshOut)
|
||||
def refresh_token_view(request, payload: RefreshIn):
|
||||
|
||||
Reference in new issue
Block a user