summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar_common/admin.py6
-rw-r--r--ishtar_common/migrations/0264_source_type_add_order.py47
-rw-r--r--ishtar_common/models.py4
3 files changed, 54 insertions, 3 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index ad6223c3c..5775eada8 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -1680,7 +1680,6 @@ class GeneralTypeAdmin(PreviousNextAdmin, ChangeParentAdmin, ImportActionAdmin,
general_models = [
- models.SourceType,
models.AuthorType,
models.Language,
models.LicenseType,
@@ -1695,6 +1694,11 @@ for model in general_models:
admin_site.register(model, GeneralTypeAdmin)
+@admin.register(models.SourceType, site=admin_site)
+class SourceTypeAdmin(GeneralTypeAdmin):
+ LIST_DISPLAY = ["label", "txt_idx", "available", "parent", "order", "comment"]
+
+
@admin.register(models.OrganizationType, site=admin_site)
class PersonTypeAdmin(GeneralTypeAdmin):
LIST_DISPLAY = ["label", "grammatical_gender", "txt_idx", "available", "comment"]
diff --git a/ishtar_common/migrations/0264_source_type_add_order.py b/ishtar_common/migrations/0264_source_type_add_order.py
new file mode 100644
index 000000000..7110a0834
--- /dev/null
+++ b/ishtar_common/migrations/0264_source_type_add_order.py
@@ -0,0 +1,47 @@
+# Generated by Django 2.2.24 on 2025-09-17 15:11
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('ishtar_common', '0263_media_exporter'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='sourcetype',
+ options={'ordering': ('parent__order', 'parent__label', 'order', 'label'), 'verbose_name': 'Document type', 'verbose_name_plural': 'Document types'},
+ ),
+ migrations.AddField(
+ model_name='sourcetype',
+ name='order',
+ field=models.IntegerField(default=10, verbose_name='Order'),
+ ),
+ migrations.AlterField(
+ model_name='documenttemplate',
+ name='export_format',
+ field=models.CharField(blank=True, choices=[('', '---')], default='', max_length=4, verbose_name='Export format'),
+ ),
+ migrations.AlterField(
+ model_name='gdprlog',
+ name='persons',
+ field=models.ManyToManyField(blank=True, related_name='logs', to='ishtar_common.GDPRPerson', verbose_name='Persons'),
+ ),
+ migrations.AlterField(
+ model_name='mediaexporter',
+ name='naming',
+ field=models.TextField(blank=True, default='', help_text='Jinja template. 3 variables are available: "document" for the document, "item" for associated item and "item_type" for the item type (example: "find"). If left empty, each media will be named with incremented numbers.', verbose_name='Naming'),
+ ),
+ migrations.AlterField(
+ model_name='mediaexporter',
+ name='query',
+ field=models.TextField(blank=True, default='', help_text="Use 'text' query used in Ishtar search input. The query is from the document point of view. Can be left empty to export all attached media.", verbose_name='Filter query'),
+ ),
+ migrations.AlterField(
+ model_name='permissionquery',
+ name='request',
+ field=models.TextField(blank=True, default='', help_text="Use 'text' query used in Ishtar search input", verbose_name='Query'),
+ ),
+ ]
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index a5fcc1a91..8ffc2ff2f 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -4586,7 +4586,7 @@ def author_post_save(sender, **kwargs):
post_save.connect(author_post_save, sender=Author)
-class SourceType(HierarchicalType):
+class SourceType(OrderedHierarchicalType):
coins_type = models.CharField(
_("COInS export - type"), default="document", max_length=100
)
@@ -4603,7 +4603,7 @@ class SourceType(HierarchicalType):
class Meta:
verbose_name = _("Document type")
verbose_name_plural = _("Document types")
- ordering = ["label"]
+ ordering = ("parent__order", "parent__label", "order", "label",)
ADMIN_SECTION = _("Documents")