def authenticate_user(request):
    """
    This function will validate the user and on successful response it will generate the JWT token
    :param request: request django object
    :return: json response
    """

    obj = None

    try:
        if request.method == POST_REQUEST:
            request_payload = _RequestValidation().validate_request(
                request, [USEREMAIL_KEY, USERPASSWORD_KEY])
            obj = UserAuthentication(request_payload)
            return obj.handle_login()

        log_debug(METHOD_NOT_ALLOWED)
        return JsonResponse({MESSAGE_KEY: METHOD_NOT_ALLOWED},
                            status=HTTP_405_METHOD_NOT_ALLOWED)

    except Exception as e:
        return error_instance(e)

    finally:
        if obj:
            del obj
def resetpassword_user(request, userid):
    """
    This function will reset the password for the existing user
    :param userid:
    :param request: request django object
    :return: json object
    """

    obj = None

    try:
        if request.method == PUT_REQUEST:

            loggedin_user_details = _TokenValidation.validate_token(request)

            if loggedin_user_details:
                request_payload = _RequestValidation().validate_request(
                    request, [USERNAME_KEY, USERPASSWORD_KEY])
                obj = UserPasswordReset(loggedin_user_details, request_payload)
                return obj.reset_user_password()

        log_debug(METHOD_NOT_ALLOWED)
        return JsonResponse({MESSAGE_KEY: METHOD_NOT_ALLOWED},
                            status=HTTP_405_METHOD_NOT_ALLOWED)
    except jwt.ExpiredSignatureError:
        token = request.META[HTTP_AUTHORIZATION_TOKEN].split(" ")[1]
        return JsonResponse({MESSAGE_KEY: "Token Expired"},
                            status=HTTP_401_UNAUTHORIZED)
    except Exception as e:
        return error_instance(e)

    finally:
        if obj:
            del obj
Exemple #3
0
def get_lbt_update_external_targets(request):
    """
    This function will update the existing user
    :param request: request django object
    :return: jsonobject
    """

    obj = query_params = None

    try:

        query_params = {
            EQUIPMENT: request.GET[EQUIPMENT],
            TAG_NAME_REQUEST: request.GET[TAG_NAME_REQUEST]
        }

    except:
        pass

    try:
        if request.method == PUT_REQUEST:

            loggedin_external_details = _TokenValidation.validate_token(
                request)

            r_name = loggedin_external_details['role']
            names = ['superadmin', 'admin']
            if r_name in names:
                if loggedin_external_details:

                    request_payload = _RequestValidation().validate_request(
                        request, [COMMENT_NAME])

                    obj = lbt_update_external_targets(query_params,
                                                      request_payload)

                    return obj.update_external_targets()
            else:
                return JsonResponse({MESSAGE_KEY: "Bad request"},
                                    status=HTTP_400_BAD_REQUEST)
        log_debug(METHOD_NOT_ALLOWED)
        return JsonResponse({MESSAGE_KEY: METHOD_NOT_ALLOWED},
                            status=HTTP_405_METHOD_NOT_ALLOWED)
    except jwt.ExpiredSignatureError:
        token = request.META[HTTP_AUTHORIZATION_TOKEN].split(" ")[1]
        return JsonResponse({MESSAGE_KEY: "Token Expired"},
                            status=HTTP_401_UNAUTHORIZED)

    except Exception as e:
        return error_instance(e)

    finally:
        if obj:
            del obj
Exemple #4
0
def create_user(request):
    """
    This function will crete a new user
    :param request: request django object
    :return: json object
    """

    obj = None

    try:
        if request.method == POST_REQUEST:
            jwt_value = _TokenValidation().validate_token(request)

            loggedin_user_details = _TokenValidation.validate_token(request)
            r_name = loggedin_user_details['role']
            names = ['superadmin', 'admin']
            if r_name in names:
                if loggedin_user_details:
                    request_payload = _RequestValidation().validate_request(
                        request, [
                            USERFIRSTNAME_KEY, USERMIDDLENAME_KEY,
                            USERLASTNAME_KEY, USEREMAIL_KEY, USERPASSWORD_KEY,
                            GENDER_KEY, AGE_KEY, PHONE_KEY, ADDRESS_KEY,
                            STATUS_KEY, ROLE_ID
                        ])
                    if jwt_value:
                        obj = CreateUser(loggedin_user_details,
                                         request_payload)
                        return obj.add_user()
                    else:
                        return JsonResponse({MESSAGE_KEY: "FORBIDDEN ERROR"},
                                            status=HTTP_403_FORBIDDEN)
            else:
                return JsonResponse({MESSAGE_KEY: "Bad request"},
                                    status=HTTP_400_BAD_REQUEST)

        log_debug(METHOD_NOT_ALLOWED)
        return JsonResponse({MESSAGE_KEY: METHOD_NOT_ALLOWED},
                            status=HTTP_405_METHOD_NOT_ALLOWED)
    except jwt.ExpiredSignatureError:
        token = request.META[HTTP_AUTHORIZATION_TOKEN].split(" ")[1]
        return JsonResponse({MESSAGE_KEY: "Token Expired"},
                            status=HTTP_401_UNAUTHORIZED)
    except Exception as e:
        return error_instance(e)

    finally:
        if obj:
            del obj
def delete_user(request):
    """
    This function will delete the existing user
    :param request: request django object
    :param username : username that need to be deleted
    :return: json object
    """
    obj = None

    try:
        if request.method == DELETE_REQUEST:
            # jwt_value = _TokenValidation().validate_token(request)
            loggedin_user_details = _TokenValidation.validate_token(request)
            r_name = loggedin_user_details['role']
            names = ['superadmin', 'admin']
            if r_name in names:
                if loggedin_user_details:
                    request_payload = _RequestValidation().validate_request(
                        request, [USEREMAIL_KEY])
                    obj = DeleteUser(loggedin_user_details, request_payload)
                    return obj.delete_user()
            else:
                return JsonResponse({MESSAGE_KEY: "Bad request"},
                                    status=HTTP_400_BAD_REQUEST)

        log_debug(METHOD_NOT_ALLOWED)
        return JsonResponse({MESSAGE_KEY: METHOD_NOT_ALLOWED},
                            status=HTTP_405_METHOD_NOT_ALLOWED)
    except jwt.ExpiredSignatureError:
        token = request.META[HTTP_AUTHORIZATION_TOKEN].split(" ")[1]
        return JsonResponse({MESSAGE_KEY: "Token Expired"},
                            status=HTTP_401_UNAUTHORIZED)
    except Exception as e:
        return error_instance(e)

    finally:
        if obj:
            del obj