summaryrefslogtreecommitdiff
path: root/chimere/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/forms.py')
-rw-r--r--chimere/forms.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/chimere/forms.py b/chimere/forms.py
index 62ad101..1d7abb7 100644
--- a/chimere/forms.py
+++ b/chimere/forms.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2008-2013 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
+# Copyright (C) 2008-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as
@@ -20,6 +20,7 @@
"""
Forms
"""
+
from django import forms
from django.conf import settings
from django.contrib.gis.db import models
@@ -31,6 +32,8 @@ from django.contrib.auth.models import User, Permission, ContentType
from django.contrib.admin.widgets import AdminDateWidget
from django.core.mail import EmailMessage, BadHeaderError
+if hasattr(settings, 'CHIMERE_SEARCH_ENGINE') and settings.CHIMERE_SEARCH_ENGINE:
+ from haystack.forms import SearchForm as HaystackSearchForm
from chimere.models import Marker, Route, PropertyModel, Property, Map,\
News, Category, SubCategory, RouteFile, MultimediaFile, MultimediaType, \
PictureFile, Importer, PropertyModelChoice, IFRAME_LINKS, \
@@ -165,7 +168,8 @@ class ImporterAdminForm(forms.ModelForm):
not self.cleaned_data.get('zipped'):
raise forms.ValidationError(_(u"Shapefiles must be provided in a "\
u"zipped archive."))
- if self.cleaned_data.get('source') and \
+ if self.cleaned_data.get('importer_type') not in ('XSLT', 'XXLT') and \
+ self.cleaned_data.get('source') and \
self.cleaned_data.get('source_file'):
raise forms.ValidationError(_(u"You have to set \"source\" or "
u"\"source file\" but not both."))
@@ -636,3 +640,8 @@ class RoutingForm(forms.Form):
for speed, lbl in settings.CHIMERE_ROUTING_SPEEDS[transport]:
self.fields['speed'].widget.choices.append(
("%s_%d" % (transport, speed), _(lbl)))
+
+SearchForm = None
+if hasattr(settings, 'CHIMERE_SEARCH_ENGINE') and settings.CHIMERE_SEARCH_ENGINE:
+ class SearchForm(HaystackSearchForm):
+ pass