Private
Public Access
1
0

Merge branch 'release/v8.64'

This commit is contained in:
Sander Roosendaal
2018-12-07 12:22:13 +01:00
5 changed files with 22 additions and 2 deletions
+11
View File
@@ -1764,6 +1764,9 @@ class PlannedSession(models.Model):
return stri return stri
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
if self.sessionvalue <= 0:
self.sessionvalue = 1
# sort units # sort units
if self.sessionmode == 'distance': if self.sessionmode == 'distance':
if self.sessionunit not in ['m','km']: if self.sessionunit not in ['m','km']:
@@ -2005,6 +2008,14 @@ class IndoorVirtualRaceForm(ModelForm):
cd = self.cleaned_data cd = self.cleaned_data
timezone_str = cd['timezone'] timezone_str = cd['timezone']
value = cd['sessionvalue']
if value <= 0:
raise forms.ValidationError('The Value must be a positive, non-zero value')
unit = cd['sessionunit']
if unit == 'm' and value < 100:
raise forms.ValidationError('Minimum distance is 100m')
start_time = cd['start_time'] start_time = cd['start_time']
if start_time is None: if start_time is None:
raise forms.ValidationError( raise forms.ValidationError(
+4 -1
View File
@@ -327,7 +327,10 @@ def is_session_complete_ws(ws,ps):
if not completiondate and score>=cratiomin*value: if not completiondate and score>=cratiomin*value:
completiondate = w.date completiondate = w.date
try:
ratio = score/float(value) ratio = score/float(value)
except ZeroDivisionError:
ratio = 0
verdict = 'better than nothing' verdict = 'better than nothing'
@@ -581,7 +584,7 @@ def get_sessions(r,startdate=date.today(),
startdate__lte=enddate, startdate__lte=enddate,
enddate__gte=startdate, enddate__gte=startdate,
).order_by("preferreddate","startdate","enddate").exclude( ).order_by("preferreddate","startdate","enddate").exclude(
sessiontype='race') sessiontype='race').exclude(sessiontype='indoorrace')
return sps return sps
+2
View File
@@ -128,6 +128,8 @@ data-text="@rowsandall #rowingdata Participate in Indoor Rowing virtual race '{{
</table> </table>
</p> </p>
</div> </div>
</li>
<li class="grid_2">
<div id="registerbuttons"> <div id="registerbuttons">
{% if request.user.is_anonymous %} {% if request.user.is_anonymous %}
<p> <p>
+3
View File
@@ -15584,6 +15584,9 @@ def plannedsession_edit_view(request,id=0,userid=0):
if ps.manager != request.user: if ps.manager != request.user:
raise PermissionDenied("You are not allowed to edit this planned session") raise PermissionDenied("You are not allowed to edit this planned session")
if ps.sessiontype in ['race','indoorrace']:
raise PermissionDenied("You are not allowed to edit this planned session because it is a race")
if ps.team.all() or len(ps.rower.all())>1: if ps.team.all() or len(ps.rower.all())>1:
url = reverse(plannedsession_teamedit_view, url = reverse(plannedsession_teamedit_view,
kwargs={ kwargs={
+1
View File
@@ -306,6 +306,7 @@ RQ_QUEUES = {
#SESSION_ENGINE = "django.contrib.sessions.backends.cached_db" #SESSION_ENGINE = "django.contrib.sessions.backends.cached_db"
SESSION_ENGINE = "django.contrib.sessions.backends.cache" SESSION_ENGINE = "django.contrib.sessions.backends.cache"
SESSION_SAVE_EVERY_REQUEST = True SESSION_SAVE_EVERY_REQUEST = True
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
# admin stuff for error reporting # admin stuff for error reporting
SERVER_EMAIL='admin@rowsandall.com' SERVER_EMAIL='admin@rowsandall.com'