Compare commits

...

5 commits

Author SHA1 Message Date
PCoder
f2b92a3670 Update Changelog for 2.10.3 2020-02-25 12:02:44 +05:30
eda887f82c Merge branch 'handle_invoice_error_when_no_stripecustomer' into 'master'
Handle invoice error when no stripecustomer

See merge request ungleich-public/dynamicweb!731
2020-02-25 07:30:07 +01:00
PCoder
56d3d4e7fe Check invoice list from stripe only if we have a stripecustomer 2020-02-25 11:50:39 +05:30
PCoder
e25ed77538 Handle invoice for no stripe error 2020-02-25 11:13:26 +05:30
PCoder
d0455fbafb Remove unused import 2020-02-04 17:10:11 +05:30
3 changed files with 17 additions and 9 deletions

View file

@ -1,3 +1,5 @@
2.10.3: 2020-02-25
* Handle 500 error in invoice list page for non-stripe users (MR!731)
2.10.2: 2020-02-04
* Introduce base price for VMs and let admins add stripe_coupon_id (MR!730)
Notes for deployment:

View file

@ -29,7 +29,7 @@ from utils.forms import (
)
from utils.hosting_utils import (
get_vm_price_with_vat, get_all_public_keys, get_vat_rate_for_country,
get_vm_price_for_given_vat, round_up
get_vm_price_for_given_vat
)
from utils.stripe_utils import StripeUtils
from utils.tasks import send_plain_email_task

View file

@ -1297,9 +1297,12 @@ class InvoiceListView(LoginRequiredMixin, TemplateView):
except CustomUser.DoesNotExist as dne:
logger.debug("User does not exist")
cu = self.request.user
invs = stripe.Invoice.list(customer=cu.stripecustomer.stripe_id,
count=100)
paginator = Paginator(invs.data, 10)
if hasattr(cu, 'stripecustomer'):
invs = stripe.Invoice.list(customer=cu.stripecustomer.stripe_id,
count=100)
else:
invs = []
paginator = Paginator(invs.data if len(invs) > 0 else [], 10)
try:
invs_page = paginator.page(page)
except PageNotAnInteger:
@ -1308,11 +1311,14 @@ class InvoiceListView(LoginRequiredMixin, TemplateView):
invs_page = paginator.page(paginator.num_pages)
else:
try:
invs = stripe.Invoice.list(
customer=self.request.user.stripecustomer.stripe_id,
count=100
)
paginator = Paginator(invs.data, 10)
if hasattr(self.request.user, "stripecustomer"):
invs = stripe.Invoice.list(
customer=self.request.user.stripecustomer.stripe_id,
count=100
)
else:
invs = []
paginator = Paginator(invs.data if len(invs) > 0 else [], 10)
try:
invs_page = paginator.page(page)
except PageNotAnInteger: