Remove django-braces requirement

This commit is contained in:
Jan Dittberner 2023-04-14 19:16:58 +02:00
parent 35aae85c8d
commit a5b65974fb
4 changed files with 19 additions and 26 deletions

View file

@ -4,10 +4,10 @@ This module defines views related to hosting packages.
"""
from __future__ import absolute_import
from braces.views import LoginRequiredMixin, StaffuserRequiredMixin
from django.conf import settings
from django.contrib import messages
from django.contrib.auth import get_user_model
from django.contrib.auth.mixins import PermissionRequiredMixin, UserPassesTestMixin
from django.http import Http404
from django.shortcuts import get_object_or_404, redirect
from django.utils.translation import gettext as _
@ -30,7 +30,7 @@ from .models import (
)
class CreateHostingPackage(LoginRequiredMixin, StaffuserRequiredMixin, CreateView):
class CreateHostingPackage(PermissionRequiredMixin, CreateView):
"""
Create a hosting package.
@ -38,6 +38,7 @@ class CreateHostingPackage(LoginRequiredMixin, StaffuserRequiredMixin, CreateVie
model = CustomerHostingPackage
raise_exception = True
permission_required = 'domains.add_customerhostingpackage'
template_name_suffix = "_create"
form_class = CreateHostingPackageForm
@ -120,9 +121,16 @@ class CustomerHostingPackageDetails(StaffOrSelfLoginRequiredMixin, DetailView):
return context
class AllCustomerHostingPackageList(
LoginRequiredMixin, StaffuserRequiredMixin, ListView
):
class StaffUserRequiredMixin(UserPassesTestMixin):
"""
Mixin to make views available to staff members only.
"""
def test_func(self):
return self.request.user.is_staff
class AllCustomerHostingPackageList(StaffUserRequiredMixin, ListView):
"""
This view is used for showing a list of all hosting packages.
@ -161,7 +169,7 @@ class CustomerHostingPackageList(StaffOrSelfLoginRequiredMixin, ListView):
)
class HostingOptionChoices(LoginRequiredMixin, StaffuserRequiredMixin, DetailView):
class HostingOptionChoices(StaffUserRequiredMixin, DetailView):
"""
This view displays choices of hosting options for a customer hosting
package.
@ -205,7 +213,7 @@ class HostingOptionChoices(LoginRequiredMixin, StaffuserRequiredMixin, DetailVie
return context
class AddHostingOption(LoginRequiredMixin, StaffuserRequiredMixin, FormView):
class AddHostingOption(StaffUserRequiredMixin, FormView):
template_name = "hostingpackages/add_hosting_option.html"
def get_form_class(self):