1234567891011121314151617181920212223242526 |
- # -*- coding: utf-8 -*-
- from __future__ import unicode_literals
- from django.shortcuts import render, get_object_or_404
- from django.core.exceptions import PermissionDenied
- from coin.billing.models import Invoice
- def get_invoice_from_id_or_number(id):
- """
- Return an invoice using id as invoice id or failing as invoice number
- """
- try:
- return Invoice.objects.get(pk=id)
- except:
- return get_object_or_404(Invoice, number=id)
- def assert_user_can_view_the_invoice(request, invoice):
- """
- Raise PermissionDenied if logged user can't access given invoice
- """
- if not invoice.has_owner(request.user.username)\
- and not request.user.is_superuser:
- raise PermissionDenied
|