8
0
Fork 0
mirror of https://gitlab.federez.net/re2o/re2o synced 2024-05-16 23:56:12 +00:00

fix: Missing @can_view ACL for cotisation endpoints

This commit is contained in:
Jean-Romain Garnier 2022-02-13 16:52:43 +01:00 committed by chapeau
parent 0fc6b5f966
commit b9634d77a4
2 changed files with 11 additions and 5 deletions

View file

@ -32,14 +32,16 @@ from django.utils.translation import ugettext as _
from cotisations.models import Facture as Invoice
from cotisations.utils import find_payment_method
from re2o.acl import can_view
from .forms import InvoiceForm
from .models import ChequePayment
@login_required
def cheque(request, invoice_pk):
@can_view(Invoice)
def cheque(request, invoice, **_kwargs):
"""This view validate an invoice with the data from a cheque."""
invoice = get_object_or_404(Invoice, pk=invoice_pk)
payment_method = find_payment_method(invoice.paiement)
if invoice.valid or not isinstance(payment_method, ChequePayment):
messages.error(request, _("You can't pay this invoice with a cheque."))

View file

@ -34,7 +34,10 @@ from django.utils.datastructures import MultiValueDictKeyError
from django.utils.translation import ugettext as _
from django.views.decorators.csrf import csrf_exempt
from re2o.acl import can_view
from cotisations.models import Facture
from cotisations.utils import find_payment_method
from .comnpay import Transaction
from .models import ComnpayPayment
@ -42,13 +45,14 @@ from .models import ComnpayPayment
@csrf_exempt
@login_required
def accept_payment(request, factureid):
@can_view(Facture)
def accept_payment(request, invoice, **_kwargs):
"""
The view where the user is redirected when a comnpay payment has been
accepted.
"""
invoice = get_object_or_404(Facture, id=factureid)
if invoice.valid:
payment_method = find_payment_method(invoice.paiement)
if invoice.valid and isinstance(payment_method, ComnpayPayment):
messages.success(
request,
_("The payment of %(amount)s € was accepted.")