53 lines
1.9 KiB
Python
53 lines
1.9 KiB
Python
# Generated by Django 3.1 on 2020-08-28 13:14
|
|
from django.apps.registry import Apps
|
|
from django.db import migrations, models
|
|
from django.db.backends.base.schema import BaseDatabaseSchemaEditor
|
|
|
|
|
|
def add_title_for_defaults(apps: Apps, schema_editor: BaseDatabaseSchemaEditor):
|
|
slug_title_map = {
|
|
"default-authentication-flow": "Default Authentication Flow",
|
|
"default-invalidation-flow": "Default Invalidation Flow",
|
|
"default-source-enrollment": "Default Source Enrollment Flow",
|
|
"default-source-authentication": "Default Source Authentication Flow",
|
|
"default-provider-authorization-implicit-consent": "Default Provider Authorization Flow (implicit consent)",
|
|
"default-provider-authorization-explicit-consent": "Default Provider Authorization Flow (explicit consent)",
|
|
"default-password-change": "Default Password Change Flow",
|
|
}
|
|
db_alias = schema_editor.connection.alias
|
|
Flow = apps.get_model("passbook_flows", "Flow")
|
|
for flow in Flow.objects.using(db_alias).all():
|
|
if flow.slug in slug_title_map:
|
|
flow.title = slug_title_map[flow.slug]
|
|
else:
|
|
flow.title = flow.name
|
|
flow.save()
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [
|
|
("passbook_flows", "0010_provider_flows"),
|
|
]
|
|
|
|
operations = [
|
|
migrations.AlterModelOptions(
|
|
name="flow",
|
|
options={
|
|
"permissions": [("export_flow", "Can export a Flow")],
|
|
"verbose_name": "Flow",
|
|
"verbose_name_plural": "Flows",
|
|
},
|
|
),
|
|
migrations.AddField(
|
|
model_name="flow",
|
|
name="title",
|
|
field=models.TextField(default="", blank=True),
|
|
preserve_default=False,
|
|
),
|
|
migrations.RunPython(add_title_for_defaults),
|
|
migrations.AlterField(
|
|
model_name="flow", name="title", field=models.TextField(),
|
|
),
|
|
]
|