Show VAT for eu countries only
This commit is contained in:
		
					parent
					
						
							
								aba3092207
							
						
					
				
			
			
				commit
				
					
						3ca7e89f4f
					
				
			
		
					 4 changed files with 32 additions and 14 deletions
				
			
		|  | @ -33,12 +33,14 @@ | |||
|                           {{billing_address.street_address}}, {{billing_address.postal_code}}<br> | ||||
|                           {{billing_address.city}}, {{billing_address.country}} | ||||
|                           {% if billing_address.vat_number %} | ||||
|                           <br/>{% trans "VAT Number" %} {{billing_address.vat_number}}  | ||||
|                                 {% if vm.vat_validation_status == "verified" %} | ||||
|                                     <span class="fa fa-fw fa-check-circle" aria-hidden="true" title='{% trans "Your VAT number has been verified" %}'></span> | ||||
|                                 {% else %} | ||||
|                                     <span class="fa fa-fw fa-info-circle" aria-hidden="true" title='{% trans "Your VAT number is under validation. VAT will be adjusted, once the validation is complete." %}'></span> | ||||
|                                 {% endif %} | ||||
|                               <br/>{% trans "VAT Number" %} {{billing_address.vat_number}} | ||||
|                               {% if vm.vat_validation_status != "ch_vat" and vm.vat_validation_status != "not_needed" %} | ||||
|                                     {% if vm.vat_validation_status == "verified" %} | ||||
|                                         <span class="fa fa-fw fa-check-circle" aria-hidden="true" title='{% trans "Your VAT number has been verified" %}'></span> | ||||
|                                     {% else %} | ||||
|                                         <span class="fa fa-fw fa-info-circle" aria-hidden="true" title='{% trans "Your VAT number is under validation. VAT will be adjusted, once the validation is complete." %}'></span> | ||||
|                                     {% endif %} | ||||
|                               {% endif %} | ||||
|                           {% endif %} | ||||
|                       {% endwith %} | ||||
|                     </p> | ||||
|  |  | |||
|  | @ -18,6 +18,11 @@ from .models import VMPricing, VMTemplate | |||
| 
 | ||||
| logger = logging.getLogger(__name__) | ||||
| 
 | ||||
| eu_countries = ['at', 'be', 'bg', 'ch', 'cy', 'cz', 'hr', 'dk', | ||||
|                 'ee', 'fi', 'fr', 'mc', 'de', 'gr', 'hu', 'ie', 'it', | ||||
|                 'lv', 'lu', 'mt', 'nl', 'po', 'pt', 'ro','sk', 'si', 'es', | ||||
|                 'se', 'gb'] | ||||
| 
 | ||||
| 
 | ||||
| def get_cms_integration(name): | ||||
|     current_site = Site.objects.get_current() | ||||
|  | @ -158,6 +163,11 @@ def validate_vat_number(stripe_customer_id, billing_address_id, | |||
|     if billing_address is not None: | ||||
|         logger.debug("BillingAddress found: %s %s type=%s" % ( | ||||
|             billing_address_id, str(billing_address), type(billing_address))) | ||||
|         if billing_address.country.lower().strip() not in eu_countries: | ||||
|             return { | ||||
|                 "validated_on": "", | ||||
|                 "status": "not_needed" | ||||
|             } | ||||
|         if billing_address.vat_number_validated_on: | ||||
|             logger.debug("billing_address verified on %s" % | ||||
|                          billing_address.vat_number_validated_on) | ||||
|  |  | |||
|  | @ -562,7 +562,7 @@ class PaymentOrderView(FormView): | |||
|                 request.session["vat_validation_status"] = validate_result["status"] | ||||
| 
 | ||||
|             # For generic payment we take the user directly to confirmation | ||||
|             if ('generic_payment_type' in request.session and | ||||
|             if ('generic_p`ayment_type' in request.session and | ||||
|                     self.request.session['generic_payment_type'] == 'generic'): | ||||
|                 return HttpResponseRedirect( | ||||
|                     reverse('datacenterlight:order_confirmation')) | ||||
|  | @ -617,7 +617,8 @@ class OrderConfirmationView(DetailView, FormView): | |||
| 
 | ||||
|         if ('generic_payment_type' in request.session and | ||||
|                 self.request.session['generic_payment_type'] == 'generic'): | ||||
|             if request.session["vat_validation_status"] == "verified": | ||||
|             if (request.session["vat_validation_status"] == "verified" or | ||||
|                     request.session["vat_validation_status"] == "not_needed"): | ||||
|                 request.session['generic_payment_details']['vat_rate'] = 0 | ||||
|                 request.session['generic_payment_details']['vat_amount'] = 0 | ||||
|                 request.session['generic_payment_details']['amount'] = request.session['generic_payment_details']['amount_before_vat'] | ||||
|  | @ -661,11 +662,13 @@ class OrderConfirmationView(DetailView, FormView): | |||
|             if user_vat_country.lower() == "ch": | ||||
|                 vm_specs["vat"] = vat | ||||
|                 vm_specs["vat_percent"] = vat_percent | ||||
|                 vm_specs["vat_validation_status"] = "ch_vat" | ||||
|             elif ("vat_validation_status" in request.session and | ||||
|                     request.session["vat_validation_status"] == "verified"): | ||||
|                     (request.session["vat_validation_status"] == "verified" or | ||||
|                      request.session["vat_validation_status"] == "not_needed")): | ||||
|                 vm_specs["vat_percent"] = 0 | ||||
|                 vm_specs["vat"] = 0 | ||||
|                 vm_specs["vat_validation_status"] = "verified" | ||||
|                 vm_specs["vat_validation_status"] = request.session["vat_validation_status"] | ||||
|             else: | ||||
|                 vm_specs["vat"] = vat | ||||
|                 vm_specs["vat_percent"] = vat_percent | ||||
|  |  | |||
|  | @ -27,10 +27,13 @@ | |||
|                             {% bootstrap_field field show_label=False type='fields' bound_css_class='' %} | ||||
|                         {% endfor %} | ||||
|                         {% if form.instance.vat_number %} | ||||
|                             {% if form.instance.vat_validation_status == "verified" %} | ||||
|                                         <span class="fa fa-fw fa-check-circle" aria-hidden="true" title='{% trans "Your VAT number has been verified" %}'></span> | ||||
|                             {% elif form.instance.vat_validation_status == "pending" %} | ||||
|                                         <span class="fa fa-fw fa-info-circle" aria-hidden="true" title='{% trans "Your VAT number is under validation. VAT will be adjusted, once the validation is complete." %}'></span> | ||||
|                             {% if form.instance.vat_validation_status != "ch_vat" and form.instance.vat_validation_status != "not_needed" %} | ||||
| 
 | ||||
|                                 {% if form.instance.vat_validation_status == "verified" %} | ||||
|                                             <span class="fa fa-fw fa-check-circle" aria-hidden="true" title='{% trans "Your VAT number has been verified" %}'></span> | ||||
|                                 {% elif form.instance.vat_validation_status == "pending" %} | ||||
|                                             <span class="fa fa-fw fa-info-circle" aria-hidden="true" title='{% trans "Your VAT number is under validation. VAT will be adjusted, once the validation is complete." %}'></span> | ||||
|                                 {% endif %} | ||||
|                             {% endif %} | ||||
|                         {% endif %} | ||||
|                         <div class="form-group text-right"> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue