session create
This commit is contained in:
@@ -48,11 +48,11 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<a href="/rowers/sessions/multicreate/{{ timeperiod }}/rower/{{ rower.id }}/extra/{{ extrasessions }}">
|
<a href="/rowers/sessions/multicreate/user/{{ rower.user.id }}/extra/{{ extrasessions }}/?when={{ timeperiod }}">
|
||||||
Add More
|
Add More
|
||||||
</a>
|
</a>
|
||||||
or
|
or
|
||||||
<a href="/rowers/sessions/multiclone/{{ timeperiod }}/rower/{{ rower.id }}">
|
<a href="/rowers/sessions/multiclone/user/{{ rower.user.id }}/?when={{ timeperiod }}">
|
||||||
Clone multiple sessions
|
Clone multiple sessions
|
||||||
</a>
|
</a>
|
||||||
<button class="button green small" type="submit">Submit</button>
|
<button class="button green small" type="submit">Submit</button>
|
||||||
|
|||||||
@@ -43,10 +43,10 @@
|
|||||||
<td> {{ ps.sessionvalue }} </td>
|
<td> {{ ps.sessionvalue }} </td>
|
||||||
<td> {{ ps.sessionunit }} </td>
|
<td> {{ ps.sessionunit }} </td>
|
||||||
<td>
|
<td>
|
||||||
<a class="small" href="/rowers/sessions/{{ ps.id }}/edit/{{ timeperiod }}/rower/{{ rower.id }}">Edit</a>
|
<a class="small" href="/rowers/sessions/{{ ps.id }}/edit/user/{{ rower.user.id }}/?when={{ timeperiod }}">Edit</a>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<a class="small" href="/rowers/sessions/{{ ps.id }}/clone/{{ timeperiod }}/rower/{{ rower.id }}">Clone</a>
|
<a class="small" href="/rowers/sessions/{{ ps.id }}/clone/user/{{ rower.user.id }}/?when={{ timeperiod }}">Clone</a>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<td>
|
<td>
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "newbase.html" %}
|
||||||
{% load staticfiles %}
|
{% load staticfiles %}
|
||||||
{% load rowerfilters %}
|
{% load rowerfilters %}
|
||||||
|
|
||||||
{% block title %}Workouts{% endblock %}
|
{% block title %}Workouts{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block main %}
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
function toggle(source) {
|
function toggle(source) {
|
||||||
@@ -64,123 +64,46 @@
|
|||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<h1>Clone Multiple Sessions</h1>
|
||||||
<div class="grid_12 alpha">
|
|
||||||
{% include "planningbuttons.html" %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_6 alpha">
|
|
||||||
<h1>Clone Multiple Sessions</h1>
|
|
||||||
</div>
|
|
||||||
<div id="timeperiod" class="grid_2 dropdown">
|
|
||||||
<button class="grid_2 alpha button gray small dropbtn">Select Time Period ({{ timeperiod|verbosetimeperiod }})</button>
|
|
||||||
<div class="dropdown-content">
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/today">
|
|
||||||
Today
|
|
||||||
</a>
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/thisweek">
|
|
||||||
This Week
|
|
||||||
</a>
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/thismonth">
|
|
||||||
This Month
|
|
||||||
</a>
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/lastweek">
|
|
||||||
Last Week
|
|
||||||
</a>
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/lastmonth">
|
|
||||||
Last Month
|
|
||||||
</a>
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/nextweek">
|
|
||||||
Next Week
|
|
||||||
</a>
|
|
||||||
<a class="button gray small alpha"
|
|
||||||
href="/rowers/sessions/multiclone/nextmonth">
|
|
||||||
Next Month
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% if user.is_authenticated and user|is_manager %}
|
|
||||||
<div class="grid_2 dropdown">
|
|
||||||
<button class="grid_2 alpha button green small dropbtn">
|
|
||||||
Select Rower
|
|
||||||
</button>
|
|
||||||
<div class="dropdown-content">
|
|
||||||
{% for member in user|team_rowers %}
|
|
||||||
<a class="button green small" href="/rowers/sessions/multiclone/{{ timeperiod }}/rower/{{ member.id }}">{{ member.user.first_name }} {{ member.user.last_name }}</a>
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="grid_12 alpha">
|
|
||||||
<div class="grid_6 alpha">
|
|
||||||
<form enctype="multipart/form-data" method="post">
|
|
||||||
{% endif %}
|
|
||||||
<div class="grid_4 alpha">
|
|
||||||
<table>
|
|
||||||
{{ dateform.as_table }}
|
|
||||||
</table>
|
|
||||||
{% csrf_token %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_2 omega">
|
|
||||||
<input name='daterange' class="button green" type="submit" value="Submit">
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<div class="grid_5 prefix_1 omega">
|
|
||||||
<form id="searchform" method="get" accept-charset="utf-8">
|
|
||||||
<div class="grid_3 prefix_1 alpha">
|
|
||||||
<input class="searchfield" id="searchbox" name="q" type="text" placeholder="Search">
|
|
||||||
</div>
|
|
||||||
<div class="grid_1 omega">
|
|
||||||
<button class="button blue small" type="submit">
|
|
||||||
Search
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<form enctype="multipart/form-data" method="post">
|
<form enctype="multipart/form-data" method="post">
|
||||||
<div id="workouts_table" class="grid_8 alpha">
|
<ul class="main-content">
|
||||||
|
<li class="grid_2">
|
||||||
|
|
||||||
|
|
||||||
{% if plannedsessions %}
|
{% if plannedsessions %}
|
||||||
|
|
||||||
<input type="checkbox" onClick="toggle(this)" /> Toggle All<br/>
|
<input type="checkbox" onClick="toggle(this)" /> Toggle All<br/>
|
||||||
|
|
||||||
<table width="100%" class="listtable">
|
<table width="100%" class="listtable">
|
||||||
{{ form.as_table }}
|
{{ form.as_table }}
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<p> No sessions found </p>
|
<p> No sessions found </p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</li>
|
||||||
<div id="form_settings" class="grid_4 alpha">
|
<li class="grid_2">
|
||||||
<p>Select one or more planned sessions on the left,
|
<p>Select one or more planned sessions on the left,
|
||||||
select the date when the new cycle starts below
|
select the date when the new cycle starts below
|
||||||
and press submit</p>
|
and press submit</p>
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
<table>
|
<table>
|
||||||
{{ dateshiftform.as_table }}
|
{{ dateshiftform.as_table }}
|
||||||
</table>
|
</table>
|
||||||
<div class="grid_1 prefix_2 suffix_1">
|
<p>
|
||||||
<p>
|
<input name='workoutselectform' class="button green" type="submit" value="Submit">
|
||||||
<input name='workoutselectform' class="button green" type="submit" value="Submit">
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
<p>You can use the date and search forms above to search through all
|
||||||
<div class="grid_4">
|
|
||||||
<p>You can use the date and search forms above to search through all
|
|
||||||
sessions.</p>
|
sessions.</p>
|
||||||
</div>
|
</li>
|
||||||
</div>
|
</ul>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block sidebar %}
|
||||||
|
{% include 'menu_plan.html' %}
|
||||||
|
{% endblock %}
|
||||||
|
|||||||
@@ -446,46 +446,25 @@ urlpatterns = [
|
|||||||
url(r'^sessions/teamcreate/team/$',
|
url(r'^sessions/teamcreate/team/$',
|
||||||
views.plannedsession_teamcreate_view),
|
views.plannedsession_teamcreate_view),
|
||||||
url(r'^sessions/teamedit/(?P<sessionid>\d+)$',views.plannedsession_teamedit_view),
|
url(r'^sessions/teamedit/(?P<sessionid>\d+)$',views.plannedsession_teamedit_view),
|
||||||
url(r'^sessions/teamedit/(?P<sessionid>\d+)/(?P<timeperiod>[\w\ ]+.*)$',views.plannedsession_teamedit_view),
|
|
||||||
|
|
||||||
url(r'^sessions/create/$',views.plannedsession_create_view),
|
url(r'^sessions/create/$',views.plannedsession_create_view),
|
||||||
url(r'^sessions/create/user/(?P<userid>\d+)$',
|
url(r'^sessions/create/user/(?P<userid>\d+)$',
|
||||||
views.plannedsession_create_view),
|
views.plannedsession_create_view),
|
||||||
|
url(r'^sessions/multiclone/$',views.plannedsession_multiclone_view),
|
||||||
url(r'^sessions/multiclone$',views.plannedsession_multiclone_view),
|
url(r'^sessions/multiclone/user/(?P<userid>\d+)/extra/(?P<extrasessions>\d+)$/',
|
||||||
url(r'^sessions/multiclone/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)/extra/(?P<extrasessions>\d+)$',
|
|
||||||
views.plannedsession_multiclone_view),
|
views.plannedsession_multiclone_view),
|
||||||
url(r'^sessions/multiclone/user/(?P<userid>\d+)$',
|
url(r'^sessions/multiclone/user/(?P<userid>\d+)/$',
|
||||||
views.plannedsession_multiclone_view),
|
views.plannedsession_multiclone_view),
|
||||||
url(
|
url(r'^sessions/multicreate/$',views.plannedsession_multicreate_view),
|
||||||
r'^sessions/multiclone/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',
|
url(r'^sessions/multicreate/user/(?P<userid>\d+)/extra/(?P<extrasessions>\d+)/$',
|
||||||
views.plannedsession_multiclone_view),
|
|
||||||
url(r'^sessions/multiclone/(?P<timeperiod>[\w\ ]+.*)$',
|
|
||||||
views.plannedsession_multiclone_view),
|
|
||||||
|
|
||||||
url(r'^sessions/multicreate$',views.plannedsession_multicreate_view),
|
|
||||||
url(r'^sessions/multicreate/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)/extra/(?P<extrasessions>\d+)$',
|
|
||||||
views.plannedsession_multicreate_view),
|
views.plannedsession_multicreate_view),
|
||||||
url(r'^sessions/multicreate/user/(?P<userid>\d+)$',
|
url(r'^sessions/multicreate/user/(?P<userid>\d+)/$',
|
||||||
views.plannedsession_multicreate_view),
|
views.plannedsession_multicreate_view),
|
||||||
url(
|
url(r'^sessions/(?P<id>\d+)/edit/$',views.plannedsession_edit_view),
|
||||||
r'^sessions/multicreate/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',
|
url(r'^sessions/(?P<id>\d+)/edit/user/(?P<userid>/$',views.plannedsession_edit_view),
|
||||||
views.plannedsession_multicreate_view),
|
url(r'^sessions/(?P<id>\d+)/clone/user/(?P<userid>/$',views.plannedsession_clone_view),
|
||||||
url(r'^sessions/multicreate/(?P<timeperiod>[\w\ ]+.*)$',
|
url(r'^sessions/(?P<id>\d+)/clone/$',views.plannedsession_clone_view),
|
||||||
views.plannedsession_multicreate_view),
|
|
||||||
|
|
||||||
url(r'^sessions/(?P<id>\d+)/edit/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',views.plannedsession_edit_view),
|
|
||||||
url(r'^sessions/(?P<id>\d+)/edit/(?P<timeperiod>[\w\ ]+.*)$',views.plannedsession_edit_view),
|
|
||||||
url(r'^sessions/(?P<id>\d+)/edit$',views.plannedsession_edit_view),
|
|
||||||
|
|
||||||
url(r'^sessions/(?P<id>\d+)/clone$',views.plannedsession_clone_view),
|
|
||||||
url(r'^sessions/(?P<id>\d+)/clone/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',views.plannedsession_clone_view),
|
|
||||||
url(r'^sessions/(?P<id>\d+)/clone/(?P<timeperiod>[\w\ ]+.*)$',views.plannedsession_clone_view),
|
|
||||||
|
|
||||||
url(r'^sessions/(?P<id>\d+)$',views.plannedsession_view,
|
url(r'^sessions/(?P<id>\d+)$',views.plannedsession_view,
|
||||||
name='plannedsession_view'),
|
name='plannedsession_view'),
|
||||||
url(r'^sessions/(?P<id>\d+)/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',views.plannedsession_view,
|
|
||||||
name='plannedsession_view'),
|
|
||||||
url(r'^sessions/(?P<id>\d+)/user/(?P<userid>\d+)$',views.plannedsession_view,
|
url(r'^sessions/(?P<id>\d+)/user/(?P<userid>\d+)$',views.plannedsession_view,
|
||||||
name='plannedsession_view'),
|
name='plannedsession_view'),
|
||||||
url(r'^sessions/(?P<id>\d+)/deleteconfirm$',views.plannedsession_deleteconfirm_view),
|
url(r'^sessions/(?P<id>\d+)/deleteconfirm$',views.plannedsession_deleteconfirm_view),
|
||||||
@@ -494,33 +473,15 @@ urlpatterns = [
|
|||||||
views.plannedsessions_manage_view),
|
views.plannedsessions_manage_view),
|
||||||
url(r'^sessions/manage/user/(?P<userid>\d+)/session/(?P<initialsession>\d+)$',
|
url(r'^sessions/manage/user/(?P<userid>\d+)/session/(?P<initialsession>\d+)$',
|
||||||
views.plannedsessions_manage_view),
|
views.plannedsessions_manage_view),
|
||||||
url(r'^sessions/manage/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)/session/(?P<initialsession>\d+)$',
|
|
||||||
views.plannedsessions_manage_view),
|
|
||||||
url(r'^sessions/manage/(?P<timeperiod>[\w\ ]+.*)/session/(?P<initialsession>\d+)$',
|
|
||||||
views.plannedsessions_manage_view),
|
|
||||||
|
|
||||||
|
|
||||||
url(r'^sessions/manage/?$',
|
url(r'^sessions/manage/?$',
|
||||||
views.plannedsessions_manage_view),
|
views.plannedsessions_manage_view),
|
||||||
url(r'^sessions/manage/user/(?P<userid>\d+)$',
|
url(r'^sessions/manage/user/(?P<userid>\d+)$',
|
||||||
views.plannedsessions_manage_view),
|
views.plannedsessions_manage_view),
|
||||||
url(r'^sessions/manage/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',
|
|
||||||
views.plannedsessions_manage_view),
|
|
||||||
url(r'^sessions/manage/(?P<timeperiod>[\w\ ]+.*)$',
|
|
||||||
views.plannedsessions_manage_view),
|
|
||||||
url(r'^sessions/coach$',views.plannedsessions_coach_view),
|
url(r'^sessions/coach$',views.plannedsessions_coach_view),
|
||||||
url(r'^sessions/coach/(?P<timeperiod>[\w\ ]+.*)/team/(?P<teamid>\d+)$',
|
|
||||||
views.plannedsessions_coach_view),
|
|
||||||
url(r'^sessions/coach/(?P<timeperiod>[\w\ ]+.*)$',
|
|
||||||
views.plannedsessions_coach_view),
|
|
||||||
url(r'^sessions/print/?$',views.plannedsessions_print_view),
|
url(r'^sessions/print/?$',views.plannedsessions_print_view),
|
||||||
url(r'^sessions/print/user/(?P<userid>\d+)$',views.plannedsessions_print_view),
|
url(r'^sessions/print/user/(?P<userid>\d+)$',views.plannedsessions_print_view),
|
||||||
url(r'^sessions/print/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',views.plannedsessions_print_view),
|
url(r'^sessions/$',views.plannedsessions_view),
|
||||||
url(r'^sessions/print/(?P<timeperiod>[\w\ ]+.*)$',views.plannedsessions_print_view),
|
|
||||||
url(r'^sessions/?$',views.plannedsessions_view),
|
|
||||||
url(r'^sessions/user/(?P<userid>\d+)$',views.plannedsessions_view),
|
url(r'^sessions/user/(?P<userid>\d+)$',views.plannedsessions_view),
|
||||||
url(r'^sessions/(?P<timeperiod>[\w\ ]+.*)/user/(?P<userid>\d+)$',views.plannedsessions_view),
|
|
||||||
url(r'^sessions/(?P<timeperiod>[\w\ ]+.*)$',views.plannedsessions_view),
|
|
||||||
url(r'^courses/(?P<id>\d+)/edit$',views.course_edit_view,
|
url(r'^courses/(?P<id>\d+)/edit$',views.course_edit_view,
|
||||||
name='course_edit_view'),
|
name='course_edit_view'),
|
||||||
url(r'^courses/(?P<id>\d+)/delete$',views.course_delete_view),
|
url(r'^courses/(?P<id>\d+)/delete$',views.course_delete_view),
|
||||||
|
|||||||
@@ -13541,15 +13541,20 @@ def agegrouprecordview(request,sex='male',weightcategory='hwt',
|
|||||||
@user_passes_test(hasplannedsessions,login_url="/rowers/planmembership/",
|
@user_passes_test(hasplannedsessions,login_url="/rowers/planmembership/",
|
||||||
redirect_field_name=None)
|
redirect_field_name=None)
|
||||||
def plannedsession_multiclone_view(
|
def plannedsession_multiclone_view(
|
||||||
request,timeperiod='none',
|
request,
|
||||||
rowerid=0,userid=0,
|
userid=0,
|
||||||
startdate=timezone.now()-datetime.timedelta(days=30),
|
startdate=timezone.now()-datetime.timedelta(days=30),
|
||||||
enddate=timezone.now()):
|
enddate=timezone.now()):
|
||||||
|
|
||||||
r = getrequestrower(request,rowerid=rowerid)
|
r = getrequestrower(request,userid=userid)
|
||||||
|
|
||||||
if timeperiod != 'none':
|
when = request.GET.get('when')
|
||||||
startdate,enddate = get_dates_timeperiod(timeperiod)
|
if when:
|
||||||
|
timeperiod = when
|
||||||
|
else:
|
||||||
|
timeperiod = 'thisweek'
|
||||||
|
|
||||||
|
startdate,enddate = get_dates_timeperiod(timeperiod)
|
||||||
|
|
||||||
|
|
||||||
if request.method == 'POST' and 'daterange' in request.POST:
|
if request.method == 'POST' and 'daterange' in request.POST:
|
||||||
@@ -13591,10 +13596,11 @@ def plannedsession_multiclone_view(
|
|||||||
|
|
||||||
url = reverse(plannedsession_multicreate_view,
|
url = reverse(plannedsession_multicreate_view,
|
||||||
kwargs = {
|
kwargs = {
|
||||||
'rowerid':r.id,
|
'userid':r.user.id,
|
||||||
'timeperiod':timeperiod,
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
url += '?when='+when
|
||||||
|
|
||||||
return HttpResponseRedirect(url)
|
return HttpResponseRedirect(url)
|
||||||
|
|
||||||
sps = PlannedSession.objects.filter(
|
sps = PlannedSession.objects.filter(
|
||||||
@@ -13638,6 +13644,7 @@ def plannedsession_multiclone_view(
|
|||||||
'form':form,
|
'form':form,
|
||||||
'dateshiftform':dateshiftform,
|
'dateshiftform':dateshiftform,
|
||||||
'rower':r,
|
'rower':r,
|
||||||
|
'active':'nav-plan',
|
||||||
'timeperiod':timeperiod,
|
'timeperiod':timeperiod,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -13777,12 +13784,18 @@ def plannedsession_create_view(request,
|
|||||||
|
|
||||||
@user_passes_test(hasplannedsessions,login_url="/rowers/planmembership/",
|
@user_passes_test(hasplannedsessions,login_url="/rowers/planmembership/",
|
||||||
redirect_field_name=None)
|
redirect_field_name=None)
|
||||||
def plannedsession_multicreate_view(request,timeperiod='thisweek',
|
def plannedsession_multicreate_view(request,
|
||||||
teamid=0,rowerid=0,userid=0,extrasessions=0):
|
teamid=0,userid=0,extrasessions=0):
|
||||||
|
|
||||||
extrasessions=int(extrasessions)
|
extrasessions=int(extrasessions)
|
||||||
|
|
||||||
r = getrequestrower(request,rowerid=rowerid)
|
r = getrequestrower(request,userid=userid)
|
||||||
|
|
||||||
|
when = request.GET.get('when')
|
||||||
|
if when:
|
||||||
|
timeperiod = when
|
||||||
|
else:
|
||||||
|
timeperiod = 'thisweek'
|
||||||
|
|
||||||
startdate,enddate = get_dates_timeperiod(timeperiod)
|
startdate,enddate = get_dates_timeperiod(timeperiod)
|
||||||
try:
|
try:
|
||||||
@@ -13834,6 +13847,7 @@ def plannedsession_multicreate_view(request,timeperiod='thisweek',
|
|||||||
|
|
||||||
|
|
||||||
initials = [initial for i in range(extrasessions)]
|
initials = [initial for i in range(extrasessions)]
|
||||||
|
|
||||||
PlannedSessionFormSet = modelformset_factory(
|
PlannedSessionFormSet = modelformset_factory(
|
||||||
PlannedSession,
|
PlannedSession,
|
||||||
form=PlannedSessionFormSmall,
|
form=PlannedSessionFormSmall,
|
||||||
@@ -16081,7 +16095,6 @@ def rower_trainingplan_view(request,
|
|||||||
else:
|
else:
|
||||||
thismeso = None
|
thismeso = None
|
||||||
|
|
||||||
print thismacro,thismeso,thismicro,'aap'
|
|
||||||
|
|
||||||
return render(request,'trainingplan.html',
|
return render(request,'trainingplan.html',
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user