Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class VerifyPhoneNumber(APIView):
- permission_classes = (IsFlouciUserAuthenticated,)
- def post(self, request):
- serializer = VerifyPhoneNumberSerializer(data=request.data)
- if not serializer.is_valid():
- logger.warning("Missing required parameter error details: %s", json.dumps(serializer.errors))
- return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
- phone_number = serializer.validated_data.get('phone_number')
- otp = serializer.validated_data.get('code')
- try:
- if check_verification_code("verification_code", phone_number, otp):
- return Response(data={'success': True}, status=status.HTTP_200_OK)
- else:
- return Response(data={'success': False, 'message': 'Invalid/Wring Code, please try again'},
- status=status.HTTP_406_NOT_ACCEPTABLE)
- # redis_instance = RedisSingleton().get_instance()
- # if redis_instance:
- # code = redis_instance.get(serializer.validated_data.get('phone_number') + ":verification_code")
- # print("verification_code = ", code)
- # if code is None:
- # response = {'success': False, 'message': 'Invalid Code, please try again'}
- # return Response(data=response, status=status.HTTP_406_NOT_ACCEPTABLE)
- # code = str(code, 'utf-8')
- # if code != serializer.validated_data.get('code'):
- # response = {'success': False, 'message': 'Wrong Code, please try again'}
- # return Response(data=response, status=status.HTTP_406_NOT_ACCEPTABLE)
- # else:
- # indiv = request.user.individual
- # serializer.update(indiv, serializer.validated_data)
- # return Response(data={'success': True}, status=status.HTTP_200_OK)
- # else:
- # raise Exception("Couldn't create a redis instance")
- except Exception as e:
- logger.error('Sever Error : An error has occurred while verifying a phone number error details: %s', e)
- return Response(data={"success": False,
- 'message': 'Sever Error : An error has occurred while verifying a phone number'},
- status=status.HTTP_500_INTERNAL_SERVER_ERROR)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement