better protection of private workouts
This commit is contained in:
@@ -247,19 +247,18 @@ def interactive_activitychart(workouts,startdate,enddate,stack='type'):
|
|||||||
durations = []
|
durations = []
|
||||||
|
|
||||||
for w in workouts:
|
for w in workouts:
|
||||||
if w.privacy == 'visible':
|
dd = w.date.strftime('%m/%d')
|
||||||
dd = w.date.strftime('%m/%d')
|
dd2 = w.date.strftime('%Y/%m/%d')
|
||||||
dd2 = w.date.strftime('%Y/%m/%d')
|
du = w.duration.hour*60+w.duration.minute
|
||||||
du = w.duration.hour*60+w.duration.minute
|
dates.append(dd)
|
||||||
dates.append(dd)
|
dates_sorting.append(dd2)
|
||||||
dates_sorting.append(dd2)
|
durations.append(du)
|
||||||
durations.append(du)
|
|
||||||
|
types.append(w.workouttype)
|
||||||
types.append(w.workouttype)
|
try:
|
||||||
try:
|
rowers.append(w.user.user.first_name[0]+w.user.user.last_name[0])
|
||||||
rowers.append(w.user.user.first_name[0]+w.user.user.last_name[0])
|
except IndexError:
|
||||||
except IndexError:
|
rowers.append(str(w.user))
|
||||||
rowers.append(str(w.user))
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
d = utc.localize(startdate)
|
d = utc.localize(startdate)
|
||||||
|
|||||||
@@ -837,7 +837,7 @@ def checkworkoutuser(user,workout):
|
|||||||
return True
|
return True
|
||||||
elif teams:
|
elif teams:
|
||||||
for team in teams:
|
for team in teams:
|
||||||
if user == team.manager:
|
if user == team.manager and workout.privacy == 'visible':
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
return False
|
return False
|
||||||
|
|||||||
@@ -6692,29 +6692,52 @@ def workouts_view(request,message='',successmessage='',
|
|||||||
raise Http404("Team doesn't exist")
|
raise Http404("Team doesn't exist")
|
||||||
|
|
||||||
if theteam.viewing == 'allmembers' or theteam.manager == request.user:
|
if theteam.viewing == 'allmembers' or theteam.manager == request.user:
|
||||||
workouts = Workout.objects.filter(team=theteam,
|
workouts = Workout.objects.filter(
|
||||||
startdatetime__gte=startdate,
|
team=theteam,
|
||||||
startdatetime__lte=enddate).order_by("-date","-starttime")
|
startdatetime__gte=startdate,
|
||||||
g_workouts = Workout.objects.filter(team=theteam,
|
startdatetime__lte=enddate,
|
||||||
startdatetime__gte=activity_startdate,
|
privacy='visible').order_by("-date","-starttime")
|
||||||
startdatetime__lte=activity_enddate).order_by("-date", "-starttime")
|
g_workouts = Workout.objects.filter(
|
||||||
|
team=theteam,
|
||||||
|
startdatetime__gte=activity_startdate,
|
||||||
|
startdatetime__lte=activity_enddate,
|
||||||
|
privacy='visible').order_by("-date", "-starttime")
|
||||||
elif theteam.viewing == 'coachonly':
|
elif theteam.viewing == 'coachonly':
|
||||||
workouts = Workout.objects.filter(team=theteam,user=r,
|
workouts = Workout.objects.filter(
|
||||||
startdatetime__gte=startdate,
|
team=theteam,user=r,
|
||||||
startdatetime__lte=enddate).order_by("-startdatetime")
|
startdatetime__gte=startdate,
|
||||||
g_workouts = Workout.objects.filter(team=theteam,user=r,
|
startdatetime__lte=enddate,
|
||||||
startdatetime__gte=activity_startdate,
|
privacy='visible').order_by("-startdatetime")
|
||||||
enddatetime__lte=activity_enddate).order_by("-startdatetime")
|
g_workouts = Workout.objects.filter(
|
||||||
|
team=theteam,user=r,
|
||||||
|
startdatetime__gte=activity_startdate,
|
||||||
|
enddatetime__lte=activity_enddate,
|
||||||
|
privacy='visible').order_by("-startdatetime")
|
||||||
|
|
||||||
|
|
||||||
else:
|
elif request.user != r.user:
|
||||||
|
|
||||||
theteam = None
|
theteam = None
|
||||||
workouts = Workout.objects.filter(user=r,
|
workouts = Workout.objects.filter(
|
||||||
startdatetime__gte=startdate,
|
user=r,
|
||||||
startdatetime__lte=enddate).order_by("-date", "-starttime")
|
startdatetime__gte=startdate,
|
||||||
g_workouts = Workout.objects.filter(user=r,
|
startdatetime__lte=enddate,
|
||||||
startdatetime__gte=activity_startdate,
|
privacy='visible').order_by("-date", "-starttime")
|
||||||
startdatetime__lte=activity_enddate).order_by("-startdatetime")
|
g_workouts = Workout.objects.filter(
|
||||||
|
user=r,
|
||||||
|
startdatetime__gte=activity_startdate,
|
||||||
|
startdatetime__lte=activity_enddate,
|
||||||
|
privacy='visible').order_by("-startdatetime")
|
||||||
|
else:
|
||||||
|
theteam = None
|
||||||
|
workouts = Workout.objects.filter(
|
||||||
|
user=r,
|
||||||
|
startdatetime__gte=startdate,
|
||||||
|
startdatetime__lte=enddate).order_by("-date", "-starttime")
|
||||||
|
g_workouts = Workout.objects.filter(
|
||||||
|
user=r,
|
||||||
|
startdatetime__gte=activity_startdate,
|
||||||
|
startdatetime__lte=activity_enddate).order_by("-startdatetime")
|
||||||
|
|
||||||
if rankingonly:
|
if rankingonly:
|
||||||
workouts = [w for w in workouts if w.rankingpiece]
|
workouts = [w for w in workouts if w.rankingpiece]
|
||||||
|
|||||||
Reference in New Issue
Block a user