going through the tests
This commit is contained in:
@@ -27,11 +27,6 @@ defaultoptions = {
|
||||
}
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user,"
|
||||
" please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@permission_required('rower.is_coach',
|
||||
fn=get_user_by_userid,
|
||||
raise_exception=True)
|
||||
@@ -897,11 +892,6 @@ def statsdata(workouts, options):
|
||||
|
||||
|
||||
def comparisondata(workouts, options):
|
||||
#try:
|
||||
# workouts = workouts.exclude(workoutsource='strava')
|
||||
#except AttributeError: # pragma: no cover
|
||||
# workouts = [w for w in workouts if w.workoutsource != 'strava']
|
||||
|
||||
includereststrokes = options['includereststrokes']
|
||||
xparam = options['xaxis']
|
||||
yparam1 = options['yaxis1']
|
||||
@@ -1013,10 +1003,6 @@ def boxplotdata(workouts, options):
|
||||
return(script, div)
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user, please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def analysis_view_data(request, userid=0):
|
||||
is_ajax = request_is_ajax(request)
|
||||
@@ -1087,17 +1073,10 @@ def analysis_view_data(request, userid=0):
|
||||
})
|
||||
|
||||
|
||||
def planrequired_view(request):
|
||||
messages.info(
|
||||
request, "This functionality requires Coach or Self-Coach membership")
|
||||
|
||||
return HttpResponseRedirect(reverse('paidplans_view'))
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user, please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@login_required()
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def create_marker_workouts_view(request, userid=0,
|
||||
startdate=timezone.now()-timezone.timedelta(days=42),
|
||||
enddate=timezone.now()):
|
||||
@@ -1119,10 +1098,8 @@ def create_marker_workouts_view(request, userid=0,
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user, please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@login_required()
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def goldmedalscores_view(request, userid=0,
|
||||
startdate=timezone.now()-timezone.timedelta(days=365),
|
||||
enddate=timezone.now()):
|
||||
@@ -1184,10 +1161,6 @@ def goldmedalscores_view(request, userid=0,
|
||||
})
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user, please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def trainingzones_view(request, userid=0):
|
||||
r = getrequestrower(request, userid=userid)
|
||||
@@ -1255,6 +1228,7 @@ def trainingzones_view(request, userid=0):
|
||||
|
||||
|
||||
@login_required()
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def trainingzones_view_data(request, userid=0):
|
||||
r = getrequestrower(request, userid=userid)
|
||||
|
||||
@@ -1296,10 +1270,6 @@ def trainingzones_view_data(request, userid=0):
|
||||
})
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user, please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def performancemanager_view(request, userid=0, mode='rower',
|
||||
startdate=timezone.now()-timezone.timedelta(days=365),
|
||||
@@ -2060,10 +2030,6 @@ class AlertDelete(DeleteView):
|
||||
return obj
|
||||
|
||||
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans",
|
||||
message="This functionality requires a Pro plan or higher."
|
||||
" If you are already a Pro user, please log in to access this functionality",
|
||||
redirect_field_name=None)
|
||||
@permission_required('rower.is_coach', fn=get_user_by_userid, raise_exception=True)
|
||||
def history_view(request, userid=0):
|
||||
r = getrequestrower(request, userid=userid)
|
||||
|
||||
@@ -101,7 +101,6 @@ def javascript_log(request):
|
||||
return JSONResponse(status=200, data = {'status': 'true', 'message': message})
|
||||
|
||||
@login_required()
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
def strokedataform(request, id=0):
|
||||
|
||||
id = encoder.decode_hex(id)
|
||||
@@ -265,7 +264,6 @@ def api_get_dataframe(startdatetime, df):
|
||||
|
||||
|
||||
@login_required()
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
def strokedataform_v2(request, id=0):
|
||||
|
||||
id = encoder.decode_hex(id)
|
||||
@@ -496,7 +494,6 @@ def strokedata_rowingdata(request):
|
||||
|
||||
@csrf_exempt
|
||||
@api_view(["POST"])
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
@permission_classes([IsAuthenticated])
|
||||
def strokedata_rowingdata_apikey(request):
|
||||
"""
|
||||
@@ -547,7 +544,6 @@ def strokedata_rowingdata_apikey(request):
|
||||
|
||||
@csrf_exempt
|
||||
@api_view(["POST"])
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
@permission_classes([IsAuthenticated])
|
||||
@parser_classes([FITParser])
|
||||
def strokedata_fit(request):
|
||||
@@ -647,7 +643,6 @@ def strokedata_fit(request):
|
||||
@csrf_exempt
|
||||
#@login_required()
|
||||
@api_view(["POST"])
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
@permission_classes([IsAuthenticated])
|
||||
@parser_classes([XMLParser])
|
||||
def strokedata_tcx(request):
|
||||
@@ -768,7 +763,6 @@ def strokedata_tcx(request):
|
||||
@csrf_exempt
|
||||
@api_view(["POST"])
|
||||
#@login_required()
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
@permission_classes([IsAuthenticated])
|
||||
def strokedatajson_v3(request):
|
||||
"""
|
||||
@@ -913,7 +907,6 @@ def strokedatajson_v3(request):
|
||||
# Return the GET stroke data according to the API definition
|
||||
@csrf_exempt
|
||||
#@login_required()
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
@api_view(["GET", "POST"])
|
||||
@permission_classes([IsAuthenticated])
|
||||
def strokedatajson_v2(request, id):
|
||||
@@ -1073,7 +1066,6 @@ def strokedatajson_v2(request, id):
|
||||
|
||||
@csrf_exempt
|
||||
#@login_required()
|
||||
@permission_required('rower.is_not_freecoach', fn=get_user_by_userid, raise_exception=True)
|
||||
@api_view(['GET', 'POST'])
|
||||
@permission_classes([IsAuthenticated])
|
||||
def strokedatajson(request, id=0):
|
||||
|
||||
@@ -980,7 +980,7 @@ def rower_register_view(request):
|
||||
# User registration
|
||||
|
||||
|
||||
def freecoach_register_view(request): # pragma: no cover
|
||||
def coach_register_view(request): # pragma: no cover
|
||||
|
||||
nextpage = request.GET.get('next', '/rowers/me/teams/')
|
||||
if nextpage == '': # pragma: no cover
|
||||
|
||||
@@ -318,7 +318,7 @@ def plannedsession_multiclone_view(
|
||||
add_rower_session(rower, ps)
|
||||
for team in teams:
|
||||
add_team_session(team, ps)
|
||||
for rower in team.rower.all().exclude(rowerplan='freecoach'):
|
||||
for rower in team.rower.all():
|
||||
add_rower_session(rower, ps)
|
||||
|
||||
startdatestring = shiftstartdate.strftime('%Y-%m-%d')
|
||||
@@ -974,7 +974,7 @@ def plannedsession_teamcreate_view(request,
|
||||
for team in teams:
|
||||
add_team_session(team, ps)
|
||||
rs = Rower.objects.filter(
|
||||
team__in=[team]).exclude(rowerplan='freecoach')
|
||||
team__in=[team])
|
||||
for r in rs:
|
||||
add_rower_session(r, ps)
|
||||
|
||||
@@ -1297,17 +1297,14 @@ def plannedsessions_coach_view(request,
|
||||
rteams = therower.team.filter(viewing='allmembers')
|
||||
sps = get_sessions(therower, startdate=startdate, enddate=enddate)
|
||||
|
||||
if therower.rowerplan != 'freecoach':
|
||||
rowers = [therower]
|
||||
else: # pragma: no cover
|
||||
rowers = []
|
||||
rowers = [therower]
|
||||
|
||||
for ps in sps:
|
||||
if is_coach(request.user) or is_coachtrial(request.user):
|
||||
rowers += ps.rower.all().exclude(rowerplan='freecoach')
|
||||
rowers += ps.rower.all()
|
||||
else: # pragma: no cover
|
||||
rowers += ps.rower.filter(
|
||||
team__in=rteams).exclude(rowerplan='freecoach')
|
||||
team__in=rteams)
|
||||
|
||||
rowers = list(set(rowers))
|
||||
|
||||
@@ -1861,7 +1858,7 @@ def plannedsession_clone_view(request, id=0, userid=0):
|
||||
add_rower_session(r, ps)
|
||||
for team in teams:
|
||||
add_team_session(team, ps)
|
||||
for rower in team.rower.all().exclude(rowerplan='freecoach'):
|
||||
for rower in team.rower.all():
|
||||
add_rower_session(rower, ps)
|
||||
|
||||
url = reverse(plannedsession_edit_view,
|
||||
|
||||
@@ -240,16 +240,6 @@ def rower_teams_view(request): # pragma: no cover
|
||||
user__in=invitedathletes).exclude(
|
||||
user=request.user
|
||||
).exclude(coachinggroups__in=[request.user.rower.mycoachgroup])
|
||||
elif request.user.rower.rowerplan == 'freecoach': # pragma: no cover
|
||||
potentialathletes = Rower.objects.filter(
|
||||
team__in=myteams).exclude(
|
||||
user__in=invitedathletes).exclude(
|
||||
user=request.user
|
||||
).exclude(
|
||||
coachinggroups__in=[request.user.rower.mycoachgroup]
|
||||
).exclude(
|
||||
rowerplan__in=['basic', 'freecoach']
|
||||
)
|
||||
else:
|
||||
potentialathletes = []
|
||||
|
||||
|
||||
@@ -2101,7 +2101,7 @@ def workouts_bulk_actions(request):
|
||||
teams = Team.objects.filter(manager=request.user)
|
||||
assignchoices.fields["rowers"].queryset = Rower.objects.filter(
|
||||
team__in=teams
|
||||
).distinct().order_by("user__last_name", "user__first_name").exclude(rowerplan='freecoach')
|
||||
).distinct().order_by("user__last_name", "user__first_name")
|
||||
assignchoices.fields["rowers"].initial = []
|
||||
form = WorkoutMultipleCompareForm()
|
||||
form.fields["workouts"].queryset = Workout.objects.filter(id__in=[w.id for w in workouts])
|
||||
@@ -5191,9 +5191,6 @@ def workout_upload_view(request,
|
||||
r = getrower(request.user)
|
||||
if r.imports_are_private:
|
||||
uploadoptions['makeprivate'] = True
|
||||
if r.rowerplan == 'freecoach': # pragma: no cover
|
||||
url = reverse('team_workout_upload_view')
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
breadcrumbs = [
|
||||
{
|
||||
@@ -5622,7 +5619,7 @@ def workout_upload_view(request,
|
||||
|
||||
|
||||
# This is the main view for processing uploaded files
|
||||
@user_passes_test(iscoachmember, login_url="/rowers/paidplans", redirect_field_name=None,
|
||||
@user_passes_test(ispromember, login_url="/rowers/paidplans", redirect_field_name=None,
|
||||
message="This functionality requires a Coach plan or higher")
|
||||
def team_workout_upload_view(request, userid=0, message="",
|
||||
successmessage="",
|
||||
@@ -5659,11 +5656,7 @@ def team_workout_upload_view(request, userid=0, message="",
|
||||
rowerform.fields.pop('email')
|
||||
rowers = Rower.objects.filter(
|
||||
coachinggroups__in=[r.mycoachgroup]
|
||||
).exclude(
|
||||
rowerplan='freecoach'
|
||||
).distinct()
|
||||
if r.rowerplan == 'freecoach': # pragma: no cover
|
||||
rowers = rowers.exclude(rowerplan='basic')
|
||||
|
||||
rowerform.fields['user'].queryset = User.objects.filter(
|
||||
rower__in=rowers).distinct()
|
||||
@@ -5803,11 +5796,7 @@ def team_workout_upload_view(request, userid=0, message="",
|
||||
|
||||
rowers = Rower.objects.filter(
|
||||
coachinggroups__in=[r.mycoachgroup]
|
||||
).exclude(
|
||||
rowerplan='freecoach'
|
||||
).distinct()
|
||||
if r.rowerplan == 'freecoach': # pragma: no cover
|
||||
rowers = rowers.exclude(rowerplan='basic')
|
||||
|
||||
rowerform.fields['user'].queryset = User.objects.filter(
|
||||
rower__in=rowers).distinct()
|
||||
|
||||
Reference in New Issue
Block a user