diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2010-11-19 00:22:59 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2010-11-19 00:22:59 +0100 |
commit | 0cea4a3c6b265b8d68aa5104583e80b76cc9d5ec (patch) | |
tree | f448ee69ae71e4ae324bbb84e17471b037b1afeb | |
parent | 52b79196688dacf5a7874db254bbd9b9748d8ee3 (diff) | |
download | Chimère-0cea4a3c6b265b8d68aa5104583e80b76cc9d5ec.tar.bz2 Chimère-0cea4a3c6b265b8d68aa5104583e80b76cc9d5ec.zip |
Update forms to make dated fields available to users (refs #270)
-rw-r--r-- | chimere/main/forms.py | 7 | ||||
-rw-r--r-- | chimere/main/models.py | 12 | ||||
-rw-r--r-- | chimere/main/views.py | 2 | ||||
-rw-r--r-- | chimere/main/widgets.py | 1 | ||||
-rw-r--r-- | chimere/templates/edit.html | 21 | ||||
-rw-r--r-- | chimere/templates/edit_route.html | 21 |
6 files changed, 60 insertions, 4 deletions
diff --git a/chimere/main/forms.py b/chimere/main/forms.py index ef13dc8..c3cd810 100644 --- a/chimere/main/forms.py +++ b/chimere/main/forms.py @@ -24,6 +24,7 @@ from django import forms from django.contrib.gis.db import models from django.utils.translation import ugettext as _ from django.contrib.auth.models import User, Permission, ContentType +from django.contrib.admin.widgets import AdminDateWidget from django.core.mail import EmailMessage, BadHeaderError from chimere import settings @@ -111,6 +112,9 @@ required=False)' % (property.order, property.id, property.name, else: keys['initial'] = property_dct super(MarkerAdminForm, self).__init__(*args, **keys) + if settings.DAYS_BEFORE_EVENT: + self.fields['start_date'].widget = AdminDateWidget() + self.fields['end_date'].widget = AdminDateWidget() def save(self, *args, **keys): """ @@ -180,6 +184,9 @@ required=False)' % (property.order, property.id, property.name, else: keys['initial'] = property_dct super(RouteAdminForm, self).__init__(*args, **keys) + if settings.DAYS_BEFORE_EVENT: + self.fields['start_date'].widget = AdminDateWidget() + self.fields['end_date'].widget = AdminDateWidget() def save(self, *args, **keys): """ diff --git a/chimere/main/models.py b/chimere/main/models.py index 28f1446..0528357 100644 --- a/chimere/main/models.py +++ b/chimere/main/models.py @@ -199,9 +199,11 @@ class Marker(models.Model): status = models.CharField(_("Status"), max_length=1, choices=STATUS) if settings.DAYS_BEFORE_EVENT: start_date = models.DateField(_("Start date"), blank=True, null=True, -help_text=_("Not mandatory. Set it for dated item such as event.")) +help_text=_("Not mandatory. Set it for dated item such as event. \ +Format YYYY-MM-DD")) end_date = models.DateField(_("End date"), blank=True, null=True, -help_text=_("Not mandatory. Set it only if you have set a start date.")) +help_text=_("Not mandatory. Set it only if you have set a start date. \ +Format YYYY-MM-DD")) objects = models.GeoManager() def __unicode__(self): @@ -275,9 +277,11 @@ class Route(models.Model): STATUS_DCT[key] = label if settings.DAYS_BEFORE_EVENT: start_date = models.DateField(_("Start date"), blank=True, null=True, -help_text=_("Not mandatory. Set it for dated item such as event.")) +help_text=_("Not mandatory. Set it for dated item such as event. \ +Format YYYY-MM-DD")) end_date = models.DateField(_("End date"), blank=True, null=True, -help_text=_("Not mandatory. Set it only if you have set a start date.")) +help_text=_("Not mandatory. Set it only if you have set a start date. \ +Format YYYY-MM-DD")) status = models.CharField(_("Status"), max_length=1, choices=STATUS) objects = models.GeoManager() diff --git a/chimere/main/views.py b/chimere/main/views.py index 3ac3db1..fce17d7 100644 --- a/chimere/main/views.py +++ b/chimere/main/views.py @@ -136,6 +136,7 @@ def edit(request, area_name=""): 'error_message':'', 'map_layer':settings.MAP_LAYER, 'form':form, + 'dated':settings.DAYS_BEFORE_EVENT, 'extra_head':form.media, 'sub_categories':SubCategory.getAvailable(['M', 'B'], area_name), @@ -176,6 +177,7 @@ def editRoute(request, area_name=""): 'error_message':'', 'map_layer':settings.MAP_LAYER, 'form':form, + 'dated':settings.DAYS_BEFORE_EVENT, 'extra_head':form.media, 'sub_categories':SubCategory.getAvailable(['R', 'B'], area_name), diff --git a/chimere/main/widgets.py b/chimere/main/widgets.py index 64893ab..9c53a6d 100644 --- a/chimere/main/widgets.py +++ b/chimere/main/widgets.py @@ -331,3 +331,4 @@ class SelectMultipleField(models.ManyToManyField): defaults = {'widget': MultiSelectWidget} keys.update(defaults) return super(SelectMultipleField, self).formfield(**keys) + diff --git a/chimere/templates/edit.html b/chimere/templates/edit.html index 130ead6..4a02fe4 100644 --- a/chimere/templates/edit.html +++ b/chimere/templates/edit.html @@ -1,5 +1,12 @@ {% extends "base_user.html" %} {% load i18n %} +{% block extra_head %} +{% if dated %}<script type="text/javascript" src="{{extra_url}}admin/jsi18n"></script> +<script type="text/javascript" src="{{extra_url}}media/js/core.js"></script> +<link rel="stylesheet" type="text/css" href="{{extra_url}}media/css/base.css"/> +<link rel="stylesheet" type="text/css" href="{{extra_url}}media/css/widgets.css"/> +{% endif %}{{ block.super }} +{% endblock %} {% block message_map %}{% endblock %} {% block message_edit%}<div id='content'>{{block.super}}{% endblock %} @@ -29,6 +36,20 @@ {{ form.picture.errors }} {{ form.picture }} </div> +{% if dated %} +<div class="fieldWrapper"> + <label for="id_start_date">{% trans "Start date" %}</label> + {{ form.start_date.errors }} + {{ form.start_date }} + <p class="help">{{ form.start_date.help_text }}</p> +</div> +<div class="fieldWrapper"> + <label for="id_end_date">{% trans "End date" %}</label> + {{ form.end_date.errors }} + {{ form.end_date }} + <p class="help">{{ form.end_date.help_text }}</p> +</div> +{% endif %} {%for field in form%}{%for property in properties%}{%ifequal field.name property%} <div class="fieldWrapper"> <label for="id_{{field.name}}">{% trans field.label %}</label> diff --git a/chimere/templates/edit_route.html b/chimere/templates/edit_route.html index 76524ac..5152ba5 100644 --- a/chimere/templates/edit_route.html +++ b/chimere/templates/edit_route.html @@ -1,5 +1,12 @@ {% extends "base_user.html" %} {% load i18n %} +{% block extra_head %} +{% if dated %}<script type="text/javascript" src="{{extra_url}}admin/jsi18n"></script> +<script type="text/javascript" src="{{extra_url}}media/js/core.js"></script> +<link rel="stylesheet" type="text/css" href="{{extra_url}}media/css/base.css"/> +<link rel="stylesheet" type="text/css" href="{{extra_url}}media/css/widgets.css"/> +{% endif %}{{ block.super }} +{% endblock %} {% block message_map %}{% endblock %} {% block message_edit%}<div id='content'>{{block.super}}{% endblock %} {% block content %}{{ block.super }} @@ -29,6 +36,20 @@ {{ form.picture.errors }} {{ form.picture }} </div>--> +{% if dated %} +<div class="fieldWrapper"> + <label for="id_start_date">{% trans "Start date" %}</label> + {{ form.start_date.errors }} + {{ form.start_date }} + <p class="help">{{ form.start_date.help_text }}</p> +</div> +<div class="fieldWrapper"> + <label for="id_end_date">{% trans "End date" %}</label> + {{ form.end_date.errors }} + {{ form.end_date }} + <p class="help">{{ form.end_date.help_text }}</p> +</div> +{% endif %} {%for field in form%}{%for property in properties%}{%ifequal field.name property%} <div class="fieldWrapper"> <label for="id_{{field.name}}">{% trans field.label %}</label> |