better checks of import/export settings
This commit is contained in:
@@ -5,6 +5,34 @@
|
||||
{% block main %}
|
||||
<h1>Import and Export Settings for {{ rower.user.first_name }} {{ rower.user.last_name }}</h1>
|
||||
|
||||
<p>You are currently connected to:
|
||||
{% if r.c2token %}
|
||||
Concept2 Logbook,
|
||||
{% endif %}
|
||||
{% if r.sporttrackstoken %}
|
||||
SportTracks,
|
||||
{% endif %}
|
||||
{% if r.underarmourtoken %}
|
||||
Under Armour (MapMyFitness),
|
||||
{% endif %}
|
||||
{% if r.tptoken %}
|
||||
TrainingPeaks,
|
||||
{% endif %}
|
||||
{% if r.polartoken %}
|
||||
Polar,
|
||||
{% endif %}
|
||||
{% if r.garmintoken %}
|
||||
Garmin Connect,
|
||||
{% endif %}
|
||||
{% if r.stravatoken %}
|
||||
Strava,
|
||||
{% endif %}
|
||||
{% if r.runkeepertoken %}
|
||||
Runkeeper.
|
||||
{% endif %}
|
||||
Strava,
|
||||
</p>
|
||||
|
||||
{% if form.errors %}
|
||||
<p style="color: red;">
|
||||
Please correct the error{{ form.errors|pluralize }} below.
|
||||
|
||||
@@ -298,6 +298,17 @@ def rower_favoritecharts_view(request,userid=0):
|
||||
@login_required()
|
||||
@permission_required('rower.is_coach',fn=get_user_by_userid,raise_exception=True)
|
||||
def rower_exportsettings_view(request,userid=0):
|
||||
attrtokens = {
|
||||
'polar_auto_import':'polartoken',
|
||||
'c2_auto_export':'c2token',
|
||||
'c2_auto_import':'c2token',
|
||||
'mapmyfitness_auto_export':'underarmourtoken',
|
||||
'runkeeper_auto_export':'runkeepertoken',
|
||||
'sporttracks_auto_export':'sporttrackstoken',
|
||||
'strava_auto_export':'stravatoken',
|
||||
'strava_auto_import':'stravatoken',
|
||||
'trainingpeaks_auto_export':'tptoken',
|
||||
}
|
||||
r = getrequestrower(request,userid=userid)
|
||||
if request.method == 'POST':
|
||||
form = RowerExportForm(request.POST)
|
||||
@@ -305,7 +316,21 @@ def rower_exportsettings_view(request,userid=0):
|
||||
cd = form.cleaned_data
|
||||
|
||||
for attr, value in cd.items():
|
||||
setattr(r, attr, value)
|
||||
doset = True
|
||||
try:
|
||||
tokenname = attrtokens[attr]
|
||||
if getattr(r, tokenname) == '' or getattr(r, tokenname) == None:
|
||||
doset = False
|
||||
except KeyError:
|
||||
doset = True
|
||||
if not doset:
|
||||
before = getattr(r,attr)
|
||||
if before == value:
|
||||
doset = True
|
||||
if doset:
|
||||
setattr(r, attr, value)
|
||||
else:
|
||||
messages.error(request,'Could not set '+attr+'. You need to create the connection first.')
|
||||
|
||||
r.save()
|
||||
messages.info(request,'Settings saved')
|
||||
|
||||
Reference in New Issue
Block a user