1ACC.worldpayCSE = { 2 3 errorCodeMap: {}, 4 5 encryptCardDetails: function () { 6 var data = { 7 cvc: $("#cvc").val(), 8 cardHolderName: $("#nameOnCard").val(), 9 cardNumber: $("#number").val(), 10 expiryMonth: $("#exp-month").val(), 11 expiryYear: $("#exp-year").val() 12 }; 13 var encryptedData = Worldpay.encrypt(data, this.errorHandler); 14 if (encryptedData) { 15 $("#encryptedData").val(encryptedData); 16 return true; 17 } else { 18 return false; 19 } 20 }, 21 22 bindPaymentButtons: function () { 23 var paymentButtonsSlot = $(".cms-payment-button"); 24 if (paymentButtonsSlot.length && paymentButtonsSlot.children().length > 0) { 25 paymentButtonsSlot.on("change", function () { 26 if ($("#paymentMethod_CC").is(":checked") || $("#paymentMethod_ONLINE").val() == "ONLINE") { 27 $(".terms").addClass("hidden"); 28 } 29 else { 30 $(".terms").removeClass("hidden"); 31 } 32 }); 33 } else if (paymentButtonsSlot.length) { 34 $(".terms").addClass("hidden"); 35 } 36 }, 37 38 errorHandler: function (errorCodes) { 39 for (var index in errorCodes) { 40 var errorCode = errorCodes[index].toString(); 41 ACC.worldpayCSE.showError($("#" + ACC.worldpayCSE.errorCodeMap[errorCode]), errorCode); 42 } 43 }, 44 45 showError: function (errorMessageField, errorCode) { 46 errorMessageField.html(ACC.addons.aryztaworldpayaddon["aryztaworldpayaddon.CSE.validation.error." + errorCode]); 47 errorMessageField.parent().removeClass("hidden"); 48 errorMessageField.closest(".form-group").addClass("has-error"); 49 50 }, 51 52 hideError: function (errorMessageField) { 53 errorMessageField.addClass("hidden"); 54 errorMessageField.closest(".form-group").removeClass("has-error"); 55 }, 56 57 clearCSEErrorFields: function () { 58 this.hideError($('div[id^="error-"]')); 59 }, 60 61 bindSubmitBillingAddressForm: function () { 62 $(".submit_worldpayCSEForm").click( 63 function (event) { 64 event.preventDefault(); 65 ACC.common.blockFormAndShowProcessingMessage($(this)); 66 $(".wpBillingAddress").filter(":hidden").remove(); 67 ACC.worldpay.enableAddressForm(); 68 $("#worldpayBillingAddressForm").submit(); 69 } 70 ); 71 }, 72 73 bindSubmitCseForm: function () { 74 $(".submit_cseDetails").click( 75 function (event) { 76 event.preventDefault(); 77 var container = $(".checkout-headline").parent(); 78 container.find(".global-alerts").remove(); 79 80 ACC.worldpayCSE.clearCSEErrorFields(); 81 82 var submit = ACC.worldpayCSE.encryptCardDetails(); 83 if (!$("#Terms1").is(':checked')) { 84 container.prepend( 85 "<div class='global-alerts'>" + 86 "<div class='alert alert-danger alert-dismissable'>" + 87 "<button class='close' aria-hidden='true' data-dismiss='alert' type='button'>×</button>" + 88 ACC.addons.aryztaworldpayaddon["aryztaworldpayaddon.checkout.error.terms.not.accepted"] + 89 "</div></div>" 90 ); 91 } else if (submit) { 92 $("#worldpayCsePaymentForm").submit(); 93 } 94 } 95 ); 96 }, 97 98 populateErrorCodeMap: function () { 99 this.errorCodeMap["101"] = "error-number"; 100 this.errorCodeMap["102"] = "error-number"; 101 this.errorCodeMap["103"] = "error-number"; 102 this.errorCodeMap["201"] = "error-cvc"; 103 this.errorCodeMap["301"] = "error-exp-date"; 104 this.errorCodeMap["302"] = "error-exp-date"; 105 this.errorCodeMap["303"] = "error-exp-date"; 106 this.errorCodeMap["304"] = "error-exp-date"; 107 this.errorCodeMap["305"] = "error-exp-date"; 108 this.errorCodeMap["306"] = "error-exp-date"; 109 this.errorCodeMap["401"] = "error-nameOnCard"; 110 this.errorCodeMap["402"] = "error-nameOnCard"; 111 }, 112 113 initForm: function () { 114 this.bindSubmitBillingAddressForm(); 115 this.populateErrorCodeMap(); 116 this.bindSubmitCseForm(); 117 this.bindPaymentButtons(); 118 } 119};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.