From c6ac83b9108e1139f5c982e9ffda47525679fd25 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 1 Jun 2017 19:45:55 +0200 Subject: Add the ability to scheduled administration task inside Django admin --- ishtar_common/admin.py | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'ishtar_common/admin.py') diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index cdff25439..adf006502 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2010-2016 Étienne Loks +# Copyright (C) 2010-2017 Étienne Loks # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -312,6 +312,32 @@ class ItemKeyAdmin(admin.ModelAdmin): admin.site.register(models.ItemKey, ItemKeyAdmin) +class AdministrationScriptAdmin(admin.ModelAdmin): + list_display = ['name', 'path'] + + def get_readonly_fields(self, request, obj=None): + if obj: + return ('path',) + return [] + +admin.site.register(models.AdministrationScript, AdministrationScriptAdmin) + + +class AdministrationTaskAdmin(admin.ModelAdmin): + readonly_fields = ('state', 'creation_date', 'launch_date', + 'finished_date', "result", ) + list_display = ['script', 'state', 'creation_date', 'launch_date', + 'finished_date', "result"] + list_filter = ['script', 'state'] + + def get_readonly_fields(self, request, obj=None): + if obj: + return ("script", ) + self.readonly_fields + return self.readonly_fields + +admin.site.register(models.AdministrationTask, AdministrationTaskAdmin) + + basic_models = [models.DocumentTemplate] if settings.COUNTRY == 'fr': basic_models += [models.Arrondissement, models.Canton] -- cgit v1.2.3