Private
Public Access
1
0

provisions for international date formats in selecting plan period

This commit is contained in:
Sander Roosendaal
2019-02-10 22:34:53 +01:00
parent d327caafad
commit d387f8db69
4 changed files with 134 additions and 45 deletions

View File

@@ -9,6 +9,7 @@ from django.db import IntegrityError
import uuid
from django.conf import settings
import pytz
from dateutil import parser
from utils import myqueue,calculate_age,totaltime_sec_to_string
import re
import django_rq
@@ -484,8 +485,13 @@ def get_dates_timeperiod(request,startdatestring='',enddatestring=''):
enddatestring = request.GET.get('enddate')
if startdatestring and enddatestring:
startdate = dt.datetime.strptime(startdatestring,'%Y-%m-%d').date()
enddate = dt.datetime.strptime(enddatestring,'%Y-%m-%d').date()
try:
startdate = dt.datetime.strptime(startdatestring,'%Y-%m-%d').date()
enddate = dt.datetime.strptime(enddatestring,'%Y-%m-%d').date()
except ValueError:
startdate = parser.parse(startdatestring,fuzzy=True)
enddate = parser.parse(enddatestring, fuzzy=True)
return startdate,enddate
daterangetester = re.compile('^(\d+-\d+-\d+)\/(\d+-\d+-\d+)')

View File

@@ -1430,12 +1430,57 @@ class PlannedSessionsView(TestCase):
self.assertTrue(login)
url = '/rowers/sessions/?when={d1}/{d2}'.format(
d1=self.ps_trimp.startdate.strftime("%Y-%m%d"),
d2=self.ps_trimp.enddate.strftime("%Y-%m%d")
d1=self.ps_trimp.startdate.strftime("%Y-%m-%d"),
d2=self.ps_trimp.enddate.strftime("%Y-%m-%d")
)
response = self.c.get(url)
self.assertEqual(response.status_code,200)
def test_plannedsessions_dateform_view(self):
login = self.c.login(username=self.u.username, password=self.password)
self.assertTrue(login)
url = reverse('plannedsessions_view')
response = self.c.get(url)
self.assertEqual(response.status_code,200)
d1 = self.ps_trimp.startdate
d2 = self.ps_trimp.enddate
dates = {
'startdate': d1.strftime("%Y-%m-%d"),
'enddate': d2.strftime("%Y-%m-%d")
}
response = self.c.get(url, dates)
self.assertEqual(response.status_code,200)
dates = {
'startdate': d1.strftime("%d-%m-%Y"),
'enddate': d2.strftime("%d-%m-%Y"),
}
response = self.c.get(url, dates)
self.assertEqual(response.status_code,200)
dates = {
'startdate': d1.strftime("%d.%m.%Y"),
'enddate': d2.strftime("%d.%m.%Y"),
}
response = self.c.get(url, dates)
self.assertEqual(response.status_code,200)
dates = {
'startdate': d1.strftime("%d/%m/%Y"),
'enddate': d2.strftime("%d/%m/%Y"),
}
response = self.c.get(url, dates)
self.assertEqual(response.status_code,200)
def test_plannedsessions_print_view(self):
login = self.c.login(username=self.u.username, password=self.password)

Binary file not shown.

View File

