mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-08-27 14:49:42 +00:00
44 lines
1.7 KiB
Python
44 lines
1.7 KiB
Python
"""
|
|
web_admin auth views file
|
|
"""
|
|
# django imports
|
|
from rest_framework.viewsets import GenericViewSet, mixins
|
|
from rest_framework.decorators import action
|
|
from django.contrib.auth import get_user_model
|
|
|
|
# local imports
|
|
from account.utils import custom_response
|
|
from base.constants import USER_TYPE
|
|
from base.messages import SUCCESS_CODE, ERROR_CODE
|
|
from web_admin.permission import AdminPermission
|
|
from web_admin.serializers.auth_serializer import AdminForgotPasswordSerializer, AdminVerifyOTPSerializer
|
|
|
|
USER = get_user_model()
|
|
|
|
|
|
class ForgetAndResetPasswordViewSet(GenericViewSet):
|
|
queryset = None
|
|
|
|
@action(methods=['post'], url_name='forgot-password', url_path='forgot-password',
|
|
detail=False, serializer_class=AdminForgotPasswordSerializer)
|
|
def admin_forgot_password(self, request):
|
|
serializer = self.serializer_class(data=request.data)
|
|
serializer.is_valid(raise_exception=True)
|
|
serializer.save()
|
|
return custom_response(SUCCESS_CODE['3015'])
|
|
|
|
@action(methods=['post'], url_name='verify-otp', url_path='verify-otp',
|
|
detail=False, serializer_class=AdminVerifyOTPSerializer)
|
|
def admin_verify_otp(self, request):
|
|
serializer = self.serializer_class(data=request.data)
|
|
serializer.is_valid(raise_exception=True)
|
|
return custom_response(SUCCESS_CODE['3011'])
|
|
|
|
@action(methods=['post'], url_name='resend-otp', url_path='resend-otp',
|
|
detail=False, serializer_class=AdminForgotPasswordSerializer)
|
|
def admin_resend_otp(self, request):
|
|
serializer = self.serializer_class(data=request.data)
|
|
serializer.is_valid(raise_exception=True)
|
|
serializer.save()
|
|
return custom_response(SUCCESS_CODE['3015'])
|