Skip to content

Commit

Permalink
#443 invoice only functionality: handle correctly when eu vat is not …
Browse files Browse the repository at this point in the history
…enabled
  • Loading branch information
syjer committed May 28, 2018
1 parent de50a2a commit 877ebf6
Show file tree
Hide file tree
Showing 9 changed files with 29 additions and 12 deletions.
3 changes: 3 additions & 0 deletions src/main/java/alfio/controller/form/PaymentForm.java
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,9 @@ public void validate(BindingResult bindingResult, TotalPrice reservationCost, Ev

rejectIfOverLength(bindingResult, "billingAddress", ErrorsCode.STEP_2_MAX_LENGTH_BILLING_ADDRESS,
billingAddress, 450);
if(invoiceRequested) {
ValidationUtils.rejectIfEmptyOrWhitespace(bindingResult, "billingAddress", ErrorsCode.STEP_2_EMPTY_BILLING_ADDRESS);
}

if (email != null && !email.contains("@") && !bindingResult.hasFieldErrors("email")) {
bindingResult.rejectValue("email", ErrorsCode.STEP_2_INVALID_EMAIL);
Expand Down
1 change: 1 addition & 0 deletions src/main/java/alfio/util/ErrorsCode.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ public interface ErrorsCode {
String STEP_2_EMPTY_FULLNAME = "error.STEP_2_EMPTY_FULLNAME";
String STEP_2_MAX_LENGTH_FULLNAME = "error.STEP_2_MAX_LENGTH_FULLNAME";
String STEP_2_MAX_LENGTH_BILLING_ADDRESS = "error.STEP_2_MAX_LENGTH_BILLING_ADDRESS";
String STEP_2_EMPTY_BILLING_ADDRESS = "error.STEP_2_EMPTY_BILLING_ADDRESS";

String STEP_2_INVALID_HMAC = "error.STEP_2_INVALID_HMAC";
String STEP_2_PAYMENT_REQUEST_CREATION = "error.STEP_2_PAYMENT_REQUEST_CREATION";
Expand Down
3 changes: 2 additions & 1 deletion src/main/resources/alfio/i18n/public.properties
Original file line number Diff line number Diff line change
Expand Up @@ -360,4 +360,5 @@ reservation-page.eu-countries=EU countries
reservation-page.all-countries=All the countries
reservation-page.reset-billing-informations=Reset Billing Information
common.apply=Apply
reservation.add-company-billing-details=add company billing details (require a VAT number)
reservation.add-company-billing-details=add company billing details (require a {0} number)
error.STEP_2_EMPTY_BILLING_ADDRESS=Billing address is mandatory
3 changes: 2 additions & 1 deletion src/main/resources/alfio/i18n/public_de.properties
Original file line number Diff line number Diff line change
Expand Up @@ -350,4 +350,5 @@ reservation-page.eu-countries=EU Staaten
reservation-page.all-countries=alle Länder
common.apply=Anwenden
reservation-page.reset-billing-informations=Rechnungsinformationen löschen
reservation.add-company-billing-details=[DE] add company billing details (require a VAT number)
reservation.add-company-billing-details=[DE] add company billing details (require a {0} number)
error.STEP_2_EMPTY_BILLING_ADDRESS=[DE] Billing address is mandatory
3 changes: 2 additions & 1 deletion src/main/resources/alfio/i18n/public_fr.properties
Original file line number Diff line number Diff line change
Expand Up @@ -360,4 +360,5 @@ reservation-page.eu-countries=Pays UE
reservation-page.all-countries=Tout les pays
common.apply=Appliquer
reservation-page.reset-billing-informations=Effacer les données de facturation
reservation.add-company-billing-details=[FR] add company billing details (require a VAT number)
reservation.add-company-billing-details=[FR] add company billing details (require a {0} number)
error.STEP_2_EMPTY_BILLING_ADDRESS=[FR] Billing address is mandatory
3 changes: 2 additions & 1 deletion src/main/resources/alfio/i18n/public_it.properties
Original file line number Diff line number Diff line change
Expand Up @@ -344,4 +344,5 @@ reservation-page.eu-countries=Paesi UE
reservation-page.all-countries=Tutti i paesi
common.apply=Applica
reservation-page.reset-billing-informations=Cancella i dati di fatturazione
reservation.add-company-billing-details=[IT] add company billing details (require a VAT number)
reservation.add-company-billing-details=[IT] add company billing details (require a {0} number)
error.STEP_2_EMPTY_BILLING_ADDRESS=[IT] Billing address is mandatory
3 changes: 2 additions & 1 deletion src/main/resources/alfio/i18n/public_nl.properties
Original file line number Diff line number Diff line change
Expand Up @@ -354,4 +354,5 @@ reservation-page.eu-countries=EU landen
reservation-page.all-countries=alle landen
common.apply=Toepassen
reservation-page.reset-billing-informations=Factureringsinformatie verwijderen
reservation.add-company-billing-details=[NL] add company billing details (require a VAT number)
reservation.add-company-billing-details=[NL] add company billing details (require a {0} number)
error.STEP_2_EMPTY_BILLING_ADDRESS=[NL] Billing address is mandatory
14 changes: 8 additions & 6 deletions src/main/webapp/WEB-INF/templates/event/reservation-page.ms
Original file line number Diff line number Diff line change
Expand Up @@ -251,12 +251,14 @@
{{^vatNrIsLinked}}
{{#onlyInvoice}}
<input type="hidden" name="invoiceRequested" id="invoice-requested" value="true">
<div class="checkbox wMarginTop">
<label>
<input type="checkbox" name="addCompanyBillingDetails" id="add-company-billing-details" value="true">
{{#i18n}}reservation.add-company-billing-details{{/i18n}}
</label>
</div>
{{#euVatCheckingEnabled}}
<div class="checkbox wMarginTop">
<label>
<input type="checkbox" name="addCompanyBillingDetails" id="add-company-billing-details" value="true">
{{#i18n}}reservation.add-company-billing-details [{{vatTranslation}}]{{/i18n}}
</label>
</div>
{{/euVatCheckingEnabled}}
{{/onlyInvoice}}
{{^onlyInvoice}}
<div class="checkbox wMarginTop">
Expand Down
8 changes: 7 additions & 1 deletion src/main/webapp/resources/js/event/reservation-page.js
Original file line number Diff line number Diff line change
Expand Up @@ -345,7 +345,9 @@

var invoiceOnlyMode = $('#invoice-requested[type=hidden]') && $('#invoice-requested[type=hidden]').val() == 'true';

if(!invoiceOnlyMode && $("#invoice[data-eu-vat-checking-enabled=true]").length === 1 && $("input[type=hidden][name=vatNr]").length === 0) {
var euVATCheckingEnabled = $("#invoice[data-eu-vat-checking-enabled=true]").length === 1;

if(!invoiceOnlyMode && euVATCheckingEnabled && $("input[type=hidden][name=vatNr]").length === 0) {
$("#billing-address-container").addClass(hiddenClasses);
}

Expand All @@ -362,10 +364,14 @@
$('#billing-address').attr('required', false).attr('disabled');
$('#billing-address-container').addClass(hiddenClasses);
$("#eu-vat-check-countries").removeClass(hiddenClasses);
if(euVATCheckingEnabled) {
$("#vatCountry").attr('required', true).removeAttr('disabled', '');
}
} else {
$('#billing-address').attr('required', true).removeAttr('disabled');
$('#billing-address-container').removeClass(hiddenClasses);
$("#eu-vat-check-countries").addClass(hiddenClasses);
$("#vatCountry").removeAttr('required').removeAttr('disabled', '');
}
});
//
Expand Down

0 comments on commit 877ebf6

Please sign in to comment.