diff options
Diffstat (limited to 'chimere/admin.py')
-rw-r--r-- | chimere/admin.py | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/chimere/admin.py b/chimere/admin.py index 4e632b8..889f4c2 100644 --- a/chimere/admin.py +++ b/chimere/admin.py @@ -23,12 +23,14 @@ Settings for administration pages from django.conf import settings from django.contrib import admin +from django.utils.translation import ugettext_lazy as _ +from chimere import tasks +from chimere.forms import MarkerAdminForm, RouteAdminForm, AreaAdminForm,\ + NewsAdminForm, CategoryAdminForm from chimere.models import Category, Icon, SubCategory, Marker, \ PropertyModel, News, Route, Area, ColorTheme, Color, RouteFile,\ MultimediaType, MultimediaFile, PictureFile, Importer -from chimere.forms import MarkerAdminForm, RouteAdminForm, AreaAdminForm,\ - NewsAdminForm, CategoryAdminForm from chimere.widgets import TextareaWidget def get_areas_for_user(user): @@ -106,9 +108,23 @@ class SubCategoryAdmin(admin.ModelAdmin): list_display = ('name', 'category', 'available') list_filter = ('category',) +def importing(modeladmin, request, queryset): + for importer in queryset: + importer.state = unicode(tasks.IMPORT_MESSAGES['import_pending'][0]) + importer.save() + tasks.importing(importer.pk) +importing.short_description = _(u"Import") + +def cancel_import(modeladmin, request, queryset): + for importer in queryset: + importer.state = tasks.IMPORT_MESSAGES['import_cancel'][0] + importer.save() +cancel_import.short_description = _(u"Cancel import") + class ImporterAdmin(admin.ModelAdmin): - list_display = ('importer_type', 'subcategory', 'source_url', 'filtr') - list_filter = ('importer_type',) + list_display = ('importer_type', 'source_url', 'state', 'filtr') + list_filter = ('importer_type', 'source_url') + actions = [importing, cancel_import] class NewsAdmin(admin.ModelAdmin): """ |