diff options
Diffstat (limited to 'ishtar_common/migrations/0076_migrate_treatmentfile_permissions.py')
| -rw-r--r-- | ishtar_common/migrations/0076_migrate_treatmentfile_permissions.py | 33 | 
1 files changed, 33 insertions, 0 deletions
| diff --git a/ishtar_common/migrations/0076_migrate_treatmentfile_permissions.py b/ishtar_common/migrations/0076_migrate_treatmentfile_permissions.py new file mode 100644 index 000000000..4edef4a44 --- /dev/null +++ b/ishtar_common/migrations/0076_migrate_treatmentfile_permissions.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.10 on 2018-11-22 22:17 +from __future__ import unicode_literals + +from django.db import migrations + + +def migrate_perm(apps, schema_editor): +    Permission = apps.get_model('auth', 'Permission') +    Group = apps.get_model('auth', 'Group') +    for perm in Permission.objects.filter( +            codename__icontains='filetreatment').exclude( +            codename__icontains='source').all(): +        new_codename = perm.codename.replace('filetreatment', 'treatmentfile') +        q = Permission.objects.filter( +            codename=new_codename).exclude(pk=perm.pk) +        if q.count(): +            for gp in Group.objects.filter(permissions=q.all()[0]): +                gp.permissions.add(perm) +            q.all()[0].delete() +        perm.codename = new_codename +        perm.save() + + +class Migration(migrations.Migration): + +    dependencies = [ +        ('ishtar_common', '0075_auto_20181108_1908'), +    ] + +    operations = [ +        migrations.RunPython(migrate_perm) +    ] | 
