summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar_common/admin.py28
-rw-r--r--ishtar_common/models.py2
2 files changed, 30 insertions, 0 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index 36331e2f7..ad6223c3c 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -2454,6 +2454,34 @@ class ImportGroupAdmin(admin.ModelAdmin):
autocomplete_fields = ["user"]
+class MediaExporterForm(forms.ModelForm):
+ class Meta:
+ model = models.MediaExporter
+ exclude = []
+
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
+ self.fields["associated_model"].choices = [
+ ('', '-' * 9)] + [
+ (model.pk, str(model)) for model in models.ImporterModel.objects.all()
+ if hasattr(model.get_class(), "documents")
+ ]
+
+
+@admin.register(models.MediaExporter, site=admin_site)
+class MediaExporterAdmin(admin.ModelAdmin):
+ list_display = ("name", "associated_model", "available")
+ actions = [
+ change_value("available", True, _("Make available")),
+ change_value("available", False, _("Make unavailable")),
+ ]
+ list_filter = ["available"]
+ search_fields = ["name"]
+ autocomplete_fields = ["users"]
+ prepopulated_fields = {"slug": ("name",)}
+ form = MediaExporterForm
+
+
class OperationTypeAdmin(GeneralTypeAdmin):
extra_list_display = ["order", "preventive"]
model = models.OperationType
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index aa18f6182..579c3c644 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -122,6 +122,7 @@ from ishtar_common.models_imports import (
ImporterDefaultValues,
ImporterColumn,
ImporterDuplicateField,
+ MediaExporter,
Regexp,
ImportTarget,
TargetKey,
@@ -200,6 +201,7 @@ __all__ = [
"ImporterColumn",
"ImporterDuplicateField",
"Imported",
+ "MediaExporter",
"FilteredSheet",
"PermissionQuery",
"Regexp",