$(document).ready(function () { $.validator.addMethod("valueNotEquals", function (value, element, arg) { return arg != value; }, "Please select the option."); $.validator.addMethod( "regex", function(value, element, regexp) { if (regexp.constructor != RegExp) regexp = new RegExp(regexp); else if (regexp.global) regexp.lastIndex = 0; return this.optional(element) || regexp.test(value); }, "Password should be min 8 alphanumeric characters with uppercase letters, lowercase letters and at least one number." ); $('#login_tab').click(function(){ $('.optVerifaction').hide(); $('#userLoginForm').show(); $('.signUpBlock').show(); }); $('#userForm').validate({ errorClass: "help-block", validClass: 'valid', rules: { 'email': { required: true, email: true, remote: {url: SITE_URL + 'ajax/checkEmailAvailibility/' + $('#email').val(), type: 'GET'} }, 'full_name': { required: true }, 'contact_code': { required: true }, 'contact_number': { required: true, number: true, maxlength: 10, minlength:10, remote: {url: SITE_URL + 'ajax/checkUserContactAvailibility/' +$('#contact_number').val(), type: 'GET'} }, 'password': { required: true, minlength: 8, regex: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,16}$/i, }, 'con_password': { required: true, equalTo: "#password" }, 'location': { required: true }, }, messages: { 'email': { required: 'Please enter email address.', email: 'Please enter valid email address.', remote: 'Email address is already exist.' }, 'full_name': { required: 'Please enter full name.', }, 'contact_code': { required: 'Please select country code.', }, 'contact_number': { required: 'Please enter contact number.', pattern: 'Please enter valid contact number.', maxlength: 'Contact number is no more than 10 digits.', minlength:'Please specify a valid contact number.', digits: 'Please specify a valid contact number.', remote: 'Contact number is already exist.' }, 'password': { required: 'Please enter new password.', minlength: 'New password must be at least 8 characters long.' }, 'con_password': { required: 'Please enter confirm password.', equalTo: "New password and confirm password does not match." }, 'location': { required: 'Please enter the location.', } }, errorPlacement: function (error, element) { //element.parents('div.form-group').append(error); }, highlight: function (element, errorClass, validClass) { $(element).parents("div.form-group").addClass('has-error').removeClass(validClass); }, invalidHandler: function (form, validator) { var errors = validator.numberOfInvalids(); var errorMsgs = ''; $.each(validator.invalid, function (key, val) { errorMsgs += val + '
'; }); if (errorMsgs) { $.growl.error({title: 'Signup Error!', message: errorMsgs}); } }, unhighlight: function (element, errorClass, validClass) { $(element).parents(".has-error").removeClass('has-error').addClass(validClass); }, submitHandler: function (form) { var formData = $('#userForm').serialize(); $('#save').text('Please wait...'); $('#save').attr('disabled', true); $.ajax({ type: 'POST', url: SITE_URL + 'ajax/validUserSignup/', data: formData, success: function (response) { var response1 = jQuery.parseJSON(response); $('#save').text('Signup'); $('#save').attr('disabled', false); if (response1.status == 'success') { var form = $("#userForm"); form.validate().resetForm(); // clear out the validation errors form[0].reset(); // clear out the form data // abid $('#myModal').modal('toggle'); /* $.growl.notice({ "title": "Thanks for registration.", message: 'An OTP is sent on your mobile number. Please enter OTP below to confirm your account.' });*/ //$('.optVerifaction').show(); //$('.signUpBlock').hide(); document.location.replace(SITE_URL+'pages/info/reg-success'); $('#phone').val(response1.phone); //todo } else if (response1.status == 'error') { $('.loading_div').hide(); $('.error-msg').html(response1.message); $.growl.error({title: 'Signup Error!', message: response1.message}); } }, error: function () { } }); } }); $('#userLoginPageForm').validate({ errorClass: "help-block", validClass: 'valid', rules: { "email": { required: true, email: true, }, "password": { required: true, } }, messages: { "email": { required: "Email address is required.", email: "Valid email address is required.", }, "password": { required: "Password is required.", }, }, errorPlacement: function (error, element) { //element.parents('div.form-group').append(error); }, highlight: function (element, errorClass, validClass) { $(element).parents("div.form-group").addClass('has-error').removeClass(validClass); }, unhighlight: function (element, errorClass, validClass) { $(element).parents(".has-error").removeClass('has-error').addClass(validClass); }, invalidHandler: function (form, validator) { var errors = validator.numberOfInvalids(); var errorMsgs = ''; $.each(validator.invalid, function (key, val) { errorMsgs += val + '
'; }); if (errorMsgs) { $.growl.error({title: 'Login Error!', message: errorMsgs}); } }, submitHandler: function (form) { form.submit(); } }); $('#userLoginForm').validate({ errorClass: "help-block", validClass: 'valid', rules: { "username": { required: true, email: true, }, "password": { required: true, regex: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,16}$/i, } }, messages: { "username": { required: "Email address is required.", email: "Valid email address is required.", }, "password": { required: "Password is required.", }, }, errorPlacement: function (error, element) { //element.parents('div.form-group').append(error); }, highlight: function (element, errorClass, validClass) { $(element).parents("div.form-group").addClass('has-error').removeClass(validClass); }, unhighlight: function (element, errorClass, validClass) { $(element).parents(".has-error").removeClass('has-error').addClass(validClass); }, invalidHandler: function (form, validator) { var errors = validator.numberOfInvalids(); var errorMsgs = ''; $.each(validator.invalid, function (key, val) { errorMsgs += val + '
'; }); if (errorMsgs) { $.growl.error({title: 'Login Error!', message: errorMsgs}); } }, submitHandler: function (form) { var formData = $('#userLoginForm').serialize(); $('#login').text('Sign In...'); $('#login').attr('disabled', true); $.ajax({ type: 'POST', url: SITE_URL + 'ajax/loginProcess/', data: formData, success: function (response) { var response1 = jQuery.parseJSON(response); if (response1.code == '2') { $('#login').text('Sign In'); $('#login').attr('disabled', false); if(response1.status == 'error'){ $.growl.error({ message: response1.message }); }else{ $.growl.error({ message: "Email address and password is incorrect." }); } } else if (response1.code == '4') { /* $.growl.notice({ title: "", message: "An OTP is sent on your mobile number. Please enter OTP below to confirm your account.", });*/ document.location.replace(SITE_URL+'pages/info/email_not_verified'); //$('#userLoginForm').hide(); // $('.optVerifaction').show(); // $('#phone').val(response1.phone); } else if (response1.code == '5') { $.growl.error({ message: "Please verify your email address." }); } else if (response1.code == '1') { var form = $("#userLoginForm"); form.validate().resetForm(); // clear out the validation errors // form[0].reset(); // clear out the form data /* abid 24/8$.growl.notice({ "title": "Login Success.", message: 'You are now logged in.' });*/ var check_url = current_page.split('?'); if(check_url[1]!=undefined && check_url[1].indexOf('fbclid')==-1){ var check_url = check_url[1].split('='); SITE_URL = SITE_URL.substring(0, SITE_URL.length-1); current_page = decodeURIComponent(SITE_URL + check_url[1]); } window.location = current_page; } }, error: function () {} }); } }); $('#forgotPasswordForm').validate({ errorClass: "help-block", validClass: 'valid', rules: { "email": { required: true, email: true, }, }, messages: { "username": { required: "Email address is required.", email: "Valid email address is required.", }, }, errorPlacement: function (error, element) { }, highlight: function (element, errorClass, validClass) { $(element).parents("div.form-group").addClass('has-error').removeClass(validClass); }, unhighlight: function (element, errorClass, validClass) { $(element).parents(".has-error").removeClass('has-error').addClass(validClass); }, invalidHandler: function (form, validator) { var errors = validator.numberOfInvalids(); var errorMsgs = ''; $.each(validator.invalid, function (key, val) { errorMsgs += val + '
'; }); if (errorMsgs) { $.growl.error({title: 'Login Error!', message: errorMsgs}); } }, submitHandler: function (form) { var formData = $('#forgotPasswordForm').serialize(); $('#login').text('Sign In...'); $('#login').attr('disabled', true); $.ajax({ type: 'POST', url: SITE_URL + 'ajax/forgotPassword/', data: formData, beforeSend:function(){ $('#forgot_submit').text('Submit..'); $('#forgot_submit').attr('disabled', true); }, success: function (response) { var response1 = jQuery.parseJSON(response); if (response1.success == '1') { $('#forgotPassword').modal('hide'); $('#cpmail').modal('show'); $('#forgot_submit').text('Submit'); $('#forgot_submit').attr('disabled', false); } else{ var form = $("#forgotPasswordForm"); form.validate().resetForm(); // clear out the validation errors form[0].reset(); // clear out the form data $.growl.notice({ "title": "Email Error.", message: response1.message }); $('#forgot_submit').text('Submit'); $('#forgot_submit').attr('disabled', false); } }, error: function () {} }); } }); $('#otpVerifyForm').validate({ errorClass: "help-block", validClass: 'valid', rules: { "opt": { required: true, } }, messages: { "opt": { required: "Please Enter OTP", }, }, errorPlacement: function (error, element) { }, highlight: function (element, errorClass, validClass) { $(element).parents("div.form-group").addClass('has-error').removeClass(validClass); }, unhighlight: function (element, errorClass, validClass) { $(element).parents(".has-error").removeClass('has-error').addClass(validClass); }, invalidHandler: function (form, validator) { var errors = validator.numberOfInvalids(); var errorMsgs = ''; $.each(validator.invalid, function (key, val) { errorMsgs += val + '
'; }); if (errorMsgs) { $.growl.error({title: 'OTP Error!', message: errorMsgs}); } }, submitHandler: function (form) { var formData = $('#otpVerifyForm').serialize(); $('#otp_verify').text('Verifying...'); $('#otp_verify').attr('disabled', true); $.ajax({ type: 'POST', url: SITE_URL + 'ajax/verifyOtp/', data: formData, success: function (response) { var response1 = jQuery.parseJSON(response); if (response1.status == 'success') { $('#otp_verify').text('OTP Verified'); window.location.href = window.location = SITE_URL + 'users/account'; // $('#qn').show(); // $('#sign_in_up').hide(); //$('#ques_block').show(); /*$.growl.notice({ "title": "OTP Verified Successfully", message: '' });*/ }else{ $('#otp_verify').text('Submit'); $('#otp_verify').attr('disabled', false); $.growl.error({ "title": "OTP Error", message: 'This OTP is not Valid.Enter a Valid OTP' }); } }, error: function () {} }); } }); $('#state').on('change', function () { $.cookie('parent_locality_id', $('#state').val(), {expires: 365, path: '/'}); $.cookie('parent_locality_value', $('#state option:selected').text(), {expires: 365, path: '/'}); $('#zip_code').val(""); }); });