diff --git a/rowers/tasks.py b/rowers/tasks.py
index 7886c1e3..a7bc701c 100644
--- a/rowers/tasks.py
+++ b/rowers/tasks.py
@@ -3377,6 +3377,16 @@ def handle_c2_async_workout(alldata, userid, c2token, c2id, delaysec, defaulttim
return workoutid
+@app.task
+def fetch_rojabo_session(id,alldata,userid,rowerid,debug=False, **kwargs):
+ try:
+ item = alldata[id]
+ except KeyError:
+ return 0
+
+
+ return 1
+
@app.task
def fetch_strava_workout(stravatoken, oauth_data, stravaid, csvfilename, userid, debug=False, **kwargs):
@@ -3390,7 +3400,7 @@ def fetch_strava_workout(stravatoken, oauth_data, stravaid, csvfilename, userid,
if response.status_code != 200: # pragma: no cover
tstamp = time.localtime()
timestamp = time.strftime('%b-%d-%Y_%H%M', tstamp)
- with open('strava_webhooks.log', 'a') as f:
+ with open('stravalog.log', 'a') as f:
f.write('\n')
f.write(timestamp)
f.write(' ')
diff --git a/rowers/templates/menu_plan.html b/rowers/templates/menu_plan.html
index da163066..4ff3f5bf 100644
--- a/rowers/templates/menu_plan.html
+++ b/rowers/templates/menu_plan.html
@@ -66,6 +66,11 @@
Add Session
+
+
+ Import from Rojabo
+
+
Plan Microcycle
diff --git a/rowers/templates/rojabo_list_import.html b/rowers/templates/rojabo_list_import.html
index b0a68882..50cd88e7 100644
--- a/rowers/templates/rojabo_list_import.html
+++ b/rowers/templates/rojabo_list_import.html
@@ -19,7 +19,9 @@
Import |
Session |
SPM |
+ Points |
Planned Date |
+ New |
@@ -34,7 +36,9 @@
{{ session|lookuplong:'name' }} |
{{ session|lookuplong:'spm' }} |
+ {{ session|lookuplong:'points' }} |
{{ session|lookuplong:'date' }} |
+ {{ session|lookuplong:'new' }} |
{% endfor %}
diff --git a/rowers/views/importviews.py b/rowers/views/importviews.py
index 0ca52ee3..35191735 100644
--- a/rowers/views/importviews.py
+++ b/rowers/views/importviews.py
@@ -1064,14 +1064,59 @@ def workout_rojaboimport_view(request, message="", userid=0):
sessions = []
r = getrower(request.user)
+
+ if request.method == "POST":
+ try:
+ tdict = dict(request.POST.lists())
+ ids = tdict['sessionid']
+ rojaboids = [int(id) for id in ids]
+ alldata = {}
+ for item in res.json():
+ alldata[item['training_session']['id']] = item['training_session']
+ for rojaboid in rojaboids:
+ try:
+ item = alldata[rojaboid]
+ name = item['workout']
+ spm = item['stroke']
+ points = item['points']
+ manager = userid
+ comment = 'ROJABO {name}, SPM: {spm}. Points: {points}'.format(
+ name = name,
+ points = points,
+ spm = spm,
+ )
+
+ preferreddate = datetime.datetime.strptime(item['training_date'],"%Y-%m-%d")
+ startdate = preferreddate
+ enddate = preferreddate
+ ps = PlannedSession(
+ name = item['workout'],
+ comment = comment,
+ startdate = startdate,
+ enddate = enddate,
+ preferreddate = preferreddate,
+ sessionsport = 'rower',
+ manager = request.user,
+ rojabo_id = rojaboid,
+ )
+ ps.save()
+ ps.rower.add(r)
+ ps.tags.add('ROJABO')
+ ps.save()
+ messages.info(request,'Saved planned session {id}'.format(id=ps.id))
+ except KeyError:
+ pass
+ except KeyError:
+ pass
+
rojabo_ids = [int(item['training_session']['id']) for item in res.json()]
knownrojaboids = uniqify([
ps.rojabo_id for ps in PlannedSession.objects.filter(manager=request.user)
])
+
for item in res.json():
- print(item['training_session'])
i = item['training_session']['id']
if i in knownrojaboids:
nnn = ''
@@ -1080,12 +1125,14 @@ def workout_rojaboimport_view(request, message="", userid=0):
n = item['training_session']['workout']
spm = item['training_session']['stroke']
d = item['training_session']['training_date']
+ p = item['training_session']['points']
sessions.append({
'id':i,
'name':n,
'spm':spm,
'new':nnn,
'date': d,
+ 'points': p,
})
breadcrumbs = [
diff --git a/rowers/views/statements.py b/rowers/views/statements.py
index c6a8f707..b03447e6 100644
--- a/rowers/views/statements.py
+++ b/rowers/views/statements.py
@@ -239,6 +239,7 @@ from rowers.rows import handle_uploaded_file, handle_uploaded_image
from rowers.plannedsessions import *
from rowers.tasks import handle_makeplot, handle_otwsetpower, handle_sendemailtcx, handle_sendemailcsv
from rowers.tasks import (
+ fetch_rojabo_session,
handle_sendemail_unrecognized, handle_sendemailnewcomment,
handle_request_post,
handle_sendemailsummary,