add file upload to planned session
This commit is contained in:
@@ -2275,8 +2275,8 @@ class PlannedSession(models.Model):
|
|||||||
|
|
||||||
is_template = models.BooleanField(default=False)
|
is_template = models.BooleanField(default=False)
|
||||||
|
|
||||||
fitfile = models.CharField(default=None,max_length=150,blank=True,null=True)
|
fitfile = models.FileField(blank=True,null=True)
|
||||||
json_string = models.TextField(max_length=1000,default=None,blank=True,null=True)
|
json_string = models.TextField(max_length=10000,default=None,blank=True,null=True)
|
||||||
interval_string = models.TextField(max_length=1000,default=None,blank=True,null=True,
|
interval_string = models.TextField(max_length=1000,default=None,blank=True,null=True,
|
||||||
verbose_name='Interval String (optional)')
|
verbose_name='Interval String (optional)')
|
||||||
|
|
||||||
@@ -2498,7 +2498,8 @@ class PlannedSessionForm(ModelForm):
|
|||||||
'sessionunit',
|
'sessionunit',
|
||||||
'course',
|
'course',
|
||||||
'comment',
|
'comment',
|
||||||
'interval_string'
|
'interval_string',
|
||||||
|
'fitfile',
|
||||||
]
|
]
|
||||||
|
|
||||||
dateTimeOptions = {
|
dateTimeOptions = {
|
||||||
|
|||||||
@@ -426,7 +426,7 @@ def plannedsession_create_view(request,
|
|||||||
|
|
||||||
|
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
sessioncreateform = PlannedSessionForm(request.POST)
|
sessioncreateform = PlannedSessionForm(request.POST, request.FILES)
|
||||||
if sessioncreateform.is_valid():
|
if sessioncreateform.is_valid():
|
||||||
cd = sessioncreateform.cleaned_data
|
cd = sessioncreateform.cleaned_data
|
||||||
startdate = cd['startdate']
|
startdate = cd['startdate']
|
||||||
@@ -444,6 +444,7 @@ def plannedsession_create_view(request,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if sessionunit == 'min':
|
if sessionunit == 'min':
|
||||||
sessionmode = 'time'
|
sessionmode = 'time'
|
||||||
elif sessionunit in ['km','m']:
|
elif sessionunit in ['km','m']:
|
||||||
@@ -476,6 +477,16 @@ def plannedsession_create_view(request,
|
|||||||
ps.comment += '\n'+txt
|
ps.comment += '\n'+txt
|
||||||
ps.save()
|
ps.save()
|
||||||
|
|
||||||
|
if sessioncreateform.cleaned_data['fitfile']:
|
||||||
|
f = sessioncreateform.cleaned_data['fitfile']
|
||||||
|
filename, path_and_filename = handle_uploaded_file(f)
|
||||||
|
ps.fitfile.name = filename
|
||||||
|
structured_workout = FitWorkoutSteps(path_and_filename)
|
||||||
|
dct = structured_workout.get_dict()
|
||||||
|
ps.comment += '\n'+structured_workout.get_description()
|
||||||
|
ps.json_string = json.dumps(dct)
|
||||||
|
ps.save()
|
||||||
|
|
||||||
add_rower_session(r,ps)
|
add_rower_session(r,ps)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user