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):      """ | 
