Remove permissions.

This commit is contained in:
Antoine Nguyen
2015-11-11 14:45:14 +01:00
parent 565bb310a5
commit d62619ebdf
3 changed files with 11 additions and 8 deletions
-4
View File
@@ -27,10 +27,6 @@ PERMISSIONS = {
["admin", "alias", "delete_alias"],
["admin", "mailbox", "view_mailboxes"],
["admin", "alias", "view_aliases"],
["admin", "domainalias", "view_domaliases"],
["admin", "domainalias", "add_domainalias"],
["admin", "domainalias", "change_domainalias"],
["admin", "domainalias", "delete_domainalias"]
]
}
@@ -4,8 +4,8 @@ from __future__ import unicode_literals
from django.db import models, migrations
def rename_content_types(apps, schema_editor):
"""Rename old content types if necessary."""
def rename_and_clean(apps, schema_editor):
"""Rename old content types if necessary, remove permissions."""
ContentType = apps.get_model("contenttypes", "ContentType")
for ct in ContentType.objects.filter(app_label="admin"):
try:
@@ -17,6 +17,14 @@ def rename_content_types(apps, schema_editor):
ct.delete()
old_ct.save()
# Remove DomainAlias permissions from DomainAdmins group
Group = apps.get_model("auth", "Group")
Permission = apps.get_model("auth", "Permission")
group = Group.objects.get(name="DomainAdmins")
ct = ContentType.objects.get(app_label="admin", model="domainalias")
for permission in Permission.objects.filter(content_type=ct):
group.permissions.remove(permission)
class Migration(migrations.Migration):
@@ -25,5 +33,5 @@ class Migration(migrations.Migration):
]
operations = [
migrations.RunPython(rename_content_types),
migrations.RunPython(rename_and_clean),
]
-1
View File
@@ -1,4 +1,3 @@
import os
from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _, ugettext_lazy