timezone selector in workout edit form
This commit is contained in:
@@ -1810,6 +1810,11 @@ class WorkoutForm(ModelForm):
|
|||||||
self.fields['private'] = forms.BooleanField(initial=False,
|
self.fields['private'] = forms.BooleanField(initial=False,
|
||||||
required=False,
|
required=False,
|
||||||
label='Private')
|
label='Private')
|
||||||
|
|
||||||
|
self.fields['timezone'] = forms.ChoiceField(
|
||||||
|
choices = [(x,x) for x in pytz.common_timezones]
|
||||||
|
)
|
||||||
|
|
||||||
if 'instance' in kwargs:
|
if 'instance' in kwargs:
|
||||||
if kwargs['instance'].privacy == 'visible':
|
if kwargs['instance'].privacy == 'visible':
|
||||||
self.fields['private'].initial = False
|
self.fields['private'].initial = False
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import zipfile
|
|||||||
import bleach
|
import bleach
|
||||||
import arrow
|
import arrow
|
||||||
import pytz
|
import pytz
|
||||||
|
from pytz import UnknownTimeZoneError
|
||||||
import operator
|
import operator
|
||||||
import warnings
|
import warnings
|
||||||
import urllib
|
import urllib
|
||||||
@@ -9333,17 +9334,23 @@ def workout_edit_view(request,id=0,message="",successmessage=""):
|
|||||||
date,starttime
|
date,starttime
|
||||||
)
|
)
|
||||||
|
|
||||||
startdatetime = pytz.timezone(thetimezone).localize(
|
try:
|
||||||
startdatetime
|
startdatetime = pytz.timezone(thetimezone).localize(
|
||||||
|
startdatetime
|
||||||
)
|
)
|
||||||
|
except UnknownTimeZoneError:
|
||||||
|
pass
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# aware object can be in any timezone
|
# aware object can be in any timezone
|
||||||
out = startdatetime.astimezone(pytz.utc)
|
out = startdatetime.astimezone(pytz.utc)
|
||||||
except (ValueError, TypeError):
|
except (ValueError, TypeError):
|
||||||
startdatetime = timezone.make_aware(startdatetime)
|
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
|
# check if user is owner of this workout
|
||||||
|
|||||||
Reference in New Issue
Block a user