var Login = function() { var handleLogin = function() { $('.login-form').validate({ errorElement: 'span', //default input error message container errorClass: 'help-block', // default input error message class focusInvalid: false, // do not focus the last invalid input rules: { username: { required: true }, password: { required: true }, remember: { required: false } }, messages: { username: { required: "Username is required." }, password: { required: "Password is required." } }, invalidHandler: function(event, validator) { //display error alert on form submit $('.alert-danger', $('.login-form')).show(); }, highlight: function(element) { // hightlight error inputs $(element) .closest('.form-group').addClass('has-error'); // set error class to the control group }, success: function(label) { label.closest('.form-group').removeClass('has-error'); label.remove(); }, errorPlacement: function(error, element) { error.insertAfter(element.closest('.input-icon')); }, submitHandler: function(form) { //form.submit(); // form validation success, call ajax form submit loginbutton(); } }); $('.login-form input').keypress(function(e) { if (e.which == 13) { if ($('.login-form').validate().form()) { // $('.login-form').submit(); //form validation success, call ajax form submit loginbutton(); } return false; } }); } var handleForgetPassword = function() { $('.forget-form').validate({ errorElement: 'span', //default input error message container errorClass: 'help-block', // default input error message class focusInvalid: false, // do not focus the last invalid input ignore: "", rules: { email: { required: true, email: true } }, messages: { email: { required: "Email is required." } }, invalidHandler: function(event, validator) { //display error alert on form submit }, highlight: function(element) { // hightlight error inputs $(element) .closest('.form-group').addClass('has-error'); // set error class to the control group }, success: function(label) { label.closest('.form-group').removeClass('has-error'); label.remove(); }, errorPlacement: function(error, element) { error.insertAfter(element.closest('.input-icon')); }, submitHandler: function(form) { form.submit(); } }); $('.forget-form input').keypress(function(e) { if (e.which == 13) { if ($('.forget-form').validate().form()) { $('.forget-form').submit(); } return false; } }); jQuery('#forget-password').click(function() { jQuery('.login-form').hide(); jQuery('.forget-form').show(); }); jQuery('#back-btn').click(function() { jQuery('.login-form').show(); jQuery('.forget-form').hide(); }); } var handleRegister = function() { $.validator.addMethod("check_date_of_birth", function (value, element) { if (this.optional(element)) { return true; } var dateOfBirth = $("#dob").val(); var arr_dateText = dateOfBirth.split("/"); day = arr_dateText[0]; month = arr_dateText[1]; year = arr_dateText[2]; var mydate = new Date(); mydate.setFullYear(year, month - 1, day); var maxDate = new Date(); maxDate.setYear(maxDate.getYear() - 18); if (maxDate < mydate) { return false; } return true; }, 'Sorry, only persons over the age of 18 can register'); function format(state) { if (!state.id) return state.text; // optgroup return "  " + state.text; } if (jQuery().select2) { $("#select2_sample4").select2({ placeholder: ' Select a Country', allowClear: true, formatResult: format, formatSelection: format, escapeMarkup: function(m) { return m; } }); $('#select2_sample4').change(function() { $('.register-form').validate().element($(this)); //revalidate the chosen dropdown value and show error or success message for the input }); } $('.register-form').validate({ errorElement: 'span', //default input error message container errorClass: 'help-block', // default input error message class focusInvalid: false, // do not focus the last invalid input ignore: "", rules: { fullname: { required: true }, email: { required: true, email: true }, address: { required: true }, city: { required: true }, country: { required: true }, username: { required: true }, dob: { check_date_of_birth: true }, password: { required: true }, rpassword: { equalTo: "#register_password" }, //betacode: { // required: true //}, tnc: { required: true } }, messages: { // custom messages for radio buttons and checkboxes tnc: { required: "Please accept TNC first." } }, invalidHandler: function(event, validator) { //display error alert on form submit }, highlight: function(element) { // hightlight error inputs $(element) .closest('.form-group').addClass('has-error'); // set error class to the control group }, success: function(label) { label.closest('.form-group').removeClass('has-error'); label.remove(); }, errorPlacement: function(error, element) { if (element.attr("name") == "tnc") { // insert checkbox errors after the container error.insertAfter($('#register_tnc_error')); } else if (element.closest('.input-icon').size() === 1) { error.insertAfter(element.closest('.input-icon')); } else { error.insertAfter(element); } }, submitHandler: function(form) { //form.submit(); registeruser(); } }); $('.register-form input').keypress(function(e) { if (e.which == 13) { if ($('.register-form').validate().form()) { //$('.register-form').submit(); registeruser(); } return false; } }); jQuery('#register-btn').click(function() { jQuery('.login-form').hide(); jQuery('.register-form').show(); }); jQuery('#register-back-btn').click(function() { jQuery('.login-form').show(); jQuery('.register-form').hide(); }); } return { //main function to initiate the module init: function() { handleLogin(); handleForgetPassword(); handleRegister(); } }; }(); function loginbutton() { var x = location.protocol; var unem = $('#login-unem').val(); var pass = $('#login-pass').val(); var gacode = $('#gacode').val(); $.ajax({ type: "POST", url: "https://www.cryptopoker.com/api/poker/login/", data: {Username: unem, Password: pass, GAcode: gacode}, dataType: 'JSON', success: function (data) { if (data.success === "yes") { window.location.replace("system.php"); return; } else { $('.alert').removeClass('display-hide'); $("#alert-span").text("Not valid!"); } } }); }; function registeruser() { var x = location.protocol; var name = $(".reg-name").val(); var address = $(".reg-address").val(); var city = $(".reg-city").val(); var country = $(".reg-country").val(); var user = $(".reg-user").val(); var pass = $(".reg-pass").val(); var email = $(".reg-email").val(); var betacode = $(".betacode").val(); var dob = $("#dob").val(); $.ajax({ type: "POST", url: "https://www.cryptopoker.com/api/poker/register/", data: { username: user, password: pass, email: email, fullname:name, address:address, city:city, country:country, bc:betacode, dob:dob}, dataType: 'JSON', success: function (data) { //var obj = $.parseJSON(data); console.log(data.msg); if (data.success === "yes") { jQuery('.login-form').show(); jQuery('.register-form').hide(); alert("Your account has been Created!"); } else { alert(data.msg); } } }); }