Finishes the public views documentation
This commit is contained in:
parent
2d8602a6da
commit
4373b7260d
2 changed files with 72 additions and 6 deletions
|
@ -1,5 +1,7 @@
|
||||||
Public-facing views
|
Public-facing views
|
||||||
===================
|
===================
|
||||||
|
|
||||||
|
Here's all of the views that Registrasion exposes to the public.
|
||||||
|
|
||||||
.. automodule:: registrasion.views
|
.. automodule:: registrasion.views
|
||||||
:members:
|
:members:
|
||||||
|
|
|
@ -619,7 +619,28 @@ def invoice(request, invoice_id, access_code=None):
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
def manual_payment(request, invoice_id):
|
def manual_payment(request, invoice_id):
|
||||||
''' Allows staff to make manual payments or refunds on an invoice.'''
|
''' Allows staff to make manual payments or refunds on an invoice.
|
||||||
|
|
||||||
|
This form requires a login, and the logged in user needs to be staff.
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
invoice_id (castable to int): The invoice ID to be paid
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
render:
|
||||||
|
Renders ``registrasion/manual_payment.html`` with the following
|
||||||
|
data::
|
||||||
|
|
||||||
|
{
|
||||||
|
"invoice": models.commerce.Invoice(),
|
||||||
|
"form": form, # A form that saves a ``ManualPayment``
|
||||||
|
# object.
|
||||||
|
}
|
||||||
|
|
||||||
|
Raises:
|
||||||
|
Http404: if the logged in user is not staff.
|
||||||
|
|
||||||
|
'''
|
||||||
|
|
||||||
FORM_PREFIX = "manual_payment"
|
FORM_PREFIX = "manual_payment"
|
||||||
|
|
||||||
|
@ -649,8 +670,22 @@ def manual_payment(request, invoice_id):
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
def refund(request, invoice_id):
|
def refund(request, invoice_id):
|
||||||
''' Allows staff to refund payments against an invoice and request a
|
''' Marks an invoice as refunded and requests a credit note for the
|
||||||
credit note.'''
|
full amount paid against the invoice.
|
||||||
|
|
||||||
|
This view requires a login, and the logged in user must be staff.
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
invoice_id (castable to int): The ID of the invoice to refund.
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
redirect:
|
||||||
|
Redirects to ``invoice``.
|
||||||
|
|
||||||
|
Raises:
|
||||||
|
Http404: if the logged in user is not staff.
|
||||||
|
|
||||||
|
'''
|
||||||
|
|
||||||
if not request.user.is_staff:
|
if not request.user.is_staff:
|
||||||
raise Http404()
|
raise Http404()
|
||||||
|
@ -666,9 +701,36 @@ def refund(request, invoice_id):
|
||||||
return redirect("invoice", invoice_id)
|
return redirect("invoice", invoice_id)
|
||||||
|
|
||||||
|
|
||||||
|
@login_required
|
||||||
def credit_note(request, note_id, access_code=None):
|
def credit_note(request, note_id, access_code=None):
|
||||||
''' Displays an credit note for a given id.
|
''' Displays a credit note.
|
||||||
This view can only be seen by staff.
|
|
||||||
|
If ``request`` is a ``POST`` request, forms for applying or refunding
|
||||||
|
a credit note will be processed.
|
||||||
|
|
||||||
|
This view requires a login, and the logged in user must be staff.
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
note_id (castable to int): The ID of the credit note to view.
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
render or redirect:
|
||||||
|
If the "apply to invoice" form is correctly processed, redirect to
|
||||||
|
that invoice, otherwise, render ``registration/credit_note.html``
|
||||||
|
with the following data::
|
||||||
|
|
||||||
|
{
|
||||||
|
"credit_note": models.commerce.CreditNote(),
|
||||||
|
"apply_form": form, # A form for applying credit note
|
||||||
|
# to an invoice.
|
||||||
|
"refund_form": form, # A form for applying a *manual*
|
||||||
|
# refund of the credit note.
|
||||||
|
}
|
||||||
|
|
||||||
|
Raises:
|
||||||
|
Http404: If the logged in user is not staff.
|
||||||
|
|
||||||
|
|
||||||
'''
|
'''
|
||||||
|
|
||||||
if not request.user.is_staff:
|
if not request.user.is_staff:
|
||||||
|
@ -705,7 +767,9 @@ def credit_note(request, note_id, access_code=None):
|
||||||
request,
|
request,
|
||||||
"Applied manual refund to credit note."
|
"Applied manual refund to credit note."
|
||||||
)
|
)
|
||||||
return redirect("invoice", invoice.id)
|
refund_form = forms.ManualCreditNoteRefundForm(
|
||||||
|
prefix="refund_note",
|
||||||
|
)
|
||||||
|
|
||||||
data = {
|
data = {
|
||||||
"credit_note": current_note.credit_note,
|
"credit_note": current_note.credit_note,
|
||||||
|
|
Loading…
Reference in a new issue