vkk.workhours.accounting.mailing_list.views

 1from smtplib import SMTPException
 2from django.urls import reverse_lazy, reverse
 3from django.http import HttpResponseRedirect
 4from django.views.generic import FormView, TemplateView
 5from vkk.workhours.accounting.mixins import AccountantRequiredMixin
 6from .forms import MailingListForm
 7
 8class MailingListView(AccountantRequiredMixin, FormView):
 9    form_class = MailingListForm
10    success_url = reverse_lazy('vkk:workhours:accounting:mailing_list:success')
11    template_name = 'vkk/workhours/accounting/mailing_list/form.html'
12
13    def form_valid(self, form):
14        try:
15            form.send_mail()
16        except SMTPException:
17            return HttpResponseRedirect(
18                reverse('vkk:workhours:accounting:mailing_list:failed')
19            )
20        return super().form_valid(form)
21
22class MailingListSuccessView(AccountantRequiredMixin, TemplateView):
23    template_name = 'vkk/workhours/accounting/mailing_list/success.html'
24
25class MailingListFailedView(AccountantRequiredMixin, TemplateView):
26    template_name = 'vkk/workhours/accounting/mailing_list/failed.html'
class MailingListView(vkk.workhours.accounting.mixins.AccountantRequiredMixin, django.views.generic.edit.FormView):
 9class MailingListView(AccountantRequiredMixin, FormView):
10    form_class = MailingListForm
11    success_url = reverse_lazy('vkk:workhours:accounting:mailing_list:success')
12    template_name = 'vkk/workhours/accounting/mailing_list/form.html'
13
14    def form_valid(self, form):
15        try:
16            form.send_mail()
17        except SMTPException:
18            return HttpResponseRedirect(
19                reverse('vkk:workhours:accounting:mailing_list:failed')
20            )
21        return super().form_valid(form)

Verify that the current user has accountant rights.

def form_valid(self, form):
14    def form_valid(self, form):
15        try:
16            form.send_mail()
17        except SMTPException:
18            return HttpResponseRedirect(
19                reverse('vkk:workhours:accounting:mailing_list:failed')
20            )
21        return super().form_valid(form)

If the form is valid, redirect to the supplied URL.

Inherited Members
django.views.generic.base.View
View
view_is_async
as_view
setup
http_method_not_allowed
options
vkk.workhours.accounting.mixins.AccountantRequiredMixin
dispatch
django.contrib.auth.mixins.AccessMixin
get_login_url
get_permission_denied_message
get_redirect_field_name
handle_no_permission
django.views.generic.base.TemplateResponseMixin
render_to_response
get_template_names
django.views.generic.edit.FormMixin
get_initial
get_prefix
get_form_class
get_form
get_form_kwargs
get_success_url
form_invalid
get_context_data
django.views.generic.edit.ProcessFormView
get
post
put
class MailingListSuccessView(vkk.workhours.accounting.mixins.AccountantRequiredMixin, django.views.generic.base.TemplateView):
23class MailingListSuccessView(AccountantRequiredMixin, TemplateView):
24    template_name = 'vkk/workhours/accounting/mailing_list/success.html'

Verify that the current user has accountant rights.

Inherited Members
django.views.generic.base.View
View
view_is_async
as_view
setup
http_method_not_allowed
options
vkk.workhours.accounting.mixins.AccountantRequiredMixin
dispatch
django.contrib.auth.mixins.AccessMixin
get_login_url
get_permission_denied_message
get_redirect_field_name
handle_no_permission
django.views.generic.base.TemplateView
get
django.views.generic.base.TemplateResponseMixin
render_to_response
get_template_names
django.views.generic.base.ContextMixin
get_context_data
class MailingListFailedView(vkk.workhours.accounting.mixins.AccountantRequiredMixin, django.views.generic.base.TemplateView):
26class MailingListFailedView(AccountantRequiredMixin, TemplateView):
27    template_name = 'vkk/workhours/accounting/mailing_list/failed.html'

Verify that the current user has accountant rights.

Inherited Members
django.views.generic.base.View
View
view_is_async
as_view
setup
http_method_not_allowed
options
vkk.workhours.accounting.mixins.AccountantRequiredMixin
dispatch
django.contrib.auth.mixins.AccessMixin
get_login_url
get_permission_denied_message
get_redirect_field_name
handle_no_permission
django.views.generic.base.TemplateView
get
django.views.generic.base.TemplateResponseMixin
render_to_response
get_template_names
django.views.generic.base.ContextMixin
get_context_data