diff options
Diffstat (limited to 'ishtar_common/migrations/0044_add_import_group.py')
-rw-r--r-- | ishtar_common/migrations/0044_add_import_group.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/ishtar_common/migrations/0044_add_import_group.py b/ishtar_common/migrations/0044_add_import_group.py index 7aa48f969..bff5442ac 100644 --- a/ishtar_common/migrations/0044_add_import_group.py +++ b/ishtar_common/migrations/0044_add_import_group.py @@ -8,16 +8,26 @@ from django.db import migrations def add_import_group(apps, schema_editor): Group = apps.get_model('auth', 'Group') ProfileType = apps.get_model('ishtar_common', 'ProfileType') + Permission = apps.get_model('auth', 'Permission') gp, created = Group.objects.get_or_create( name="Import : ajout/modification/suppression") + + for perm in ['add_import', 'change_import', 'delete_import']: + p = Permission.objects.get(codename=perm) + gp.permissions.add(p) + pt, created = ProfileType.objects.get_or_create( txt_idx="administrator", defaults={ 'label':"Administrateur", 'comment': "", 'available':True } ) - if gp.pk not in list([g.pk for g in pt.groups.all()]): - pt.groups.add(gp) + + # add all existing groups to administrator + current_groups = list([g.pk for g in pt.groups.all()]) + for gp in Group.objects.all(): + if gp.pk not in current_groups: + pt.groups.add(gp) class Migration(migrations.Migration): |