diff options
Diffstat (limited to 'chimere/admin.py')
-rw-r--r-- | chimere/admin.py | 20 |
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): """ |