Private
Public Access
1
0

timezone selector in workout edit form

This commit is contained in:
Sander Roosendaal
2018-07-01 17:21:18 +02:00
parent 200ff3c43f
commit 4214a4fcfc
2 changed files with 16 additions and 4 deletions

View File

@@ -1810,6 +1810,11 @@ class WorkoutForm(ModelForm):
self.fields['private'] = forms.BooleanField(initial=False,
required=False,
label='Private')
self.fields['timezone'] = forms.ChoiceField(
choices = [(x,x) for x in pytz.common_timezones]
)
if 'instance' in kwargs:
if kwargs['instance'].privacy == 'visible':
self.fields['private'].initial = False

View File

@@ -6,6 +6,7 @@ import zipfile
import bleach
import arrow
import pytz
from pytz import UnknownTimeZoneError
import operator
import warnings
import urllib
@@ -9333,17 +9334,23 @@ def workout_edit_view(request,id=0,message="",successmessage=""):
date,starttime
)
startdatetime = pytz.timezone(thetimezone).localize(
startdatetime
try:
startdatetime = pytz.timezone(thetimezone).localize(
startdatetime
)
except UnknownTimeZoneError:
pass
try:
# aware object can be in any timezone
out = startdatetime.astimezone(pytz.utc)
except (ValueError, TypeError):
startdatetime = timezone.make_aware(startdatetime)
startdatetime = startdatetime.astimezone(pytz.timezone(thetimezone))
try:
startdatetime = startdatetime.astimezone(pytz.timezone(thetimezone))
except UnknownTimeZoneError:
thetimezone = 'UTC'
# check if user is owner of this workout