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);
}
}
});
}