diff options
| -rw-r--r-- | archaeological_finds/migrations/0115_auto_20240215_1547.py (renamed from archaeological_finds/migrations/0115_auto_20240215_1443.py) | 4 | ||||
| -rw-r--r-- | archaeological_finds/migrations/0116_data_migration_museum_technical.py | 2 | ||||
| -rw-r--r-- | ishtar_common/admin.py | 7 | ||||
| -rw-r--r-- | ishtar_common/migrations/0236_auto_20240215_1547.py (renamed from ishtar_common/migrations/0236_auto_20240209_1558.py) | 6 | ||||
| -rw-r--r-- | ishtar_common/migrations/0237_data_migration_licenses_shootingangle.py | 2 | ||||
| -rw-r--r-- | ishtar_common/models.py | 16 | 
6 files changed, 29 insertions, 8 deletions
| diff --git a/archaeological_finds/migrations/0115_auto_20240215_1443.py b/archaeological_finds/migrations/0115_auto_20240215_1547.py index 529ab5abd..4bfaec94e 100644 --- a/archaeological_finds/migrations/0115_auto_20240215_1443.py +++ b/archaeological_finds/migrations/0115_auto_20240215_1547.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.24 on 2024-02-15 14:43 +# Generated by Django 2.2.24 on 2024-02-15 15:47  import django.core.validators  from django.db import migrations, models @@ -10,7 +10,7 @@ import re  class Migration(migrations.Migration):      dependencies = [ -        ('ishtar_common', '0237_data_migration_licenses_shootingangle'), +        ('ishtar_common', '0236_auto_20240215_1547'),          ('archaeological_finds', '0114_auto_20231115_1617'),      ] diff --git a/archaeological_finds/migrations/0116_data_migration_museum_technical.py b/archaeological_finds/migrations/0116_data_migration_museum_technical.py index e0f393e36..523388f31 100644 --- a/archaeological_finds/migrations/0116_data_migration_museum_technical.py +++ b/archaeological_finds/migrations/0116_data_migration_museum_technical.py @@ -14,7 +14,7 @@ def load_data(_, __):  class Migration(migrations.Migration):      dependencies = [ -        ('archaeological_finds', '0115_auto_20240215_1443'), +        ('archaeological_finds', '0115_auto_20240215_1547'),      ]      operations = [ diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index da35fe48c..527584f39 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -735,6 +735,13 @@ class PersonAdmin(HistorizedObjectAdmin):  admin_site.register(models.Person, PersonAdmin) +@admin.register(models.BiographicalNote, site=admin_site) +class BiographicalNoteAdmin(admin.ModelAdmin): +    list_display = ("denomination", "last_name", "first_name") +    autocomplete_fields = ["person", "organization"] +    model = models.BiographicalNote + +  @admin.register(models.GDPRLog, site=admin_site)  class GDPRLogAdmin(admin.ModelAdmin):      list_display = ("user", "date", "ip", "routable_ip", "activity") diff --git a/ishtar_common/migrations/0236_auto_20240209_1558.py b/ishtar_common/migrations/0236_auto_20240215_1547.py index 6fd6014fe..4a2897560 100644 --- a/ishtar_common/migrations/0236_auto_20240209_1558.py +++ b/ishtar_common/migrations/0236_auto_20240215_1547.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.24 on 2024-02-09 15:58 +# Generated by Django 2.2.24 on 2024-02-15 15:47  import django.core.validators  from django.db import migrations, models @@ -68,7 +68,7 @@ class Migration(migrations.Migration):          migrations.AddField(              model_name='ishtarsiteprofile',              name='museum_complete_identifier', -            field=models.TextField(default='{{museum_id_prefix}}.{{museum_id}}.{{museum_id_suffix}}', help_text='Formula to manage cached label. If not set a default formula is used.', verbose_name='Find - Complete museum ID'), +            field=models.TextField(default='{% if museum_id_prefix %}{{museum_id_prefix}}.{% endif %}{{museum_id}}{% if museum_id_suffix %}.{{museum_id_suffix}}{% endif %}', help_text='Formula to manage cached label. If not set a default formula is used.', verbose_name='Find - Complete museum ID'),          ),          migrations.AddField(              model_name='licensetype', @@ -106,8 +106,10 @@ class Migration(migrations.Migration):                  ('death_year', models.PositiveIntegerField(blank=True, null=True, verbose_name='Year of death')),                  ('biography', models.TextField(blank=True, default='', verbose_name='Biography')),                  ('biography_format', models.CharField(blank=True, choices=[('NO', 'None'), ('MD', 'Markdown'), ('HT', 'HTML')], default='NO', max_length=2, verbose_name='Biography format')), +                ('organization', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.Organization', verbose_name='Organization')),                  ('person', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.Person', verbose_name='Person')),              ], +            options={'verbose_name': 'Biographical note', 'verbose_name_plural': 'Biographical notes'},          ),          migrations.AddField(              model_name='document', diff --git a/ishtar_common/migrations/0237_data_migration_licenses_shootingangle.py b/ishtar_common/migrations/0237_data_migration_licenses_shootingangle.py index ec25de658..9d5190c15 100644 --- a/ishtar_common/migrations/0237_data_migration_licenses_shootingangle.py +++ b/ishtar_common/migrations/0237_data_migration_licenses_shootingangle.py @@ -14,7 +14,7 @@ def load_data(_, __):  class Migration(migrations.Migration):      dependencies = [ -        ('ishtar_common', '0236_auto_20240209_1558'), +        ('ishtar_common', '0236_auto_20240215_1547'),      ]      operations = [ diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 5858fdb78..d51784b72 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -1385,7 +1385,7 @@ class IshtarSiteProfile(models.Model, Cached):      )      museum_complete_identifier = models.TextField(          _("Find - Complete museum ID"), -        default="{{museum_id_prefix}}.{{museum_id}}.{{museum_id_suffix}}", +        default="{% if museum_id_prefix %}{{museum_id_prefix}}.{% endif %}{{museum_id}}{% if museum_id_suffix %}.{{museum_id_suffix}}{% endif %}",          help_text=_(              "Formula to manage cached label. If not set a default formula is used."          ), @@ -3244,12 +3244,24 @@ class BiographicalNote(models.Model):      biography_format = models.CharField(          _("Biography format"), blank=True, default="NO", max_length=2, choices=TEXT_FORMAT      ) -    person = models.ForeignKey(Person, verbose_name=_("Person"), blank=True, null=True, on_delete=models.SET_NULL) +    person = models.ForeignKey(Person, blank=True, null=True, on_delete=models.SET_NULL, verbose_name=_("Person")) +    organization = models.ForeignKey( +        Organization, blank=True, null=True, on_delete=models.SET_NULL, +        verbose_name=_("Organization"), +    ) + +    class Meta: +        verbose_name = _("Biographical note") +        verbose_name_plural = _("Biographical notes") +    ADMIN_SECTION = _("Directory")      @property      def formatted_biography(self):          return text_format(self.biography, self.biography_format) +    def __str__(self): +        return self.denomination +  GDPR_ACTIVITY = (      ("DC", _("Directory consultation")), | 
