adding calendar to all team members sending funct
This commit is contained in:
@@ -71,6 +71,69 @@ def plannedsessions_icsemail_view(request,userid=0):
|
||||
|
||||
return response
|
||||
|
||||
@login_required()
|
||||
def plannedsessions_coach_icsemail_view(request,userid=0):
|
||||
therower = getrequestplanrower(request,userid=userid)
|
||||
startdate,enddate = get_dates_timeperiod(request)
|
||||
|
||||
if 'coach' in request.user.rower.rowerplan:
|
||||
sps = get_sessions_manager(request.user,teamid=0,
|
||||
enddate=enddate,
|
||||
startdate=startdate)
|
||||
else:
|
||||
rteams = therower.team.filter(viewing='allmembers')
|
||||
sps = get_sessions(therower,startdate=startdate,enddate=enddate)
|
||||
|
||||
if therower.rowerplan != 'freecoach':
|
||||
rowers = [therower]
|
||||
else:
|
||||
rowers = []
|
||||
|
||||
rowers = list(set(rowers))
|
||||
|
||||
cal = Calendar()
|
||||
cal.add('prodid','rowsandall')
|
||||
cal.add('version','1.0')
|
||||
|
||||
for ps in sps:
|
||||
event = Event()
|
||||
comment = '{d} {u} {c}'.format(
|
||||
d=ps.sessionvalue,
|
||||
u = ps.sessionunit,
|
||||
c = ps.criterium)
|
||||
event.add('summary',ps.name)
|
||||
event.add('dtstart',ps.preferreddate)
|
||||
event.add('dtend',ps.preferreddate)
|
||||
event['uid'] = 'plannedsession_'+str(ps.id)
|
||||
event.add('description',ps.comment)
|
||||
event.add('comment',comment)
|
||||
cal.add_component(event)
|
||||
|
||||
|
||||
icalstring = cal.to_ical()
|
||||
fname = "media/training_plan_{d1}_{d2}".format(
|
||||
d1 = startdate.strftime("%Y%m%d"),
|
||||
d2 = enddate.strftime("%Y%m%d"),
|
||||
)
|
||||
|
||||
url = reverse('plannedsessions_coach_view')+'?when={d1}/{d2}'.format(
|
||||
d1 = startdate.strftime("%Y-%m-%d"),
|
||||
d2 = enddate.strftime("%Y-%m-%d"),
|
||||
)
|
||||
|
||||
for rower in rowers:
|
||||
fname2 = fname+"_{u}.ics".format(u=rower.id)
|
||||
with open(fname2,'wb') as fop:
|
||||
fop.write(icalstring)
|
||||
|
||||
job = myqueue(queue,handle_sendemail_ical,
|
||||
rower.user.first_name,
|
||||
rower.user.last_name,
|
||||
rower.user.email,
|
||||
url,
|
||||
fname2,debug=False)
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
@login_required()
|
||||
def course_kmldownload_view(request,id=0):
|
||||
|
||||
Reference in New Issue
Block a user