// JavaScript Document $(document).ready(function() { $("#phpcontactform").submit(function(e) { e.preventDefault(); var name = $("#name"); var email = $("#email"); var mobile = $("#mobile"); var msg = $("#message"); var flag = false; if (name.val() == "") { name.closest(".form-group").addClass("has-error"); name.focus(); flag = false; return false; } else { name.closest(".form-group").removeClass("has-error").addClass("has-success"); } if (email.val() == "") { email.closest(".form-group").addClass("has-error"); email.focus(); flag = false; return false; } else { email.closest(".form-group").removeClass("has-error").addClass("has-success"); } if (msg.val() == "") { msg.closest(".form-group").addClass("has-error"); msg.focus(); flag = false; return false; } else { msg.closest(".form-group").removeClass("has-error").addClass("has-success"); flag = true; $('input[type="submit"]').attr('disabled','disabled'); } var dataString = "name=" + name.val() + "&email=" + email.val() + "&mobile=" + mobile.val() + "&msg=" + msg.val(); $(".loading").fadeIn("slow").html("Loading..."); $.ajax({ type: "POST", data: dataString, url: "contact.php", cache: false, success: function (d) { $(".form-group").removeClass("has-success"); if(d == 'success') // Message Sent? Show the 'Thank You' message and hide the form $('.loading').fadeIn('slow').html('Mail sent Successfully.').delay(3000).fadeOut('slow'); else $('.loading').fadeIn('slow').html('Mail not sent.').delay(3000).fadeOut('slow'); } }); return false; }); $("#reset").click(function () { $(".form-group").removeClass("has-success").removeClass("has-error"); }); }) // Captcha coding // document.querySelector() is used to select an element from the document using its ID let captchaText = document.querySelector('#captcha'); var ctx = captchaText.getContext("2d"); ctx.font = "21px Roboto"; ctx.fillStyle = "#000"; let userText = document.querySelector('#textBox'); let submitButton = document.querySelector('#submitButton'); let output = document.querySelector('#output'); let refreshButton = document.querySelector('#refreshButton'); // alphaNums contains the characters with which you want to create the CAPTCHA let alphaNums = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9']; let emptyArr = []; // This loop generates a random string of 7 characters using alphaNums // Further this string is displayed as a CAPTCHA for (let i = 1; i <= 7; i++) { emptyArr.push(alphaNums[Math.floor(Math.random() * alphaNums.length)]); } var c = emptyArr.join(''); ctx.fillText(emptyArr.join(''),captchaText.width/4, captchaText.height/1.3); // This event listener is stimulated whenever the user press the "Enter" button // "Correct!" or "Incorrect, please try again" message is // displayed after validating the input text with CAPTCHA userText.addEventListener('keyup', function(e) { // Key Code Value of "Enter" Button is 13 if (e.keyCode === 13) { if (userText.value === c) { output.classList.add("correctCaptcha"); //output.innerHTML = "Correct!"; } else { output.classList.add("incorrectCaptcha"); output.innerHTML = "Incorrect, please try again"; } } }); // This event listener is stimulated whenever the user clicks the "Submit" button // "Correct!" or "Incorrect, please try again" message is // displayed after validating the input text with CAPTCHA submitButton.addEventListener('click', function() { if (userText.value === c) { output.classList.add("correctCaptcha"); //output.innerHTML = "Correct!"; } else { output.classList.add("incorrectCaptcha"); output.innerHTML = "Incorrect, please try again"; } }); // This event listener is stimulated whenever the user press the "Refresh" button // A new random CAPTCHA is generated and displayed after the user clicks the "Refresh" button refreshButton.addEventListener('click', function() { userText.value = ""; let refreshArr = []; for (let j = 1; j <= 7; j++) { refreshArr.push(alphaNums[Math.floor(Math.random() * alphaNums.length)]); } ctx.clearRect(0, 0, captchaText.width, captchaText.height); c = refreshArr.join(''); ctx.fillText(refreshArr.join(''),captchaText.width/4, captchaText.height/1.3); output.innerHTML = ""; });