diff options
Diffstat (limited to 'chimere/models.py')
-rw-r--r-- | chimere/models.py | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/chimere/models.py b/chimere/models.py index 85419dc..7e5adbe 100644 --- a/chimere/models.py +++ b/chimere/models.py @@ -38,6 +38,7 @@ from django.utils.translation import ugettext_lazy as _ from chimere.widgets import PointField, RouteField, SelectMultipleField, \ TextareaWidget from chimere.managers import BaseGeoManager +from chimere.utils import KMLManager, OSMManager class News(models.Model): """News of the site @@ -190,6 +191,28 @@ class SubCategory(models.Model): return [(category, sub_cats) for category, sub_cats \ in sub_categories.items()] +IMPORTERS = {'KML':KMLManager, + 'OSM':OSMManager} + +IMPORTER_CHOICES = (('KML', 'KML'), + ('OSM', 'OSM')) + +class Importer(models.Model): + ''' + Data importer for a specific subcategory + ''' + importer_type = models.CharField(_(u"Importer type"), max_length=4, + choices=IMPORTER_CHOICES) + source_url = models.CharField(_(u"Source URL"), max_length=200, + blank=True, null=True) + filtr = models.CharField(_(u"Filter"), max_length=200, + blank=True, null=True) + subcategory = models.ForeignKey(SubCategory, + verbose_name=_(u"Associated subcategory")) + + class Meta: + verbose_name = _(u"Importer") + class GeographicItem(models.Model): name = models.CharField(_(u"Name"), max_length=150) categories = SelectMultipleField(SubCategory) @@ -202,11 +225,15 @@ class GeographicItem(models.Model): STATUS = (('S', _(u'Submited')), ('A', _(u'Available')), ('M', _(u'Modified')), - ('D', _(u'Disabled')),) + ('D', _(u'Disabled')), + ('I', _(u'Imported')), + ('E', _(u"Excluded"))) STATUS_DCT = {} for key, label in STATUS: STATUS_DCT[key] = label status = models.CharField(_(u"Status"), max_length=1, choices=STATUS) + import_key = models.CharField(_(u"Import key"), max_length=200, + blank=True, null=True) if settings.CHIMERE_DAYS_BEFORE_EVENT: start_date = models.DateField(_(u"Start date"), blank=True, null=True, help_text=_(u"Not mandatory. Set it for dated item such as event. "\ |