f122778232
* refactors team views * split views.py into users.py and teams.py in users app * refactors method headers for _user_has_permission() * adds method and class comments and documentation to base view classes
62 lines
1.8 KiB
Python
62 lines
1.8 KiB
Python
"""
|
|
Author: Michel Peltriaux
|
|
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
|
|
Contact: ksp-servicestelle@sgdnord.rlp.de
|
|
Created on: 22.08.22
|
|
|
|
"""
|
|
from django.contrib.auth.mixins import LoginRequiredMixin
|
|
|
|
from compensation.forms.modals.deadline import NewDeadlineModalForm, EditDeadlineModalForm
|
|
from konova.forms.modals import RemoveDeadlineModalForm
|
|
from konova.utils.message_templates import DEADLINE_ADDED, DEADLINE_EDITED, DEADLINE_REMOVED
|
|
from konova.views.base import BaseModalFormView
|
|
|
|
|
|
class AbstractNewDeadlineView(LoginRequiredMixin, BaseModalFormView):
|
|
_MODEL_CLS = None
|
|
_FORM_CLS = NewDeadlineModalForm
|
|
_REDIRECT_URL = None
|
|
_MSG_SUCCESS = DEADLINE_ADDED
|
|
|
|
class Meta:
|
|
abstract = True
|
|
|
|
def _get_redirect_url(self, *args, **kwargs):
|
|
return super()._get_redirect_url(*args, **kwargs) + "#related_data"
|
|
|
|
def _user_has_permission(self, user, **kwargs):
|
|
return user.is_default_user()
|
|
|
|
|
|
class AbstractEditDeadlineView(LoginRequiredMixin, BaseModalFormView):
|
|
_MODEL_CLS = None
|
|
_FORM_CLS = EditDeadlineModalForm
|
|
_REDIRECT_URL = None
|
|
_MSG_SUCCESS = DEADLINE_EDITED
|
|
|
|
class Meta:
|
|
abstract = True
|
|
|
|
def _get_redirect_url(self, *args, **kwargs):
|
|
return super()._get_redirect_url(*args, **kwargs) + "#related_data"
|
|
|
|
def _user_has_permission(self, user, **kwargs):
|
|
return user.is_default_user()
|
|
|
|
|
|
class AbstractRemoveDeadlineView(LoginRequiredMixin, BaseModalFormView):
|
|
_MODEL_CLS = None
|
|
_FORM_CLS = RemoveDeadlineModalForm
|
|
_REDIRECT_URL = None
|
|
_MSG_SUCCESS = DEADLINE_REMOVED
|
|
|
|
class Meta:
|
|
abstract = True
|
|
|
|
def _get_redirect_url(self, *args, **kwargs):
|
|
return super()._get_redirect_url(*args, **kwargs) + "#related_data"
|
|
|
|
def _user_has_permission(self, user, **kwargs):
|
|
return user.is_default_user()
|