diff --git a/rowers/admin.py b/rowers/admin.py index 4f50d1ee..e1094553 100644 --- a/rowers/admin.py +++ b/rowers/admin.py @@ -49,7 +49,7 @@ class PlannedSessionAdmin(admin.ModelAdmin): class GraphImageAdmin(admin.ModelAdmin): list_display = ('creationdatetime','workout','filename') - + admin.site.unregister(User) admin.site.register(User,UserAdmin) admin.site.register(Workout,WorkoutAdmin) diff --git a/rowers/models.py b/rowers/models.py index 678920bb..d6316883 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -797,7 +797,7 @@ class PlannedSession(models.Model): ) criteriumchoices = ( - ('none','None'), + ('none','Approximately'), ('minimum','At Least'), ('exact','Exactly'), ) @@ -879,6 +879,9 @@ class PlannedSession(models.Model): return stri +# Date input utility +class DateInput(forms.DateInput): + input_type = 'date' class PlannedSessionForm(ModelForm): class Meta: @@ -888,19 +891,16 @@ class PlannedSessionForm(ModelForm): 'name', 'sessiontype', 'sessionmode', + 'criterium', 'sessionvalue', 'sessionunit', 'comment', ] widgets = { 'comment': forms.Textarea, - 'startdate': SelectDateWidget( - years=range( - timezone.now().year-1,timezone.now().year+2)), - 'enddate': SelectDateWidget( - years=range( - timezone.now().year-1,timezone.now().year+2)), - } + 'startdate': DateInput(), + 'enddate': DateInput(), + } # Workout @@ -1140,9 +1140,6 @@ def auto_delete_image_on_delete(sender,instance, **kwargs): else: print "couldn't find the file "+instance.filename -# Date input utility -class DateInput(forms.DateInput): - input_type = 'date' # Form to update Workout data class WorkoutForm(ModelForm): diff --git a/rowers/templates/planmembership.html b/rowers/templates/planmembership.html new file mode 100644 index 00000000..55d599e8 --- /dev/null +++ b/rowers/templates/planmembership.html @@ -0,0 +1,57 @@ + + {% extends "base.html" %} + {% block title %}About us{% endblock title %} + {% block content %} + +
You have arrived at this page, because you tried to create a + training plan for yourself.
+ +Currently, training planning is restricted to "coach" members with + "team" functionality.
+ +If you are interested in becoming a coach and planning sessions + for a group of rowers on rowsandall.com, contact me through the contact + form. +
+ +If you would like to find a coach who helps you plan your training + through rowsandall.com, contact me throught the contact form.
+ +For self-coached rowers who would like to add the training planning + functionality, we will soon establish a "Self-Coach" plan, which will enable you to do so.
+ + +Over the spring of 2018, we will gradually expand this functionality. + Our current roadmap is to deploy the following and more: + +
+
+ Click on session name to view +
+| After | +Before | +Name | +Value | ++ | Edit | +Clone | +Delete | +
|---|---|---|---|---|---|---|---|
| {{ ps.startdate|date:"Y-m-d" }} | +{{ ps.enddate|date:"Y-m-d" }} | ++ {% if ps.name != '' %} + {{ ps.name }} + {% else %} + Unnamed Session + {% endif %} + | +{{ ps.sessionvalue }} | +{{ ps.sessionunit }} | ++ Edit + | ++ Clone + | + ++ Delete + | +
- Click on session name to view -
-| After | -Before | -Name | -Value | -- | Edit | -Delete | -
|---|---|---|---|---|---|---|
| {{ ps.startdate|date:"Y-m-d" }} | -{{ ps.enddate|date:"Y-m-d" }} | -- {% if ps.name != '' %} - {{ ps.name }} - {% else %} - Unnamed Session - {% endif %} - | -{{ ps.sessionvalue }} | -{{ ps.sessionunit }} | -- Edit - | -- Delete - | -
+ Please correct the error{{ form.errors|pluralize }} below. +
+ {% endif %} + ++ Click on session name to view +
+| After | +Before | +Name | +Value | ++ | Edit | +Clone | +Delete | +
|---|---|---|---|---|---|---|---|
| {{ ps.startdate|date:"Y-m-d" }} | +{{ ps.enddate|date:"Y-m-d" }} | ++ {% if ps.name != '' %} + {{ ps.name }} + {% else %} + Unnamed Session + {% endif %} + | +{{ ps.sessionvalue }} | +{{ ps.sessionunit }} | ++ {% if timeperiod and rower %} + Edit + {% elif timeperiod %} + Edit + {% else %} + Edit + {% endif %} + | ++ Clone + | ++ Delete + | +
{% if timeperiod and rower %} - Manage Sessions + Manage Sessions {% elif timeperiod %} Manage Sessions {% else %} diff --git a/rowers/templates/promembership.html b/rowers/templates/promembership.html index 6ca7312f..bb89c13d 100644 --- a/rowers/templates/promembership.html +++ b/rowers/templates/promembership.html @@ -2,9 +2,9 @@ {% extends "base.html" %} {% block title %}About us{% endblock title %} {% block content %} -
Donations are welcome to keep this web site going. To help cover the hosting
costs, I have created a Pro
membership option (for only 15 EURO per year). Once I process your
@@ -27,7 +27,7 @@ You will be taken to the secure PayPal payment site.
You need a Paypal account for this
-Only a credit card needed. Will not automatically renew
-After you do the payment, we will manually change your membership to
"Pro". Depending on our availability, this may take some time
(typically one working day). Don't hesitate to contact us
diff --git a/rowers/urls.py b/rowers/urls.py
index 153b2b54..2d42ea30 100644
--- a/rowers/urls.py
+++ b/rowers/urls.py
@@ -382,6 +382,7 @@ urlpatterns = [
url(r'^videos', TemplateView.as_view(template_name='videos.html'),name='videos'),
url(r'^analysis', TemplateView.as_view(template_name='analysis.html'),name='analysis'),
url(r'^promembership', TemplateView.as_view(template_name='promembership.html'),name='promembership'),
+ url(r'^planmembership', TemplateView.as_view(template_name='planmembership.html'),name='planmembership'),
url(r'^paypaltest', TemplateView.as_view(template_name='paypaltest.html'),name='paypaltest'),
url(r'^legal', TemplateView.as_view(template_name='legal.html'),name='legal'),
url(r'^register$',views.rower_register_view),
@@ -397,11 +398,25 @@ urlpatterns = [
url(r'^test\_callback',views.rower_process_testcallback),
url(r'^workout/(?P