From af6de0fbb1df9bbcefb31a93001ca8dd5c27c955 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 22 Sep 2025 12:24:48 +0200 Subject: 🗃️ adapt migrations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migrations/0123_add_timezone_django_v4.py | 2 +- .../migrations/0120_add_timezone_django_v4.py | 2 +- .../migrations/0140_add_timezone_django_v4.py | 2 +- .../migrations/0123_add_timezone_django_v4.py | 2 +- .../migrations/0124_add_timezone_django_v4.py | 2 +- .../migrations/0264_add_timezone_django_v4.py | 459 --------------------- .../migrations/0265_add_timezone_django_v4.py | 459 +++++++++++++++++++++ .../migrations/0265_userrequesttoken_usertoken.py | 64 --- ishtar_common/migrations/0266_gis_importchunk.py | 31 -- .../migrations/0266_userrequesttoken_usertoken.py | 64 +++ .../migrations/0267_gis_import_key_init.py | 24 -- ishtar_common/migrations/0267_gis_importchunk.py | 31 ++ .../migrations/0268_gis_import_key_init.py | 24 ++ .../migrations/0268_import_import_immediatly.py | 18 - .../migrations/0269_import_import_immediatly.py | 18 + 15 files changed, 601 insertions(+), 601 deletions(-) delete mode 100644 ishtar_common/migrations/0264_add_timezone_django_v4.py create mode 100644 ishtar_common/migrations/0265_add_timezone_django_v4.py delete mode 100644 ishtar_common/migrations/0265_userrequesttoken_usertoken.py delete mode 100644 ishtar_common/migrations/0266_gis_importchunk.py create mode 100644 ishtar_common/migrations/0266_userrequesttoken_usertoken.py delete mode 100644 ishtar_common/migrations/0267_gis_import_key_init.py create mode 100644 ishtar_common/migrations/0267_gis_importchunk.py create mode 100644 ishtar_common/migrations/0268_gis_import_key_init.py delete mode 100644 ishtar_common/migrations/0268_import_import_immediatly.py create mode 100644 ishtar_common/migrations/0269_import_import_immediatly.py diff --git a/archaeological_context_records/migrations/0123_add_timezone_django_v4.py b/archaeological_context_records/migrations/0123_add_timezone_django_v4.py index 96f58b6ea..0d141f14a 100644 --- a/archaeological_context_records/migrations/0123_add_timezone_django_v4.py +++ b/archaeological_context_records/migrations/0123_add_timezone_django_v4.py @@ -10,7 +10,7 @@ import re class Migration(migrations.Migration): dependencies = [ - ('ishtar_common', '0264_add_timezone_django_v4'), + ('ishtar_common', '0265_add_timezone_django_v4'), ('archaeological_context_records', '0122_cr_ishtar_users'), ] diff --git a/archaeological_files/migrations/0120_add_timezone_django_v4.py b/archaeological_files/migrations/0120_add_timezone_django_v4.py index a89358fad..128d135bd 100644 --- a/archaeological_files/migrations/0120_add_timezone_django_v4.py +++ b/archaeological_files/migrations/0120_add_timezone_django_v4.py @@ -9,7 +9,7 @@ import re class Migration(migrations.Migration): dependencies = [ - ('ishtar_common', '0264_add_timezone_django_v4'), + ('ishtar_common', '0265_add_timezone_django_v4'), ('archaeological_files', '0119_file_ishtar_users'), ] diff --git a/archaeological_finds/migrations/0140_add_timezone_django_v4.py b/archaeological_finds/migrations/0140_add_timezone_django_v4.py index 51b3ab93b..205c0fe7a 100644 --- a/archaeological_finds/migrations/0140_add_timezone_django_v4.py +++ b/archaeological_finds/migrations/0140_add_timezone_django_v4.py @@ -11,7 +11,7 @@ import re class Migration(migrations.Migration): dependencies = [ - ('ishtar_common', '0264_add_timezone_django_v4'), + ('ishtar_common', '0265_add_timezone_django_v4'), ('archaeological_finds', '0139_data_migration_owner_ownership'), ] diff --git a/archaeological_operations/migrations/0123_add_timezone_django_v4.py b/archaeological_operations/migrations/0123_add_timezone_django_v4.py index b73ef94c2..6d581569b 100644 --- a/archaeological_operations/migrations/0123_add_timezone_django_v4.py +++ b/archaeological_operations/migrations/0123_add_timezone_django_v4.py @@ -10,7 +10,7 @@ import re class Migration(migrations.Migration): dependencies = [ - ('ishtar_common', '0264_add_timezone_django_v4'), + ('ishtar_common', '0265_add_timezone_django_v4'), ('archaeological_operations', '0122_admin_act_many_intented_to'), ] diff --git a/archaeological_warehouse/migrations/0124_add_timezone_django_v4.py b/archaeological_warehouse/migrations/0124_add_timezone_django_v4.py index ae0feaed9..356140e11 100644 --- a/archaeological_warehouse/migrations/0124_add_timezone_django_v4.py +++ b/archaeological_warehouse/migrations/0124_add_timezone_django_v4.py @@ -10,7 +10,7 @@ import re class Migration(migrations.Migration): dependencies = [ - ('ishtar_common', '0264_add_timezone_django_v4'), + ('ishtar_common', '0265_add_timezone_django_v4'), ('archaeological_warehouse', '0123_warehouse_container_ishtar_users'), ] diff --git a/ishtar_common/migrations/0264_add_timezone_django_v4.py b/ishtar_common/migrations/0264_add_timezone_django_v4.py deleted file mode 100644 index 03c206fd0..000000000 --- a/ishtar_common/migrations/0264_add_timezone_django_v4.py +++ /dev/null @@ -1,459 +0,0 @@ -# Generated by Django 4.2.19 on 2025-05-01 13:24 - -import django.core.validators -from django.db import migrations, models -import django.db.models.deletion -import django.utils.timezone -import re - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0263_media_exporter'), - ] - - operations = [ - migrations.AlterModelOptions( - name='historicaldocument', - options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Document', 'verbose_name_plural': 'historical Documents'}, - ), - migrations.AlterModelOptions( - name='historicalorganization', - options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Organization', 'verbose_name_plural': 'historical Organizations'}, - ), - migrations.AlterModelOptions( - name='historicalperson', - options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Person', 'verbose_name_plural': 'historical Persons'}, - ), - migrations.AlterField( - model_name='administrationtask', - name='creation_date', - field=models.DateTimeField(default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='area', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='authortype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='backgroundtask', - name='creation_date', - field=models.DateTimeField(default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='biographicalnote', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='biographicalnote', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='biographicalnote', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='biographicalnote', - name='imports', - field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), - ), - migrations.AlterField( - model_name='biographicalnote', - name='imports_updated', - field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), - ), - migrations.AlterField( - model_name='biographicalnote', - name='ishtar_users', - field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), - ), - migrations.AlterField( - model_name='biographicalnote', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='document', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='document', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='document', - name='duplicate', - field=models.BooleanField(blank=True, null=True, verbose_name='Has a duplicate'), - ), - migrations.AlterField( - model_name='document', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='document', - name='imports', - field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), - ), - migrations.AlterField( - model_name='document', - name='imports_updated', - field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), - ), - migrations.AlterField( - model_name='document', - name='ishtar_users', - field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), - ), - migrations.AlterField( - model_name='document', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='documenttag', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='exporttask', - name='creation_date', - field=models.DateTimeField(default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='format', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='gdprlog', - name='date', - field=models.DateTimeField(default=django.utils.timezone.now, verbose_name='Date'), - ), - 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='geobuffertype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='geodatatype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='geoorigintype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='geoprovidertype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='geovectordata', - name='imports', - field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), - ), - migrations.AlterField( - model_name='geovectordata', - name='imports_updated', - field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), - ), - migrations.AlterField( - model_name='historicaldocument', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='historicaldocument', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaldocument', - name='duplicate', - field=models.BooleanField(blank=True, null=True, verbose_name='Has a duplicate'), - ), - migrations.AlterField( - model_name='historicaldocument', - name='history_date', - field=models.DateTimeField(db_index=True), - ), - migrations.AlterField( - model_name='historicaldocument', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicaldocument', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='historicalorganization', - name='archived', - field=models.BooleanField(blank=True, default=False, null=True), - ), - migrations.AlterField( - model_name='historicalorganization', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='historicalorganization', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalorganization', - name='history_date', - field=models.DateTimeField(db_index=True), - ), - migrations.AlterField( - model_name='historicalorganization', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalorganization', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='historicalperson', - name='archived', - field=models.BooleanField(blank=True, default=False, null=True), - ), - migrations.AlterField( - model_name='historicalperson', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='historicalperson', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalperson', - name='history_date', - field=models.DateTimeField(db_index=True), - ), - migrations.AlterField( - model_name='historicalperson', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='historicalperson', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='importtask', - name='creation_date', - field=models.DateTimeField(default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='language', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='licensetype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='operationtype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='organization', - name='archived', - field=models.BooleanField(blank=True, default=False, null=True), - ), - migrations.AlterField( - model_name='organization', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='organization', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='organization', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='organization', - name='imports', - field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), - ), - migrations.AlterField( - model_name='organization', - name='imports_updated', - field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), - ), - migrations.AlterField( - model_name='organization', - name='ishtar_users', - field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), - ), - migrations.AlterField( - model_name='organization', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='organization', - name='merge_candidate', - field=models.ManyToManyField(blank=True, to='ishtar_common.organization'), - ), - migrations.AlterField( - model_name='organization', - name='merge_exclusion', - field=models.ManyToManyField(blank=True, to='ishtar_common.organization'), - ), - migrations.AlterField( - model_name='organizationtype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='person', - name='archived', - field=models.BooleanField(blank=True, default=False, null=True), - ), - migrations.AlterField( - model_name='person', - name='created', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='person', - name='data', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='person', - name='history_m2m', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='person', - name='imports', - field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), - ), - migrations.AlterField( - model_name='person', - name='imports_updated', - field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), - ), - migrations.AlterField( - model_name='person', - name='ishtar_users', - field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), - ), - migrations.AlterField( - model_name='person', - name='last_modified', - field=models.DateTimeField(blank=True, default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='person', - name='merge_candidate', - field=models.ManyToManyField(blank=True, to='ishtar_common.person'), - ), - migrations.AlterField( - model_name='person', - name='merge_exclusion', - field=models.ManyToManyField(blank=True, to='ishtar_common.person'), - ), - migrations.AlterField( - model_name='persontype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='profiletype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='shootingangle', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='sourcetype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='spatialreferencesystem', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='statscache', - name='updated', - field=models.DateTimeField(default=django.utils.timezone.now), - ), - migrations.AlterField( - model_name='statscache', - name='values', - field=models.JSONField(blank=True, default=dict), - ), - migrations.AlterField( - model_name='supporttype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='titletype', - name='txt_idx', - field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), - ), - migrations.AlterField( - model_name='town', - name='geodata', - field=models.ManyToManyField(blank=True, related_name='related_items_%(app_label)s_%(class)s', to='ishtar_common.geovectordata', verbose_name='Geodata'), - ), - migrations.AlterField( - model_name='town', - name='imports', - field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), - ), - migrations.AlterField( - model_name='town', - name='imports_updated', - field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), - ), - migrations.AlterField( - model_name='town', - name='main_geodata', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_%(app_label)s_%(class)s', to='ishtar_common.geovectordata', verbose_name='Main geodata'), - ), - ] diff --git a/ishtar_common/migrations/0265_add_timezone_django_v4.py b/ishtar_common/migrations/0265_add_timezone_django_v4.py new file mode 100644 index 000000000..ea4e0c595 --- /dev/null +++ b/ishtar_common/migrations/0265_add_timezone_django_v4.py @@ -0,0 +1,459 @@ +# Generated by Django 4.2.19 on 2025-05-01 13:24 + +import django.core.validators +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone +import re + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0264_source_type_add_order'), + ] + + operations = [ + migrations.AlterModelOptions( + name='historicaldocument', + options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Document', 'verbose_name_plural': 'historical Documents'}, + ), + migrations.AlterModelOptions( + name='historicalorganization', + options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Organization', 'verbose_name_plural': 'historical Organizations'}, + ), + migrations.AlterModelOptions( + name='historicalperson', + options={'get_latest_by': ('history_date', 'history_id'), 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Person', 'verbose_name_plural': 'historical Persons'}, + ), + migrations.AlterField( + model_name='administrationtask', + name='creation_date', + field=models.DateTimeField(default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='area', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='authortype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='backgroundtask', + name='creation_date', + field=models.DateTimeField(default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='biographicalnote', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='biographicalnote', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='biographicalnote', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='biographicalnote', + name='imports', + field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), + ), + migrations.AlterField( + model_name='biographicalnote', + name='imports_updated', + field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), + ), + migrations.AlterField( + model_name='biographicalnote', + name='ishtar_users', + field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), + ), + migrations.AlterField( + model_name='biographicalnote', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='document', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='document', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='document', + name='duplicate', + field=models.BooleanField(blank=True, null=True, verbose_name='Has a duplicate'), + ), + migrations.AlterField( + model_name='document', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='document', + name='imports', + field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), + ), + migrations.AlterField( + model_name='document', + name='imports_updated', + field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), + ), + migrations.AlterField( + model_name='document', + name='ishtar_users', + field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), + ), + migrations.AlterField( + model_name='document', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='documenttag', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='exporttask', + name='creation_date', + field=models.DateTimeField(default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='format', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='gdprlog', + name='date', + field=models.DateTimeField(default=django.utils.timezone.now, verbose_name='Date'), + ), + 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='geobuffertype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='geodatatype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='geoorigintype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='geoprovidertype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='geovectordata', + name='imports', + field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), + ), + migrations.AlterField( + model_name='geovectordata', + name='imports_updated', + field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), + ), + migrations.AlterField( + model_name='historicaldocument', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='historicaldocument', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaldocument', + name='duplicate', + field=models.BooleanField(blank=True, null=True, verbose_name='Has a duplicate'), + ), + migrations.AlterField( + model_name='historicaldocument', + name='history_date', + field=models.DateTimeField(db_index=True), + ), + migrations.AlterField( + model_name='historicaldocument', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicaldocument', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='historicalorganization', + name='archived', + field=models.BooleanField(blank=True, default=False, null=True), + ), + migrations.AlterField( + model_name='historicalorganization', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='historicalorganization', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalorganization', + name='history_date', + field=models.DateTimeField(db_index=True), + ), + migrations.AlterField( + model_name='historicalorganization', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalorganization', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='historicalperson', + name='archived', + field=models.BooleanField(blank=True, default=False, null=True), + ), + migrations.AlterField( + model_name='historicalperson', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='historicalperson', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalperson', + name='history_date', + field=models.DateTimeField(db_index=True), + ), + migrations.AlterField( + model_name='historicalperson', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='historicalperson', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='importtask', + name='creation_date', + field=models.DateTimeField(default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='language', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='licensetype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='operationtype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='organization', + name='archived', + field=models.BooleanField(blank=True, default=False, null=True), + ), + migrations.AlterField( + model_name='organization', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='organization', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='organization', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='organization', + name='imports', + field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), + ), + migrations.AlterField( + model_name='organization', + name='imports_updated', + field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), + ), + migrations.AlterField( + model_name='organization', + name='ishtar_users', + field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), + ), + migrations.AlterField( + model_name='organization', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='organization', + name='merge_candidate', + field=models.ManyToManyField(blank=True, to='ishtar_common.organization'), + ), + migrations.AlterField( + model_name='organization', + name='merge_exclusion', + field=models.ManyToManyField(blank=True, to='ishtar_common.organization'), + ), + migrations.AlterField( + model_name='organizationtype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='person', + name='archived', + field=models.BooleanField(blank=True, default=False, null=True), + ), + migrations.AlterField( + model_name='person', + name='created', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='person', + name='data', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='person', + name='history_m2m', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='person', + name='imports', + field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), + ), + migrations.AlterField( + model_name='person', + name='imports_updated', + field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), + ), + migrations.AlterField( + model_name='person', + name='ishtar_users', + field=models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser'), + ), + migrations.AlterField( + model_name='person', + name='last_modified', + field=models.DateTimeField(blank=True, default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='person', + name='merge_candidate', + field=models.ManyToManyField(blank=True, to='ishtar_common.person'), + ), + migrations.AlterField( + model_name='person', + name='merge_exclusion', + field=models.ManyToManyField(blank=True, to='ishtar_common.person'), + ), + migrations.AlterField( + model_name='persontype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='profiletype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='shootingangle', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='sourcetype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='spatialreferencesystem', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='statscache', + name='updated', + field=models.DateTimeField(default=django.utils.timezone.now), + ), + migrations.AlterField( + model_name='statscache', + name='values', + field=models.JSONField(blank=True, default=dict), + ), + migrations.AlterField( + model_name='supporttype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='titletype', + name='txt_idx', + field=models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z'), 'Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.', 'invalid')], verbose_name='Textual ID'), + ), + migrations.AlterField( + model_name='town', + name='geodata', + field=models.ManyToManyField(blank=True, related_name='related_items_%(app_label)s_%(class)s', to='ishtar_common.geovectordata', verbose_name='Geodata'), + ), + migrations.AlterField( + model_name='town', + name='imports', + field=models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports'), + ), + migrations.AlterField( + model_name='town', + name='imports_updated', + field=models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports'), + ), + migrations.AlterField( + model_name='town', + name='main_geodata', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_related_items_%(app_label)s_%(class)s', to='ishtar_common.geovectordata', verbose_name='Main geodata'), + ), + ] diff --git a/ishtar_common/migrations/0265_userrequesttoken_usertoken.py b/ishtar_common/migrations/0265_userrequesttoken_usertoken.py deleted file mode 100644 index 6f80a5368..000000000 --- a/ishtar_common/migrations/0265_userrequesttoken_usertoken.py +++ /dev/null @@ -1,64 +0,0 @@ -# Generated by Django 4.2.19 on 2025-05-09 08:25 - -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('auth', '0012_alter_user_first_name_max_length'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('ishtar_common', '0264_add_timezone_django_v4'), - ] - - operations = [ - migrations.CreateModel( - name='UserRequestToken', - fields=[ - ('created', models.DateTimeField(auto_now_add=True, verbose_name='Created')), - ('key', models.CharField(max_length=6, unique=True, verbose_name='Key')), - ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, primary_key=True, related_name='user_request_token', serialize=False, to=settings.AUTH_USER_MODEL, verbose_name='User')), - ('access_type', models.CharField(choices=[('R', 'GIS - read'), ('W', 'GIS - read/write')], default='R', max_length=1, verbose_name='Access type')), - ('name', models.TextField(verbose_name='Name')), - ('limit_date', models.DateField(blank=True, null=True, verbose_name='Limit date')), - ], - options={ - 'verbose_name': 'API - GIS - Request token', - 'verbose_name_plural': 'API - GIS - Request tokens', - }, - ), - migrations.AlterModelOptions( - name='importertype', - options={'ordering': ('name',), 'permissions': (('view_gis_importer', 'Can export to QGIS'), ('view_own_gis_importer', 'Can export own to QGIS'), ('change_gis_importer', 'Can import from QGIS'), ('change_own_gis_importer', 'Can import own to QGIS')), 'verbose_name': 'Importer - Type', 'verbose_name_plural': 'Importer - Types'}, - ), - migrations.AddField( - model_name='ishtarsiteprofile', - name='gis_connector', - field=models.BooleanField(default=False, verbose_name='GIS connector'), - ), - migrations.AlterField( - model_name='importertype', - name='type', - field=models.CharField(choices=[('tab', 'Table'), ('gis', 'GIS'), ('qgs', 'QGIS')], default='tab', max_length=3, verbose_name='Type'), - ), - migrations.CreateModel( - name='UserToken', - fields=[ - ('key', models.CharField(max_length=40, primary_key=True, serialize=False, verbose_name='Key')), - ('name', models.TextField(verbose_name='Name')), - ('created', models.DateTimeField(auto_now_add=True, verbose_name='Created')), - ('access_type', models.CharField(choices=[('R', 'GIS - read'), ('W', 'GIS - read/write')], default='R', max_length=1, verbose_name='Access type')), - ('limit_date', models.DateField(blank=True, null=True, verbose_name='Limit date')), - ('last_ip', models.GenericIPAddressField(blank=True, null=True, verbose_name='Last IP')), - ('last_access', models.DateField(auto_now_add=True, verbose_name='Last access date')), - ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='user_token', to=settings.AUTH_USER_MODEL, verbose_name='User')), - ], - options={ - 'verbose_name': 'API - GIS - Token', - 'verbose_name_plural': 'API - GIS - Tokens', - 'ordering': ('user', 'name', 'limit_date'), - }, - ), - ] diff --git a/ishtar_common/migrations/0266_gis_importchunk.py b/ishtar_common/migrations/0266_gis_importchunk.py deleted file mode 100644 index 8aef21697..000000000 --- a/ishtar_common/migrations/0266_gis_importchunk.py +++ /dev/null @@ -1,31 +0,0 @@ -# Generated by Django 4.2.19 on 2025-07-22 08:21 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0265_userrequesttoken_usertoken'), - ] - - operations = [ - migrations.CreateModel( - name='ImportChunk', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('send_datetime', models.DateTimeField(verbose_name='Send date')), - ('chunk', models.TextField(verbose_name='Chunk')), - ('number', models.IntegerField(verbose_name='Number')), - ('total', models.IntegerField(verbose_name='Total')), - ('import_immediatly', models.BooleanField(default=False, verbose_name='Import Immediatly')), - ('importer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.importertype', verbose_name='Importer')), - ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.ishtaruser', verbose_name='User')), - ], - options={ - 'verbose_name': 'Import - Chunk', - 'verbose_name_plural': 'Import - Chunks', - }, - ), - ] diff --git a/ishtar_common/migrations/0266_userrequesttoken_usertoken.py b/ishtar_common/migrations/0266_userrequesttoken_usertoken.py new file mode 100644 index 000000000..1ff39d163 --- /dev/null +++ b/ishtar_common/migrations/0266_userrequesttoken_usertoken.py @@ -0,0 +1,64 @@ +# Generated by Django 4.2.19 on 2025-05-09 08:25 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('auth', '0012_alter_user_first_name_max_length'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('ishtar_common', '0265_add_timezone_django_v4'), + ] + + operations = [ + migrations.CreateModel( + name='UserRequestToken', + fields=[ + ('created', models.DateTimeField(auto_now_add=True, verbose_name='Created')), + ('key', models.CharField(max_length=6, unique=True, verbose_name='Key')), + ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, primary_key=True, related_name='user_request_token', serialize=False, to=settings.AUTH_USER_MODEL, verbose_name='User')), + ('access_type', models.CharField(choices=[('R', 'GIS - read'), ('W', 'GIS - read/write')], default='R', max_length=1, verbose_name='Access type')), + ('name', models.TextField(verbose_name='Name')), + ('limit_date', models.DateField(blank=True, null=True, verbose_name='Limit date')), + ], + options={ + 'verbose_name': 'API - GIS - Request token', + 'verbose_name_plural': 'API - GIS - Request tokens', + }, + ), + migrations.AlterModelOptions( + name='importertype', + options={'ordering': ('name',), 'permissions': (('view_gis_importer', 'Can export to QGIS'), ('view_own_gis_importer', 'Can export own to QGIS'), ('change_gis_importer', 'Can import from QGIS'), ('change_own_gis_importer', 'Can import own to QGIS')), 'verbose_name': 'Importer - Type', 'verbose_name_plural': 'Importer - Types'}, + ), + migrations.AddField( + model_name='ishtarsiteprofile', + name='gis_connector', + field=models.BooleanField(default=False, verbose_name='GIS connector'), + ), + migrations.AlterField( + model_name='importertype', + name='type', + field=models.CharField(choices=[('tab', 'Table'), ('gis', 'GIS'), ('qgs', 'QGIS')], default='tab', max_length=3, verbose_name='Type'), + ), + migrations.CreateModel( + name='UserToken', + fields=[ + ('key', models.CharField(max_length=40, primary_key=True, serialize=False, verbose_name='Key')), + ('name', models.TextField(verbose_name='Name')), + ('created', models.DateTimeField(auto_now_add=True, verbose_name='Created')), + ('access_type', models.CharField(choices=[('R', 'GIS - read'), ('W', 'GIS - read/write')], default='R', max_length=1, verbose_name='Access type')), + ('limit_date', models.DateField(blank=True, null=True, verbose_name='Limit date')), + ('last_ip', models.GenericIPAddressField(blank=True, null=True, verbose_name='Last IP')), + ('last_access', models.DateField(auto_now_add=True, verbose_name='Last access date')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='user_token', to=settings.AUTH_USER_MODEL, verbose_name='User')), + ], + options={ + 'verbose_name': 'API - GIS - Token', + 'verbose_name_plural': 'API - GIS - Tokens', + 'ordering': ('user', 'name', 'limit_date'), + }, + ), + ] diff --git a/ishtar_common/migrations/0267_gis_import_key_init.py b/ishtar_common/migrations/0267_gis_import_key_init.py deleted file mode 100644 index b532acd95..000000000 --- a/ishtar_common/migrations/0267_gis_import_key_init.py +++ /dev/null @@ -1,24 +0,0 @@ -from django.db import migrations - -from ishtar_common.utils_migrations import update_import_key - - -def update_importkey(apps, __): - updated = 0 - GeoVectorData = apps.get_model("ishtar_common", "geovectordata") - for data in GeoVectorData.objects.all(): - updated += 1 if update_import_key(data) else 0 - if updated: - print() - print(f"* {updated} GeoVectorData import_key updated") - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0266_gis_importchunk'), - ] - - operations = [ - migrations.RunPython(update_importkey) - ] diff --git a/ishtar_common/migrations/0267_gis_importchunk.py b/ishtar_common/migrations/0267_gis_importchunk.py new file mode 100644 index 000000000..220577221 --- /dev/null +++ b/ishtar_common/migrations/0267_gis_importchunk.py @@ -0,0 +1,31 @@ +# Generated by Django 4.2.19 on 2025-07-22 08:21 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0266_userrequesttoken_usertoken'), + ] + + operations = [ + migrations.CreateModel( + name='ImportChunk', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('send_datetime', models.DateTimeField(verbose_name='Send date')), + ('chunk', models.TextField(verbose_name='Chunk')), + ('number', models.IntegerField(verbose_name='Number')), + ('total', models.IntegerField(verbose_name='Total')), + ('import_immediatly', models.BooleanField(default=False, verbose_name='Import Immediatly')), + ('importer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.importertype', verbose_name='Importer')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.ishtaruser', verbose_name='User')), + ], + options={ + 'verbose_name': 'Import - Chunk', + 'verbose_name_plural': 'Import - Chunks', + }, + ), + ] diff --git a/ishtar_common/migrations/0268_gis_import_key_init.py b/ishtar_common/migrations/0268_gis_import_key_init.py new file mode 100644 index 000000000..04909f3ee --- /dev/null +++ b/ishtar_common/migrations/0268_gis_import_key_init.py @@ -0,0 +1,24 @@ +from django.db import migrations + +from ishtar_common.utils_migrations import update_import_key + + +def update_importkey(apps, __): + updated = 0 + GeoVectorData = apps.get_model("ishtar_common", "geovectordata") + for data in GeoVectorData.objects.all(): + updated += 1 if update_import_key(data) else 0 + if updated: + print() + print(f"* {updated} GeoVectorData import_key updated") + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0267_gis_importchunk'), + ] + + operations = [ + migrations.RunPython(update_importkey) + ] diff --git a/ishtar_common/migrations/0268_import_import_immediatly.py b/ishtar_common/migrations/0268_import_import_immediatly.py deleted file mode 100644 index 45f657945..000000000 --- a/ishtar_common/migrations/0268_import_import_immediatly.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.19 on 2025-08-05 09:33 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('ishtar_common', '0267_gis_import_key_init'), - ] - - operations = [ - migrations.AddField( - model_name='import', - name='import_immediatly', - field=models.BooleanField(default=False, verbose_name='Import Immediatly'), - ), - ] diff --git a/ishtar_common/migrations/0269_import_import_immediatly.py b/ishtar_common/migrations/0269_import_import_immediatly.py new file mode 100644 index 000000000..cb063cff1 --- /dev/null +++ b/ishtar_common/migrations/0269_import_import_immediatly.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.19 on 2025-08-05 09:33 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0268_gis_import_key_init'), + ] + + operations = [ + migrations.AddField( + model_name='import', + name='import_immediatly', + field=models.BooleanField(default=False, verbose_name='Import Immediatly'), + ), + ] -- cgit v1.2.3