diff --git a/froide_govplan/migrations/0001_initial.py b/froide_govplan/migrations/0001_initial.py index 04d0152..aa4c7c5 100644 --- a/froide_govplan/migrations/0001_initial.py +++ b/froide_govplan/migrations/0001_initial.py @@ -1,9 +1,10 @@ # Generated by Django 3.2.8 on 2022-02-15 19:55 -from django.conf import settings -from django.db import migrations, models import django.db.models.deletion import django.utils.timezone +from django.conf import settings +from django.db import migrations, models + import filer.fields.image import taggit.managers @@ -13,96 +14,267 @@ class Migration(migrations.Migration): initial = True dependencies = [ - ('publicbody', '0039_publicbody_alternative_emails'), - ('auth', '0012_alter_user_first_name_max_length'), - ('foirequest', '0054_alter_foirequest_options'), + ("publicbody", "0039_publicbody_alternative_emails"), + ("auth", "0012_alter_user_first_name_max_length"), + ("foirequest", "0054_alter_foirequest_options"), migrations.swappable_dependency(settings.FILER_IMAGE_MODEL), - ('organization', '0001_initial'), + ("organization", "0001_initial"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( - name='CategorizedGovernmentPlan', + name="CategorizedGovernmentPlan", fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), ], options={ - 'verbose_name': 'Categorized Government Plan', - 'verbose_name_plural': 'Categorized Government Plans', + "verbose_name": "Categorized Government Plan", + "verbose_name_plural": "Categorized Government Plans", }, ), migrations.CreateModel( - name='Government', + name="Government", fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255)), - ('slug', models.SlugField(max_length=255, unique=True)), - ('public', models.BooleanField(default=False)), - ('description', models.TextField(blank=True)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('planning_document', models.URLField(blank=True)), - ('jurisdiction', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='publicbody.jurisdiction')), + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("name", models.CharField(max_length=255)), + ("slug", models.SlugField(max_length=255, unique=True)), + ("public", models.BooleanField(default=False)), + ("description", models.TextField(blank=True)), + ("start_date", models.DateField(blank=True, null=True)), + ("end_date", models.DateField(blank=True, null=True)), + ("planning_document", models.URLField(blank=True)), + ( + "jurisdiction", + models.ForeignKey( + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="publicbody.jurisdiction", + ), + ), ], options={ - 'verbose_name': 'Government', - 'verbose_name_plural': 'Governments', + "verbose_name": "Government", + "verbose_name_plural": "Governments", }, ), migrations.CreateModel( - name='GovernmentPlan', + name="GovernmentPlan", fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('title', models.CharField(max_length=255)), - ('slug', models.SlugField(max_length=255, unique=True)), - ('description', models.TextField(blank=True)), - ('public', models.BooleanField(default=False)), - ('status', models.CharField(choices=[('not_started', 'not started'), ('started', 'started'), ('partially_implemented', 'partially implemented'), ('implemented', 'implemented'), ('deferred', 'deferred')], default='needs_approval', max_length=25)), - ('rating', models.IntegerField(blank=True, choices=[(1, 'terrible'), (2, 'bad'), (3, 'OK'), (4, 'good'), (5, 'excellent')], null=True)), - ('reference', models.CharField(blank=True, max_length=255)), - ('categories', taggit.managers.TaggableManager(blank=True, help_text='A comma-separated list of tags.', through='froide_govplan.CategorizedGovernmentPlan', to='publicbody.Category', verbose_name='categories')), - ('government', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='froide_govplan.government')), - ('group', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='auth.group')), - ('image', filer.fields.image.FilerImageField(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.FILER_IMAGE_MODEL, verbose_name='image')), - ('responsible_publicbody', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='publicbody.publicbody')), + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("title", models.CharField(max_length=255)), + ("slug", models.SlugField(max_length=255, unique=True)), + ("description", models.TextField(blank=True)), + ("public", models.BooleanField(default=False)), + ( + "status", + models.CharField( + choices=[ + ("not_started", "not started"), + ("started", "started"), + ("partially_implemented", "partially implemented"), + ("implemented", "implemented"), + ("deferred", "deferred"), + ], + default="needs_approval", + max_length=25, + ), + ), + ( + "rating", + models.IntegerField( + blank=True, + choices=[ + (1, "terrible"), + (2, "bad"), + (3, "OK"), + (4, "good"), + (5, "excellent"), + ], + null=True, + ), + ), + ("reference", models.CharField(blank=True, max_length=255)), + ( + "categories", + taggit.managers.TaggableManager( + blank=True, + help_text="A comma-separated list of tags.", + through="froide_govplan.CategorizedGovernmentPlan", + to="publicbody.Category", + verbose_name="categories", + ), + ), + ( + "government", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + to="froide_govplan.government", + ), + ), + ( + "group", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="auth.group", + ), + ), + ( + "image", + filer.fields.image.FilerImageField( + blank=True, + default=None, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to=settings.FILER_IMAGE_MODEL, + verbose_name="image", + ), + ), + ( + "responsible_publicbody", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="publicbody.publicbody", + ), + ), ], options={ - 'verbose_name': 'Government plan', - 'verbose_name_plural': 'Government plans', - 'ordering': ('reference', 'title'), + "verbose_name": "Government plan", + "verbose_name_plural": "Government plans", + "ordering": ("reference", "title"), }, ), migrations.CreateModel( - name='GovernmentPlanUpdate', + name="GovernmentPlanUpdate", fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('timestamp', models.DateTimeField(default=django.utils.timezone.now)), - ('title', models.CharField(blank=True, max_length=1024)), - ('content', models.TextField(blank=True)), - ('status', models.CharField(blank=True, choices=[('not_started', 'not started'), ('started', 'started'), ('partially_implemented', 'partially implemented'), ('implemented', 'implemented'), ('deferred', 'deferred')], default='', max_length=25)), - ('rating', models.IntegerField(blank=True, choices=[(1, 'terrible'), (2, 'bad'), (3, 'OK'), (4, 'good'), (5, 'excellent')], null=True)), - ('public', models.BooleanField(default=False)), - ('foirequest', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='foirequest.foirequest')), - ('organization', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='organization.organization')), - ('plan', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='updates', to='froide_govplan.governmentplan')), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("timestamp", models.DateTimeField(default=django.utils.timezone.now)), + ("title", models.CharField(blank=True, max_length=1024)), + ("content", models.TextField(blank=True)), + ( + "status", + models.CharField( + blank=True, + choices=[ + ("not_started", "not started"), + ("started", "started"), + ("partially_implemented", "partially implemented"), + ("implemented", "implemented"), + ("deferred", "deferred"), + ], + default="", + max_length=25, + ), + ), + ( + "rating", + models.IntegerField( + blank=True, + choices=[ + (1, "terrible"), + (2, "bad"), + (3, "OK"), + (4, "good"), + (5, "excellent"), + ], + null=True, + ), + ), + ("public", models.BooleanField(default=False)), + ( + "foirequest", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="foirequest.foirequest", + ), + ), + ( + "organization", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="organization.organization", + ), + ), + ( + "plan", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + related_name="updates", + to="froide_govplan.governmentplan", + ), + ), + ( + "user", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to=settings.AUTH_USER_MODEL, + ), + ), ], options={ - 'verbose_name': 'Plan update', - 'verbose_name_plural': 'Plan updates', - 'ordering': ('-timestamp',), - 'get_latest_by': 'timestamp', + "verbose_name": "Plan update", + "verbose_name_plural": "Plan updates", + "ordering": ("-timestamp",), + "get_latest_by": "timestamp", }, ), migrations.AddField( - model_name='categorizedgovernmentplan', - name='content_object', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='froide_govplan.governmentplan'), + model_name="categorizedgovernmentplan", + name="content_object", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + to="froide_govplan.governmentplan", + ), ), migrations.AddField( - model_name='categorizedgovernmentplan', - name='tag', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='categorized_governmentplan', to='publicbody.category'), + model_name="categorizedgovernmentplan", + name="tag", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + related_name="categorized_governmentplan", + to="publicbody.category", + ), ), ] diff --git a/froide_govplan/migrations/0002_auto_20220215_2113.py b/froide_govplan/migrations/0002_auto_20220215_2113.py index c4494f5..ccfd314 100644 --- a/froide_govplan/migrations/0002_auto_20220215_2113.py +++ b/froide_govplan/migrations/0002_auto_20220215_2113.py @@ -1,42 +1,94 @@ # Generated by Django 3.2.8 on 2022-02-15 20:13 -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('publicbody', '0039_publicbody_alternative_emails'), - ('organization', '0001_initial'), - ('cms', '0022_auto_20180620_1551'), - ('froide_govplan', '0001_initial'), + ("publicbody", "0039_publicbody_alternative_emails"), + ("organization", "0001_initial"), + ("cms", "0022_auto_20180620_1551"), + ("froide_govplan", "0001_initial"), ] operations = [ migrations.AddField( - model_name='governmentplan', - name='organization', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='organization.organization'), + model_name="governmentplan", + name="organization", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="organization.organization", + ), ), migrations.AddField( - model_name='governmentplanupdate', - name='url', + model_name="governmentplanupdate", + name="url", field=models.URLField(blank=True), ), migrations.CreateModel( - name='GovernmentPlansCMSPlugin', + name="GovernmentPlansCMSPlugin", fields=[ - ('cmsplugin_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, related_name='froide_govplan_governmentplanscmsplugin', serialize=False, to='cms.cmsplugin')), - ('count', models.PositiveIntegerField(default=1, help_text='0 means all the plans', verbose_name='number of plans')), - ('offset', models.PositiveIntegerField(default=0, help_text='number of plans to skip from top of list', verbose_name='offset')), - ('template', models.CharField(blank=True, choices=[('froide_govplan/plugins/default.html', 'Normal')], help_text='template used to display the plugin', max_length=250, verbose_name='template')), - ('categories', models.ManyToManyField(blank=True, to='publicbody.Category', verbose_name='categories')), - ('government', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='froide_govplan.government')), + ( + "cmsplugin_ptr", + models.OneToOneField( + auto_created=True, + on_delete=django.db.models.deletion.CASCADE, + parent_link=True, + primary_key=True, + related_name="froide_govplan_governmentplanscmsplugin", + serialize=False, + to="cms.cmsplugin", + ), + ), + ( + "count", + models.PositiveIntegerField( + default=1, + help_text="0 means all the plans", + verbose_name="number of plans", + ), + ), + ( + "offset", + models.PositiveIntegerField( + default=0, + help_text="number of plans to skip from top of list", + verbose_name="offset", + ), + ), + ( + "template", + models.CharField( + blank=True, + choices=[("froide_govplan/plugins/default.html", "Normal")], + help_text="template used to display the plugin", + max_length=250, + verbose_name="template", + ), + ), + ( + "categories", + models.ManyToManyField( + blank=True, to="publicbody.Category", verbose_name="categories" + ), + ), + ( + "government", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="froide_govplan.government", + ), + ), ], options={ - 'abstract': False, + "abstract": False, }, - bases=('cms.cmsplugin',), + bases=("cms.cmsplugin",), ), ] diff --git a/froide_govplan/migrations/0004_auto_20220311_2330.py b/froide_govplan/migrations/0004_auto_20220311_2330.py index 92809d2..e82142c 100644 --- a/froide_govplan/migrations/0004_auto_20220311_2330.py +++ b/froide_govplan/migrations/0004_auto_20220311_2330.py @@ -1,49 +1,98 @@ # Generated by Django 3.2.12 on 2022-03-11 22:30 -from django.conf import settings -from django.db import migrations, models import django.db.models.deletion import django.utils.timezone +from django.conf import settings +from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('froide_govplan', '0003_auto_20220228_1051'), + ("froide_govplan", "0003_auto_20220228_1051"), ] operations = [ migrations.AlterField( - model_name='governmentplanscmsplugin', - name='template', - field=models.CharField(blank=True, choices=[('froide_govplan/plugins/default.html', 'Normal'), ('froide_govplan/plugins/progress.html', 'Progress'), ('froide_govplan/plugins/card_cols.html', 'Card columns')], help_text='template used to display the plugin', max_length=250, verbose_name='template'), + model_name="governmentplanscmsplugin", + name="template", + field=models.CharField( + blank=True, + choices=[ + ("froide_govplan/plugins/default.html", "Normal"), + ("froide_govplan/plugins/progress.html", "Progress"), + ("froide_govplan/plugins/card_cols.html", "Card columns"), + ], + help_text="template used to display the plugin", + max_length=250, + verbose_name="template", + ), ), migrations.CreateModel( - name='GovernmentPlanFollower', + name="GovernmentPlanFollower", fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('email', models.CharField(blank=True, max_length=255)), - ('confirmed', models.BooleanField(default=False)), - ('timestamp', models.DateTimeField(default=django.utils.timezone.now, verbose_name='Timestamp of Following')), - ('context', models.JSONField(blank=True, null=True)), - ('content_object', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='followers', to='froide_govplan.governmentplan', verbose_name='Government plan')), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')), + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("email", models.CharField(blank=True, max_length=255)), + ("confirmed", models.BooleanField(default=False)), + ( + "timestamp", + models.DateTimeField( + default=django.utils.timezone.now, + verbose_name="Timestamp of Following", + ), + ), + ("context", models.JSONField(blank=True, null=True)), + ( + "content_object", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + related_name="followers", + to="froide_govplan.governmentplan", + verbose_name="Government plan", + ), + ), + ( + "user", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.CASCADE, + to=settings.AUTH_USER_MODEL, + verbose_name="User", + ), + ), ], options={ - 'verbose_name': 'Government plan follower', - 'verbose_name_plural': 'Government plan followers', - 'ordering': ('-timestamp',), - 'get_latest_by': 'timestamp', - 'abstract': False, + "verbose_name": "Government plan follower", + "verbose_name_plural": "Government plan followers", + "ordering": ("-timestamp",), + "get_latest_by": "timestamp", + "abstract": False, }, ), migrations.AddConstraint( - model_name='governmentplanfollower', - constraint=models.UniqueConstraint(condition=models.Q(('user__isnull', False)), fields=('content_object', 'user'), name='unique_user_follower_froide_govplan_governmentplanfollower'), + model_name="governmentplanfollower", + constraint=models.UniqueConstraint( + condition=models.Q(("user__isnull", False)), + fields=("content_object", "user"), + name="unique_user_follower_froide_govplan_governmentplanfollower", + ), ), migrations.AddConstraint( - model_name='governmentplanfollower', - constraint=models.UniqueConstraint(condition=models.Q(('user__isnull', True)), fields=('content_object', 'email'), name='unique_email_follower_froide_govplan_governmentplanfollower'), + model_name="governmentplanfollower", + constraint=models.UniqueConstraint( + condition=models.Q(("user__isnull", True)), + fields=("content_object", "email"), + name="unique_email_follower_froide_govplan_governmentplanfollower", + ), ), ] diff --git a/froide_govplan/migrations/0005_governmentplansection.py b/froide_govplan/migrations/0005_governmentplansection.py index 3cf2947..9c05f26 100644 --- a/froide_govplan/migrations/0005_governmentplansection.py +++ b/froide_govplan/migrations/0005_governmentplansection.py @@ -1,41 +1,93 @@ # Generated by Django 3.2.12 on 2022-03-14 10:14 -import cms.models.fields +import django.db.models.deletion from django.conf import settings from django.db import migrations, models -import django.db.models.deletion + +import cms.models.fields import filer.fields.image class Migration(migrations.Migration): dependencies = [ - ('publicbody', '0039_publicbody_alternative_emails'), + ("publicbody", "0039_publicbody_alternative_emails"), migrations.swappable_dependency(settings.FILER_IMAGE_MODEL), - ('cms', '0022_auto_20180620_1551'), - ('froide_govplan', '0004_auto_20220311_2330'), + ("cms", "0022_auto_20180620_1551"), + ("froide_govplan", "0004_auto_20220311_2330"), ] operations = [ migrations.CreateModel( - name='GovernmentPlanSection', + name="GovernmentPlanSection", fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('title', models.CharField(max_length=255, verbose_name='title')), - ('slug', models.SlugField(max_length=255, unique=True, verbose_name='slug')), - ('description', models.TextField(blank=True, verbose_name='description')), - ('icon', models.CharField(blank=True, help_text='Enter an icon name from the FontAwesome 4 icon set', max_length=50, verbose_name='Icon')), - ('order', models.PositiveIntegerField(default=0)), - ('featured', models.DateTimeField(blank=True, null=True)), - ('categories', models.ManyToManyField(blank=True, to='publicbody.Category')), - ('content_placeholder', cms.models.fields.PlaceholderField(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, slotname='content', to='cms.placeholder')), - ('government', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='froide_govplan.government', verbose_name='government')), - ('image', filer.fields.image.FilerImageField(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.FILER_IMAGE_MODEL, verbose_name='image')), + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("title", models.CharField(max_length=255, verbose_name="title")), + ( + "slug", + models.SlugField(max_length=255, unique=True, verbose_name="slug"), + ), + ( + "description", + models.TextField(blank=True, verbose_name="description"), + ), + ( + "icon", + models.CharField( + blank=True, + help_text='Enter an icon name from the FontAwesome 4 icon set', + max_length=50, + verbose_name="Icon", + ), + ), + ("order", models.PositiveIntegerField(default=0)), + ("featured", models.DateTimeField(blank=True, null=True)), + ( + "categories", + models.ManyToManyField(blank=True, to="publicbody.Category"), + ), + ( + "content_placeholder", + cms.models.fields.PlaceholderField( + editable=False, + null=True, + on_delete=django.db.models.deletion.CASCADE, + slotname="content", + to="cms.placeholder", + ), + ), + ( + "government", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + to="froide_govplan.government", + verbose_name="government", + ), + ), + ( + "image", + filer.fields.image.FilerImageField( + blank=True, + default=None, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to=settings.FILER_IMAGE_MODEL, + verbose_name="image", + ), + ), ], options={ - 'verbose_name': 'Government plan section', - 'verbose_name_plural': 'Government plan sections', - 'ordering': ('order', 'title'), + "verbose_name": "Government plan section", + "verbose_name_plural": "Government plan sections", + "ordering": ("order", "title"), }, ), ] diff --git a/froide_govplan/migrations/0006_sections_cms_plugin.py b/froide_govplan/migrations/0006_sections_cms_plugin.py index 46228b6..f6fd573 100644 --- a/froide_govplan/migrations/0006_sections_cms_plugin.py +++ b/froide_govplan/migrations/0006_sections_cms_plugin.py @@ -1,7 +1,7 @@ # Generated by Django 3.2.12 on 2022-03-14 12:10 -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/froide_govplan/migrations/0007_auto_20220314_1422.py b/froide_govplan/migrations/0007_auto_20220314_1422.py index 799c870..615940c 100644 --- a/froide_govplan/migrations/0007_auto_20220314_1422.py +++ b/froide_govplan/migrations/0007_auto_20220314_1422.py @@ -6,18 +6,29 @@ from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('froide_govplan', '0006_sections_cms_plugin'), + ("froide_govplan", "0006_sections_cms_plugin"), ] operations = [ migrations.AlterField( - model_name='governmentplanscmsplugin', - name='template', - field=models.CharField(blank=True, choices=[('froide_govplan/plugins/default.html', 'Normal'), ('froide_govplan/plugins/progress.html', 'Progress'), ('froide_govplan/plugins/card_cols.html', 'Card columns'), ('froide_govplan/plugins/search.html', 'Search')], help_text='template used to display the plugin', max_length=250, verbose_name='template'), + model_name="governmentplanscmsplugin", + name="template", + field=models.CharField( + blank=True, + choices=[ + ("froide_govplan/plugins/default.html", "Normal"), + ("froide_govplan/plugins/progress.html", "Progress"), + ("froide_govplan/plugins/card_cols.html", "Card columns"), + ("froide_govplan/plugins/search.html", "Search"), + ], + help_text="template used to display the plugin", + max_length=250, + verbose_name="template", + ), ), migrations.AlterField( - model_name='governmentplanupdate', - name='url', - field=models.URLField(blank=True, max_length=1024, verbose_name='URL'), + model_name="governmentplanupdate", + name="url", + field=models.URLField(blank=True, max_length=1024, verbose_name="URL"), ), ] diff --git a/froide_govplan/migrations/0008_governmentplan_proposals.py b/froide_govplan/migrations/0008_governmentplan_proposals.py index 3b22f3e..d33329c 100644 --- a/froide_govplan/migrations/0008_governmentplan_proposals.py +++ b/froide_govplan/migrations/0008_governmentplan_proposals.py @@ -6,13 +6,13 @@ from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('froide_govplan', '0007_auto_20220314_1422'), + ("froide_govplan", "0007_auto_20220314_1422"), ] operations = [ migrations.AddField( - model_name='governmentplan', - name='proposals', + model_name="governmentplan", + name="proposals", field=models.JSONField(blank=True, null=True), ), ] diff --git a/froide_govplan/migrations/0009_governmentplanupdatescmsplugin.py b/froide_govplan/migrations/0009_governmentplanupdatescmsplugin.py index 26532b0..f378476 100644 --- a/froide_govplan/migrations/0009_governmentplanupdatescmsplugin.py +++ b/froide_govplan/migrations/0009_governmentplanupdatescmsplugin.py @@ -1,30 +1,68 @@ # Generated by Django 3.2.12 on 2022-03-17 14:54 -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('cms', '0022_auto_20180620_1551'), - ('publicbody', '0039_publicbody_alternative_emails'), - ('froide_govplan', '0008_governmentplan_proposals'), + ("cms", "0022_auto_20180620_1551"), + ("publicbody", "0039_publicbody_alternative_emails"), + ("froide_govplan", "0008_governmentplan_proposals"), ] operations = [ migrations.CreateModel( - name='GovernmentPlanUpdatesCMSPlugin', + name="GovernmentPlanUpdatesCMSPlugin", fields=[ - ('cmsplugin_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, related_name='froide_govplan_governmentplanupdatescmsplugin', serialize=False, to='cms.cmsplugin')), - ('count', models.PositiveIntegerField(default=1, help_text='0 means all the updates', verbose_name='number of updates')), - ('offset', models.PositiveIntegerField(default=0, help_text='number of updates to skip from top of list', verbose_name='offset')), - ('categories', models.ManyToManyField(blank=True, to='publicbody.Category', verbose_name='categories')), - ('government', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='froide_govplan.government')), + ( + "cmsplugin_ptr", + models.OneToOneField( + auto_created=True, + on_delete=django.db.models.deletion.CASCADE, + parent_link=True, + primary_key=True, + related_name="froide_govplan_governmentplanupdatescmsplugin", + serialize=False, + to="cms.cmsplugin", + ), + ), + ( + "count", + models.PositiveIntegerField( + default=1, + help_text="0 means all the updates", + verbose_name="number of updates", + ), + ), + ( + "offset", + models.PositiveIntegerField( + default=0, + help_text="number of updates to skip from top of list", + verbose_name="offset", + ), + ), + ( + "categories", + models.ManyToManyField( + blank=True, to="publicbody.Category", verbose_name="categories" + ), + ), + ( + "government", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="froide_govplan.government", + ), + ), ], options={ - 'abstract': False, + "abstract": False, }, - bases=('cms.cmsplugin',), + bases=("cms.cmsplugin",), ), ] diff --git a/froide_govplan/migrations/0010_governmentplanscmsplugin_extra_classes.py b/froide_govplan/migrations/0010_governmentplanscmsplugin_extra_classes.py index 4fc865d..f3ef088 100644 --- a/froide_govplan/migrations/0010_governmentplanscmsplugin_extra_classes.py +++ b/froide_govplan/migrations/0010_governmentplanscmsplugin_extra_classes.py @@ -6,13 +6,13 @@ from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('froide_govplan', '0009_governmentplanupdatescmsplugin'), + ("froide_govplan", "0009_governmentplanupdatescmsplugin"), ] operations = [ migrations.AddField( - model_name='governmentplanscmsplugin', - name='extra_classes', + model_name="governmentplanscmsplugin", + name="extra_classes", field=models.CharField(blank=True, max_length=255), ), ] diff --git a/froide_govplan/migrations/0011_governmentplan_properties.py b/froide_govplan/migrations/0011_governmentplan_properties.py index aebe3aa..d047616 100644 --- a/froide_govplan/migrations/0011_governmentplan_properties.py +++ b/froide_govplan/migrations/0011_governmentplan_properties.py @@ -6,13 +6,13 @@ from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('froide_govplan', '0010_governmentplanscmsplugin_extra_classes'), + ("froide_govplan", "0010_governmentplanscmsplugin_extra_classes"), ] operations = [ migrations.AddField( - model_name='governmentplan', - name='properties', + model_name="governmentplan", + name="properties", field=models.JSONField(blank=True, default=dict), ), ]