Ejemplo n.º 1
0
 def post(self, request):
     email = get_value_or_404(request.data, 'email')
     password = get_value_or_404(request.data, 'password')
     try:
         context = utils.get_user_from_email(email=email, password=password)
         return Response(success_resp(data=context), status=status.HTTP_200_OK)
     except ValueError as ve:
         return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
     except Exception as e:
         return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)        
Ejemplo n.º 2
0
def post_file(request):
    bucket = get_value_or_404(request.data, 'bucket')
    file_name = get_value_or_404(request.data, 'file_name')
    try:
        file = models.File.store_public_file(bucket=bucket, file_name=file_name)
        context = {'file': file, 'message': 'success'}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 3
0
def get_chat(request, chat_id):
    try:
        chat = serializers.ChatSerializer(
            models.Chat.get_for_user(user=request.user, id=chat_id)).data
        context = {'chat': chat}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)),
                        status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)),
                        status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 4
0
def get_last_opened_info(request):
    try:
        start = datetime.create_datetime_from_iso(get_value_or_default(request.data, 'start', None), 'Asia/Kolkata')
        end = datetime.create_datetime_from_iso(get_value_or_default(request.data, 'end', None), 'Asia/Kolkata')

        count = analytics.get_last_opened_info(start=start, end=end)
        context = {"count": count}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 5
0
    def post(self, request):
        email = get_value_or_default(request.data, 'email', None)
        phone = get_value_or_default(request.data, 'phone', None)
        password = get_value_or_404(request.data, 'password')

        try:
            context = utils.auth_signin(email=email, phone=phone, password=password)
            return Response(success_resp(data=context), status=status.HTTP_200_OK)
        except ValueError as ve:
            return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
        except Exception as e:
            return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 6
0
    def post(self, request):
        phone = get_value_or_404(request.data, 'phone_number')
        otp = get_value_or_404(request.data, 'otp')

        try:
            context = utils.get_user_from_phone(phone=phone, phone_otp=otp)
            context['user'] = user_serializers.UserProfileDetailSerializer(context['user'].userprofile).data
            return Response(success_resp(data=context), status=status.HTTP_200_OK)
        except ValueError as ve:
            return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
        except Exception as e:
            return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 7
0
def reset_password(request):
    try:
        old_password = get_value_or_404(request.data, 'old_password')
        password1 = get_value_or_404(request.data, 'password1')
        password2 = get_value_or_404(request.data, 'password2')

        utils.reset_password(user=request.user, old_password=old_password, password1=password1, password2=password2)
        context = {'message': 'Password successfully changed'}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 8
0
def forgot_password(request):
    try:
        email_otp = get_value_or_default(request.data, 'email_otp', None)
        phone_otp = get_value_or_default(request.data, 'phone_otp', None)
        password1 = get_value_or_404(request.data, 'password1')
        password2 = get_value_or_404(request.data, 'password2')

        utils.forgot_password(user=request.user, password1=password1, password2=password2, email_otp=email_otp, phone_otp=phone_otp)
        context = {'message': 'Password successfully changed'}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 9
0
    def put(self, request, format=None):
        phone = get_value_or_404(request.data, 'phone_number')
        otp = get_value_or_404(request.data, 'otp')

        try:
            user =  user_models.UserProfile.create_with_phone(phone=phone, email=None, first_name=None, last_name=None, username=None, otp=otp).user
            token = jwt_utils.get_token_for_user(user)
            userprofile = user_serializers.UserProfileDetailSerializer(user.userprofile).data
            data = {'username': user.username, 'token': token, 'user_id': user.id, 'user': userprofile}
            return Response(success_resp(data=data), status=status.HTTP_200_OK)
        except ValueError as ve:
            return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
        except Exception as e:
            return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 10
0
def set_password(request):
    try:
        password1 = get_value_or_404(request.data, 'password1')
        password2 = get_value_or_404(request.data, 'password2')
        if password1 != password2:
            raise_error('ERR-AUTH-004')

        request.user.set_password(password1)
        request.user.save()
        context = {'message': 'Password successfully changed'}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 11
0
def get_old_message(request, chat_id):
    try:
        offset = get_value_or_404(request.GET, 'offset')
        data = models.Chat.get_old_messages_for_chat(user=request.user,
                                                     chat_id=chat_id,
                                                     offset=offset)
        messages = serializers.MessageSerializer(data['messages'],
                                                 many=True).data
        context = {'messages': messages}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)),
                        status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)),
                        status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 12
0
def registration(request):
    try:
        operation = get_value_or_404(request.data, 'operation')
        phone = get_value_or_404(request.data, 'phone')
        OTP = get_value_or_default(request.data, 'OTP', None)
        email = get_value_or_default(request.data, 'email', None)
        password = get_value_or_default(request.data, 'password', None)
        first_name = get_value_or_default(request.data, 'first_name', None)
        last_name = get_value_or_default(request.data, 'last_name', None)
        username = get_value_or_default(request.data, 'username', None)
        context = utils.registration(operation=operation, phone=phone, OTP=OTP, first_name=first_name, last_name=last_name, email=email, password=password)
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 13
0
def get_chat_list(request):
    try:
        offset = int(get_value_or_default(request.GET, 'offset', 0))
        data = models.Chat.get_chats(user=request.user, offset=offset)
        chats = serializers.ChatMiniSerializer(data['chats'],
                                               many=True,
                                               context={
                                                   'user': request.user
                                               }).data
        context = {'chats': chats, 'count': data['count']}
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)),
                        status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)),
                        status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 14
0
    def put(self, request, format=None):
        phone = get_value_or_404(request.data, 'phone_number')
        password1 = get_value_or_404(request.data, 'password1')
        password2 = get_value_or_404(request.data, 'password2')
        email = get_value_or_default(request.data, 'email', None)
        first_name = get_value_or_default(request.data, 'first_name', None)
        last_name = get_value_or_default(request.data, 'last_name', None)
        username = get_value_or_default(request.data, 'username', None)
        otp = get_value_or_default(request.data, 'otp')

        try:
            context = utils.create_user_from_phone(phone=phone, username=username,
                                                       email=email, first_name=first_name,
                                                last_name=last_name, password1=password1,
                                                password2=password2, otp=otp)
            return Response(success_resp(data=context), status=status.HTTP_200_OK)
        except ValueError as ve:
            return Response(error_resp(message=str(ve)), status=status.HTTP_400_BAD_REQUEST)
        except Exception as e:
            return Response(error_resp(message=str(e)), status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 15
0
def add_message(request, chat_id):
    try:
        message = get_value_or_404(request.data, 'message')
        reference_type = get_value_or_default(request.data, 'reference_type',
                                              None)
        reference_id = get_value_or_default(request.data, 'reference_id', None)
        data = models.Chat.add_message(chat_id=chat_id,
                                       from_user=request.user,
                                       message=message,
                                       reference_id=reference_id,
                                       reference_type=reference_type)
        message = serializers.MessageSerializer(data['message']).data
        print(message)
        context = {
            'message': message,
            'total_messages_count': data['message'].message_number
        }
        return Response(success_resp(data=context), status=status.HTTP_200_OK)
    except ValueError as ve:
        return Response(error_resp(message=str(ve)),
                        status=status.HTTP_400_BAD_REQUEST)
    except Exception as e:
        return Response(error_resp(message=str(e)),
                        status=status.HTTP_400_BAD_REQUEST)