var errorCounter = 0; var gcErrorMsg = false; var nextElement; // Method to focus on next field by pressing Enter function proceedOnEnter(GiftCardField, e) { var keynum; if (window.event) { // IE keynum = e.keyCode; } else if (e.which) { // Netscape/Firefox/Opera keynum = e.which; } // Code for Enter if (keynum == 13) { var fieldName = GiftCardField.name; var fieldId = GiftCardField.id; var i = fieldId.charAt(fieldId.length - 1); var nextRow = Number(i) + 1; var gcNumArray = document.getElementsByName("gcnum"); if (fieldName == "gcnum") { nextElement = document.getElementById("gcpin" + i); } if (fieldName == "gcpin") { if (nextRow == gcNumArray.length) { nextElement = document[lookupIdByTagId("frmShippingCheckout")][lookupIdByTagId("shipping")][0]; } else { nextElement = document.getElementById("gcnum" + nextRow); } } if (window.event) { // IE GiftCardField.blur(); } else if (e.which) { // Netscape/Firefox/Opera validateGCNumber(); return false; } } } function validateGCNumber() { var errorMessages = new Array(); errorMessages .push("Your Gift Card and/or PIN (Personal Identification Number) is invalid. Please resubmit your Gift Card information."); var gcNumArray = document.getElementsByName("gcnum"); var gcPinArray = document.getElementsByName("gcpin"); var gcnumPattern = /^\d{16}$/; var gcpinPattern = /^\d{4}$/; for (i = 0; i < gcNumArray.length; i++) { var gcnum = gcNumArray[i].value; var gcpin = gcPinArray[i].value; if (gcnum.length == 0) { // If they didn't entered giftcard number continue; } else if (gcnum.length < 16) { // If they entered giftcard number and less than 16 digits if ($('#labelerrgcnum' + i).length == 0) { $('#gclabelnum' + i) .prepend( '>> '); this.showErrorMessage(errorMessages); } } else if (gcnum.length == 16 && (gcnumPattern.test(gcnum) == false)) { // If they entered giftcard number and non-numeric values in // giftcard number if ($('#labelerrgcnum' + i).length == 0) { $('#gclabelnum' + i) .prepend( '>> '); this.showErrorMessage(errorMessages); } } else if (gcnum.length == 16 && (gcnumPattern.test(gcnum) == true)) { // If they entered giftcard number and numbers only $("#labelerrgcnum" + i).detach(); $("#errorMessage").html(''); if (gcpin.length == 0) { // If they didn't entered giftcard pin continue; } else if (gcpin.length < 4) { // If they entered giftcard pin and less than 4 digits if ($('#labelerrgcpin' + i).length == 0) { $('#gclabelpin' + i) .prepend( '>> '); this.showErrorMessage(errorMessages); } } else if (gcpin.length == 4 && (gcpinPattern.test(gcpin) == false)) { // If they entered giftcard pin and non-numeric values in // giftcard pin if ($('#labelerrgcpin' + i).length == 0) { $('#gclabelpin' + i) .prepend( '>> '); this.showErrorMessage(errorMessages); } } else if (gcpin.length == 4 && (gcpinPattern.test(gcpin) == true)) { $("#labelerrgcpin" + i).detach(); $("#errorMessage").html(''); } } } } function showErrorMessage(errorMessages) { var errorHeader = '
Please correct the following errors before continuing:
'; var errorBody = '
' + errorMessages.join("\n") + '
'; var errorZone = '
' + errorHeader + errorBody + '
'; $("#errorMessage").html(errorZone); }