diff --git a/wagtail/wagtailusers/forms.py b/wagtail/wagtailusers/forms.py index 3c7c3acb5..3fc1b3096 100644 --- a/wagtail/wagtailusers/forms.py +++ b/wagtail/wagtailusers/forms.py @@ -3,6 +3,7 @@ from django.contrib.auth.forms import UserCreationForm as BaseUserCreationForm from django.utils.translation import ugettext_lazy as _ from django.contrib.auth import get_user_model from django.contrib.auth.models import Group, Permission +from django.forms.models import inlineformset_factory from wagtail.wagtailcore import hooks from wagtail.wagtailadmin.widgets import AdminPageChooser @@ -213,6 +214,15 @@ class BaseGroupPagePermissionFormSet(forms.models.BaseInlineFormSet): return empty_form +GroupPagePermissionFormSet = inlineformset_factory( + Group, + GroupPagePermission, + formset=BaseGroupPagePermissionFormSet, + extra=0, + fields=('page', 'permission_type'), +) + + class NotificationPreferencesForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(NotificationPreferencesForm, self).__init__(*args, **kwargs) diff --git a/wagtail/wagtailusers/views/groups.py b/wagtail/wagtailusers/views/groups.py index 21eb08c76..6c8654216 100644 --- a/wagtail/wagtailusers/views/groups.py +++ b/wagtail/wagtailusers/views/groups.py @@ -5,12 +5,10 @@ from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.core.urlresolvers import reverse from django.utils.translation import ugettext as _ from django.views.decorators.vary import vary_on_headers -from django.forms.models import inlineformset_factory from wagtail.wagtailadmin import messages from wagtail.wagtailadmin.forms import SearchForm -from wagtail.wagtailusers.forms import GroupForm, BaseGroupPagePermissionFormSet -from wagtail.wagtailcore.models import GroupPagePermission +from wagtail.wagtailusers.forms import GroupForm, GroupPagePermissionFormSet def user_has_group_model_perm(user): @@ -79,12 +77,6 @@ def index(request): @permission_required('auth.add_group') def create(request): - GroupPagePermissionFormSet = inlineformset_factory( - Group, - GroupPagePermission, - formset=BaseGroupPagePermissionFormSet, - extra=0 - ) if request.POST: form = GroupForm(request.POST) formset = GroupPagePermissionFormSet(request.POST) @@ -111,12 +103,6 @@ def create(request): @permission_required('auth.change_group') def edit(request, group_id): group = get_object_or_404(Group, id=group_id) - GroupPagePermissionFormSet = inlineformset_factory( - Group, - GroupPagePermission, - formset=BaseGroupPagePermissionFormSet, - extra=0 - ) if request.POST: form = GroupForm(request.POST, instance=group) formset = GroupPagePermissionFormSet(request.POST, instance=group)