Exemple #1
0
def CreateTarget(current_user, user_type, user_id):

    if current_user != user_id:

        access_dao = AccessDao()

        if not access_dao.CheckCoachTargetsAccess(current_user, user_id):
            return ResponseHelper.ReturnBadRequestResponse()

    if not request.data:
        return ResponseHelper.ReturnBadRequestResponse()

    else:
        request_data = json.loads(request.data)

        target = Target(
            None,  # For Id that is auto generated by a trigger
            user_id,  # Ensure log is created for the current user,
            request_data[str(TargetsTable.CONTENT)],
            request_data[str(TargetsTable.STATUS)],
            request_data[str(TargetsTable.WEEK)],
            request_data[str(TargetsTable.YEAR)])

        target_dao = TargetDao()

        if target_dao.CreateTarget(target):

            return ResponseHelper.ReturnCreatedResponse("Target Created")

        else:

            return ResponseHelper.ReturnConflictResponse(
                "Unable to Create Target!")
Exemple #2
0
def CheckCoachTargetAccess(current_user, user_type, athlete_id):

    if not athlete_id:
        return ResponseHelper.ReturnBadRequestResponse()

    if user_type != RequestConstants.USER_TYPE_COA:
        return ResponseHelper.ReturnBadRequestResponse()

    access_dao = AccessDao()

    if access_dao.CheckCoachTargetsAccess(current_user, athlete_id):
        return ResponseHelper.ReturnOkResponse("Ok")

    else:
        return ResponseHelper.ReturnUnauthorizedResponse(
            "Needs to request access!")
Exemple #3
0
def DeleteTarget(current_user, user_type, user_id, target_id):

    if current_user != user_id:

        access_dao = AccessDao()

        if not access_dao.CheckCoachTargetsAccess(current_user, user_id):
            return ResponseHelper.ReturnBadRequestResponse()

    target_dao = TargetDao()

    if target_dao.DeleteTarget(user_id, target_id):
        return ResponseHelper.ReturnOkResponse("Target Deleted")

    else:
        return ResponseHelper.ReturnConflictResponse(
            "Unable to Delete Target!")
Exemple #4
0
def GetTargets(current_user, user_type, user_id, week_num, year_num):

    if current_user != user_id:

        access_dao = AccessDao()

        if not access_dao.CheckCoachTargetsAccess(current_user, user_id):
            return ResponseHelper.ReturnBadRequestResponse()

    if not week_num:
        return ResponseHelper.ReturnBadRequestResponse()

    target_dao = TargetDao()
    targets = target_dao.GetTargetsByWeek(user_id, week_num, year_num)

    if targets:
        return ResponseHelper.ReturnOkDataResponse("Request OK",
                                                   {"Targets": targets})

    else:
        return ResponseHelper.ReturnNotFoundResponse("No Targets Found!")
Exemple #5
0
def UpdateTarget(current_user, user_type, user_id, target_id):

    if current_user != user_id:

        access_dao = AccessDao()

        if not access_dao.CheckCoachTargetsAccess(current_user, user_id):
            return ResponseHelper.ReturnBadRequestResponse()

    if not request.data:
        return ResponseHelper.ReturnBadRequestResponse()

    else:
        request_data = json.loads(request.data)

        update_data = UpdateData(
            request_data[RequestConstants.UPDATE_REQUEST_MEMBER_KEYS],
            request_data[RequestConstants.UPDATE_REQUEST_MEMBER_VALUES],
            [TargetsTable.ID, TargetsTable.ATHLETE_ID], [target_id, user_id])

        if TargetsTable.ID in update_data.memberKeys:

            return ResponseHelper.ReturnBadRequestResponse()

        if TargetsTable.ATHLETE_ID in update_data.memberKeys:

            return ResponseHelper.ReturnBadRequestResponse()

        target_dao = TargetDao()

        if target_dao.UpdateTarget(update_data):
            return ResponseHelper.ReturnOkResponse("Target Updated")

        else:
            return ResponseHelper.ReturnConflictResponse(
                "Unable to Update Target!")