1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
# Generated by Django 4.2.19 on 2026-03-24 15:39
from django.conf import settings
import django.contrib.postgres.search
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
import ishtar_common.models
import ishtar_common.models_common
import re
import uuid
class Migration(migrations.Migration):
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('ishtar_common', '0273_searchcache'),
]
operations = [
migrations.AlterField(
model_name='documenttemplate',
name='export_format',
field=models.CharField(blank=True, choices=[('docx', 'DOCX'), ('html', 'HTML'), ('pdf', 'PDF'), ('xlsx', 'XLSX')], default='', max_length=4, verbose_name='Export format'),
),
migrations.CreateModel(
name='QualifiedBiographicalNoteType',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('label', models.TextField(verbose_name='Label')),
('txt_idx', 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')),
('comment', models.TextField(blank=True, default='', verbose_name='Comment')),
('available', models.BooleanField(default=True, verbose_name='Available')),
('order', models.IntegerField(default=1, verbose_name='Order')),
('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.qualifiedbiographicalnotetype', verbose_name='Parent')),
],
options={
'verbose_name': 'Qualification type',
'verbose_name_plural': 'Qualification types',
'ordering': ['order', 'label'],
},
bases=(ishtar_common.models_common.Cached, models.Model),
),
migrations.CreateModel(
name='QualifiedBiographicalNote',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('search_vector', django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto filled at save', null=True, verbose_name='Search vector')),
('timestamp_geo', models.IntegerField(blank=True, null=True, verbose_name='Timestamp geo')),
('timestamp_label', models.IntegerField(blank=True, null=True, verbose_name='Timestamp label')),
('data', models.JSONField(blank=True, default=dict)),
('last_modified', models.DateTimeField(blank=True, default=django.utils.timezone.now)),
('created', models.DateTimeField(blank=True, default=django.utils.timezone.now)),
('history_m2m', models.JSONField(blank=True, default=dict)),
('need_update', models.BooleanField(default=False, verbose_name='Need update')),
('locked', models.BooleanField(default=False, verbose_name='Item locked for edition')),
('uuid', models.UUIDField(default=uuid.uuid4)),
('cached_label', models.TextField(blank=True, db_index=True, default='', verbose_name='Cached name')),
('biographical_note', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='qualified_biographicalnote', to='ishtar_common.biographicalnote', verbose_name='Biographical note')),
('history_creator', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Creator')),
('history_modifier', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Last editor')),
('imports', models.ManyToManyField(blank=True, related_name='imported_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Created by imports')),
('imports_updated', models.ManyToManyField(blank=True, related_name='import_updated_%(app_label)s_%(class)s', to='ishtar_common.import', verbose_name='Updated by imports')),
('ishtar_users', models.ManyToManyField(blank=True, related_name='%(class)s_associated', to='ishtar_common.ishtaruser')),
('lock_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Locked by')),
('qualification_type', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='ishtar_common.qualifiedbiographicalnotetype', verbose_name='Qualification type')),
],
options={
'verbose_name': 'Qualified biographical note',
'verbose_name_plural': 'Qualified biographical notes',
'ordering': ('qualification_type__order', 'biographical_note__denomination'),
'permissions': (('view_own_qualifiedbiographicalnote', 'Can view own Qualified biographical note'), ('change_own_qualifiedbiographicalnote', 'Can change own Qualified biographical note'), ('delete_own_qualifiedbiographicalnote', 'Can delete own Qualified biographical note')),
},
bases=(ishtar_common.models_common.StatisticItem, ishtar_common.models_common.TemplateItem, models.Model, ishtar_common.models_common.CachedGen, ishtar_common.models_common.FixAssociated, ishtar_common.models.ValueGetter, ishtar_common.models_common.MainItem),
),
migrations.AlterField(
model_name='documenttemplate',
name='export_format',
field=models.CharField(blank=True, choices=[('docx', 'DOCX'), ('html', 'HTML'), ('pdf', 'PDF'), ('xlsx', 'XLSX')], default='', max_length=4, verbose_name='Export format'),
),
migrations.AddField(
model_name='qualifiedbiographicalnotetype',
name='model',
field=models.CharField(choices=[('S', 'Archaeological site'), ('O', 'Operation'), ('C', 'Context record'), ('F', 'Find')], default='A', max_length=1, verbose_name='Model'),
preserve_default=False,
),
]
|