From ffd47cbfa1baa5eb2556e38253f548495b4189f1 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 16 Nov 2023 15:50:38 +0100 Subject: 🗃️ GDPR: add related models MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migrations/0233_gdprlog_gdprperson.py | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 ishtar_common/migrations/0233_gdprlog_gdprperson.py (limited to 'ishtar_common/migrations') diff --git a/ishtar_common/migrations/0233_gdprlog_gdprperson.py b/ishtar_common/migrations/0233_gdprlog_gdprperson.py new file mode 100644 index 000000000..374134fce --- /dev/null +++ b/ishtar_common/migrations/0233_gdprlog_gdprperson.py @@ -0,0 +1,45 @@ +# Generated by Django 2.2.24 on 2023-11-16 15:48 + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('ishtar_common', '0232_default_mandatory_keys_import_permissions'), + ] + + operations = [ + migrations.CreateModel( + name='GDPRPerson', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('raw_name', models.CharField(default='-', max_length=300, verbose_name='Raw name')), + ('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': 'GDPR - Person', + 'verbose_name_plural': 'GDPR - Persons', + }, + ), + migrations.CreateModel( + name='GDPRLog', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date', models.DateTimeField(default=datetime.datetime.now, verbose_name='Date')), + ('ip', models.GenericIPAddressField(verbose_name='IP')), + ('activity', models.CharField(choices=[('DC', 'Directory consultation'), ('DE', 'Directory export'), ('PV', "Viewing a person's notice"), ('PE', "Exporting a person's notice"), ('PC', 'Person creation'), ('PM', 'Person modification'), ('PD', 'Person deletion')], max_length=2, verbose_name='Activity')), + ('persons', models.ManyToManyField(blank=True, to='ishtar_common.GDPRPerson', verbose_name='Persons')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, verbose_name='User')), + ], + options={ + 'verbose_name': 'GDPR - Log', + 'verbose_name_plural': 'GDPR - Logs', + 'ordering': ('date',), + }, + ), + ] -- cgit v1.2.3