@@ -484,22 +484,30 @@ urlpatterns = [
url(r'^createplan/$',views.rower_create_trainingplan,name='rower_create_trainingplan'),
url(r'^createplan/user/(?P<userid>\d+)/$',views.rower_create_trainingplan,name='rower_create_trainingplan'),
url(r'^deleteplan/(?P<pk>\d+)/$',login_required(
views.TrainingPlanDelete.as_view())),
views.TrainingPlanDelete.as_view()),name='trainingplan_delete_view'),
url(r'^deletemicrocycle/(?P<pk>\d+)/$',login_required(
views.MicroCycleDelete.as_view())),
views.MicroCycleDelete.as_view()),name='microcycle_delete_view'),
url(r'^deletemesocycle/(?P<pk>\d+)/$',login_required(
views.MesoCycleDelete.as_view())),
views.MesoCycleDelete.as_view()),name='mesocycle_delete_view'),
url(r'^deletemacrocycle/(?P<pk>\d+)/$',login_required(
views.MacroCycleDelete.as_view())),
views.MacroCycleDelete.as_view()),name='macrocycle_delete_view'),
# url(r'^deleteplan/(?P<id>\d+)/$',views.rower_delete_trainingplan),
url(r'^plan/(?P<id>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/micro/(?P<thismicroid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/micro/(?P<thismicroid>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/meso/(?P<thismesoid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/meso/(?P<thismesoid>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/macro/(?P<thismacroid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/macro/(?P<thismacroid>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view),
url(r'^plan/(?P<id>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/micro/(?P<thismicroid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/micro/(?P<thismicroid>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/meso/(?P<thismesoid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/meso/(?P<thismesoid>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/macro/(?P<thismacroid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^plan/(?P<id>\d+)/macro/(?P<thismacroid>\d+)/user/(?P<userid>\d+)/$',views.rower_trainingplan_view,
name='rower_trainingplan_view'),
url(r'^macrocycle/(?P<pk>\d+)/$',login_required(
views.TrainingMacroCycleUpdate.as_view()),
name='macrocycle_update_view'),
@@ -514,7 +522,8 @@ urlpatterns = [
url(r'^microcycle/(?P<pk>\d+)/$',login_required(
views.TrainingMicroCycleUpdate.as_view()),
name='microcycle_update_view'),
url(r'^deletetarget/(?P<id>\d+)/$',views.rower_delete_trainingtarget),
url(r'^deletetarget/(?P<id>\d+)/$',views.rower_delete_trainingtarget,
name='rower_delete_trainingtarget'),
url(r'^editplan/(?P<pk>\d+)/$',login_required(
views.TrainingPlanUpdate.as_view()),
name='trainingplan_update_view'),
@@ -522,29 +531,44 @@ urlpatterns = [
views.TrainingTargetUpdate.as_view()),
name='trainingtarget_update_view'),
url(r'^workout/(?P<id>\d+)/test\_strokedata/$',views.strokedataform),
url(r'^sessions/teamcreate/user/(?P<userid>\d+)/$',views.plannedsession_teamcreate_view),
url(r'^sessions/teamcreate/user/(?P<userid>\d+)/$',views.plannedsession_teamcreate_view,
name='plannedsession_teamcreate_view'),
url(r'^sessions/teamcreate/team/(?P<teamid>\d+)/user/(?P<userid>\d+)/$',
views.plannedsession_teamcreate_view),
url(r'^sessions/teamcreate/$',views.plannedsession_teamcreate_view),
views.plannedsession_teamcreate_view,
name='plannedsession_teamcreate_view'),
url(r'^sessions/teamcreate/$',views.plannedsession_teamcreate_view,
name='plannedsession_teamcreate_view'),
url(r'^sessions/teamcreate/team/$',
views.plannedsession_teamcreate_view),
url(r'^sessions/teamedit/(?P<sessionid>\d+)/$',views.plannedsession_teamedit_view),
url(r'^sessions/teamedit/(?P<sessionid>\d+)/user/(?P<userid>\d+)/$',views.plannedsession_teamedit_view),
url(r'^sessions/create/$',views.plannedsession_create_view),
views.plannedsession_teamcreate_view,
name='plannedsession_teamcreate_view'),
url(r'^sessions/teamedit/(?P<sessionid>\d+)/$',views.plannedsession_teamedit_view,
name='plannedsession_teamedit_view'),
url(r'^sessions/teamedit/(?P<sessionid>\d+)/user/(?P<userid>\d+)/$',
views.plannedsession_teamedit_view,
name='plannedsession_teamedit_view'),
url(r'^sessions/create/$',views.plannedsession_create_view,
name='plannedsession_create_view'),
url(r'^sessions/create/user/(?P<userid>\d+)/$',
views.plannedsession_create_view),
views.plannedsession_create_view,
name='plannedsession_create_view'),
url(r'^sessions/create/(?P<startdatestring>\d+-\d+-\d+)/(?P<enddatestring>\d+-\d+-\d+)/$',
views.plannedsession_create_view),
views.plannedsession_create_view,
name='plannedsession_create_view'),
url(r'^sessions/create/(?P<startdatestring>\d+-\d+-\d+)/(?P<enddatestring>\d+-\d+-\d+)/user/(?P<userid>\d+)/$',
views.plannedsession_create_view),
views.plannedsession_create_view,
name='plannedsession_create_view'),
url(r'^sessions/multiclone/$',views.plannedsession_multiclone_view),
url(r'^sessions/multiclone/user/(?P<userid>\d+)/$',
views.plannedsession_multiclone_view),
url(r'^sessions/multicreate/$',views.plannedsession_multicreate_view),
views.plannedsession_multiclone_view,
name='plannedsession_multiclone_view'),
url(r'^sessions/multicreate/$',views.plannedsession_multicreate_view,
name='plannedsession_multicreate_view'),
url(r'^sessions/multicreate/user/(?P<userid>\d+)/extra/(?P<extrasessions>\d+)/$',
views.plannedsession_multicreate_view),
views.plannedsession_multicreate_view,
name='plannedsession_multicreate_view'),
url(r'^sessions/multicreate/user/(?P<userid>\d+)/$',
views.plannedsession_multicreate_view),
views.plannedsession_multicreate_view,
name='plannedsession_multicreate_view'),
url(r'^sessions/(?P<id>\d+)/edit/$',views.plannedsession_edit_view),
url(r'^sessions/(?P<id>\d+)/compare/$',
views.plannedsession_compare_view,
@@ -567,25 +591,39 @@ urlpatterns = [
views.PlannedSessionDelete.as_view()),
name='plannedsession_delete_view'),
url(r'^sessions/manage/session/(?P<initialsession>\d+)/$',
views.plannedsessions_manage_view),
views.plannedsessions_manage_view,
name='plannedsessions_manage_view'),
url(r'^sessions/manage/session/(?P<initialsession>\d+)/user/(?P<userid>\d+)/$',
views.plannedsessions_manage_view),
views.plannedsessions_manage_view,
name='plannedsessions_manage_view'),
url(r'^sessions/manage/?/$',
views.plannedsessions_manage_view),
views.plannedsessions_manage_view,
name='plannedsessions_manage_view'),
url(r'^sessions/manage/user/(?P<userid>\d+)/$',
views.plannedsessions_manage_view),
url(r'^sessions/coach/$',views.plannedsessions_coach_view),
url(r'^sessions/coach/user/\d+/$',views.plannedsessions_coach_view),
url(r'^sessions/print/?/$',views.plannedsessions_print_view),
url(r'^sessions/print/user/(?P<userid>\d+)/$',views.plannedsessions_print_view),
url(r'^sessions/sendcalendar/$',views.plannedsessions_icsemail_view),
url(r'^sessions/sendcalendar/user/(?P<userid>\d+)/$',views.plannedsessions_icsemail_view),
url(r'^sessions/$',views.plannedsessions_view),
url(r'^sessions/user/(?P<userid>\d+)/$',views.plannedsessions_view),
views.plannedsessions_manage_view,
name='plannedsessions_manage_view'),
url(r'^sessions/coach/$',views.plannedsessions_coach_view,
name='plannedsessions_coach_view'),
url(r'^sessions/coach/user/\d+/$',views.plannedsessions_coach_view,
name='plannedsessions_coach_view'),
url(r'^sessions/print/?/$',views.plannedsessions_print_view,
name='plannedsessions_print_view'),
url(r'^sessions/print/user/(?P<userid>\d+)/$',views.plannedsessions_print_view,
name='plannedsessions_print_view'),
url(r'^sessions/sendcalendar/$',views.plannedsessions_icsemail_view,
name='plannedsessions_icsemail_view'),
url(r'^sessions/sendcalendar/user/(?P<userid>\d+)/$',views.plannedsessions_icsemail_view,
name='plannedsessions_icsemail_view'),
url(r'^sessions/$',views.plannedsessions_view,
name='plannedsessions_view'),
url(r'^sessions/user/(?P<userid>\d+)/$',views.plannedsessions_view,
name='plannedsessions_view'),
url(r'^sessions/(?P<startdatestring>\d+-\d+-\d+)/(?P<enddatestring>\d+-\d+-\d+)/$',
views.plannedsessions_view),
views.plannedsessions_view,
name='plannedsessions_view'),
url(r'^sessions/(?P<startdatestring>\d+-\d+-\d+)/(?P<enddatestring>\d+-\d+-\d+)/user/(?P<userid>\d+)/$',
views.plannedsessions_view),
views.plannedsessions_view,
name='plannedsessions_view'),
url(r'^courses/(?P<id>\d+)/edit/$',views.course_edit_view,
name='course_edit_view'),
url(r'^courses/(?P<id>\d+)/delete/$',views.course_delete_view),