Adds “fix_errors” query to “checkout”, which allows users to have issues fix
This commit is contained in:
		
							parent
							
								
									39b130811c
								
							
						
					
					
						commit
						0340b6da20
					
				
					 1 changed files with 21 additions and 1 deletions
				
			
		|  | @ -377,10 +377,30 @@ def checkout(request): | ||||||
|     invoice. ''' |     invoice. ''' | ||||||
| 
 | 
 | ||||||
|     current_cart = CartController.for_user(request.user) |     current_cart = CartController.for_user(request.user) | ||||||
|     current_invoice = InvoiceController.for_cart(current_cart.cart) | 
 | ||||||
|  |     if "fix_errors" in request.GET and request.GET["fix_errors"] == "true": | ||||||
|  |         current_cart.fix_simple_errors() | ||||||
|  | 
 | ||||||
|  |     try: | ||||||
|  |         current_invoice = InvoiceController.for_cart(current_cart.cart) | ||||||
|  |     except ValidationError as ve: | ||||||
|  |         return checkout_errors(request, ve) | ||||||
| 
 | 
 | ||||||
|     return redirect("invoice", current_invoice.invoice.id) |     return redirect("invoice", current_invoice.invoice.id) | ||||||
| 
 | 
 | ||||||
|  | def checkout_errors(request, errors): | ||||||
|  | 
 | ||||||
|  |     error_list = [] | ||||||
|  |     for error in errors.error_list: | ||||||
|  |         if isinstance(error, tuple): | ||||||
|  |             error = error[1] | ||||||
|  |         error_list.append(error) | ||||||
|  | 
 | ||||||
|  |     data = { | ||||||
|  |         "error_list": error_list, | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     return render(request, "registrasion/checkout_errors.html", data) | ||||||
| 
 | 
 | ||||||
| @login_required | @login_required | ||||||
| def invoice(request, invoice_id): | def invoice(request, invoice_id): | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Christopher Neugebauer
						Christopher Neugebauer