summaryrefslogtreecommitdiff
path: root/chimere/admin.py
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/admin.py')
-rw-r--r--chimere/admin.py20
1 files changed, 17 insertions, 3 deletions
diff --git a/chimere/admin.py b/chimere/admin.py
index afc818c..42d536e 100644
--- a/chimere/admin.py
+++ b/chimere/admin.py
@@ -152,10 +152,24 @@ def cancel_import(modeladmin, request, queryset):
importer.save()
cancel_import.short_description = _(u"Cancel import")
+def cancel_export(modeladmin, request, queryset):
+ for importer in queryset:
+ importer.state = tasks.IMPORT_MESSAGES['export_cancel'][0]
+ importer.save()
+cancel_export.short_description = _(u"Cancel export")
+
+def export_to_osm(modeladmin, request, queryset):
+ importers = modeladmin.model.objects.filter(importer_type='OSM')
+ for importer in queryset:
+ importer.state = unicode(tasks.IMPORT_MESSAGES['export_pending'][0])
+ importer.save()
+ tasks.exporting(importer.pk)
+export_to_osm.short_description = _(u"Export to osm")
+
class ImporterAdmin(admin.ModelAdmin):
- list_display = ('importer_type', 'source_url', 'state', 'filtr')
- list_filter = ('importer_type', 'source_url')
- actions = [importing, cancel_import]
+ list_display = ('importer_type', 'source', 'state', 'filtr')
+ list_filter = ('importer_type', 'source')
+ actions = [importing, cancel_import, cancel_export]
class NewsAdmin(admin.ModelAdmin):
"""