diff options
| -rw-r--r-- | chimere/forms.py | 10 | ||||
| -rw-r--r-- | chimere/templatetags/chimere_tags.py | 2 | ||||
| -rw-r--r-- | chimere/urls.py | 8 | ||||
| -rw-r--r-- | chimere/views.py | 3 | 
4 files changed, 19 insertions, 4 deletions
| diff --git a/chimere/forms.py b/chimere/forms.py index 22cdc8f..655bbd3 100644 --- a/chimere/forms.py +++ b/chimere/forms.py @@ -603,13 +603,19 @@ class AreaForm(AreaAdminForm):      class Meta:          model = Area -CHIMERE_ROUTING_TRANSPORT = [(idx, _(lbl)) +CHIMERE_ROUTING_TRANSPORT = [] +ROUTING_INIT = None +if hasattr(settings, 'CHIMERE_ROUTING_TRANSPORT'): +    CHIMERE_ROUTING_TRANSPORT = [(idx, _(lbl))                               for idx, lbl in settings.CHIMERE_ROUTING_TRANSPORT] +    if CHIMERE_ROUTING_TRANSPORT: +        ROUTING_INIT = CHIMERE_ROUTING_TRANSPORT[0][0] +  class RoutingForm(forms.Form):      transport = forms.ChoiceField(label='', widget=ButtonSelectWidget,                                 choices=CHIMERE_ROUTING_TRANSPORT, -                               initial=CHIMERE_ROUTING_TRANSPORT[0][0]) +                               initial=ROUTING_INIT)      start = forms.CharField(label=_(u"Start"), widget=NominatimWidget)      end = forms.CharField(label=_(u"Finish"), widget=NominatimWidget)      speed = forms.ChoiceField(label=_(u"Speed"), choices=[], diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py index 14860b8..ed835a8 100644 --- a/chimere/templatetags/chimere_tags.py +++ b/chimere/templatetags/chimere_tags.py @@ -164,6 +164,8 @@ def map_menu(context):  @register.inclusion_tag('chimere/blocks/routing.html', takes_context=True)  def routing(context): +    if not settings.CHIMERE_ENABLE_ROUTING: +        return {'routing':False}      context_data =  {           'routing':settings.CHIMERE_ENABLE_ROUTING,           'itinerary_form':context['itinerary_form'], diff --git a/chimere/urls.py b/chimere/urls.py index aa95921..164ef68 100644 --- a/chimere/urls.py +++ b/chimere/urls.py @@ -20,6 +20,7 @@  from django.conf import settings  from django.conf.urls.defaults import *  from django.contrib import admin +from django.core.exceptions import ImproperlyConfigured  admin.autodiscover()  from chimere.models import Area @@ -51,7 +52,12 @@ if settings.CHIMERE_FEEDS:              LatestPOIsByZoneID(), name='feeds-areaid'),      ) -if settings.CHIMERE_ENABLE_ROUTING: +if hasattr(settings, 'CHIMERE_ENABLE_ROUTING') \ +   and settings.CHIMERE_ENABLE_ROUTING: +    if not hasattr(settings, 'CHIMERE_ROUTING_TRANSPORT') \ +      or not settings.CHIMERE_ROUTING_TRANSPORT: +        raise ImproperlyConfigured(u"CHIMERE_ROUTING_TRANSPORT must be set in"\ +                                   u" settings if you enable routing")      urlpatterns += patterns('chimere.views',          url(r'^(?P<area_name>[a-zA-Z0-9_-]*/)?route/'\              r'(?P<transport>(%s))/((?P<speed>[0-9][0-9]*)/)?' diff --git a/chimere/views.py b/chimere/views.py index a8c3f19..f6e3f84 100644 --- a/chimere/views.py +++ b/chimere/views.py @@ -174,10 +174,11 @@ def index(request, area_name=None, default_area=None, simple=False,           'map_layer':settings.CHIMERE_DEFAULT_MAP_LAYER,           'dynamic_categories':response_dct['dynamic_categories'],           'zoomout':zoomout, -         'contact_email':settings.CONTACT_EMAIL,           'has_default_area':Area.objects.filter(default=True).count(),           'zoomout':zoomout          }) +    if settings.CONTACT_EMAIL: +        response_dct['contact_email'] = settings.CONTACT_EMAIL      response_dct['share_networks'], net_dct = \                     getShareNetwork(request, response_dct['area_name'])      tpl = 'chimere/main_map.html' | 
