

$(function() {
    
	// Login box drop
	var button = $('#loginButton');
    var box = $('#loginBox');
    var form = $('#loginForm');
    button.removeAttr('href');
    button.mouseup(function(login) {
        box.toggle();
        button.toggleClass('active');
    });
    form.mouseup(function() { 
        return false;
    });
    $(this).mouseup(function(login) {
        if(!($(login.target).parent('#loginButton').length > 0)) {
            button.removeClass('active');
            box.hide();
        }
    });
		
	// Validate log in		
	$('form#loginForm').validate({
		ignoreTitle: true,
		errorClass: "error",
		highlight: function(element, errorClass) {
			$(element).addClass(errorClass);
			$(element.form).find("label[for=" + element.id + "]").parent()
					.addClass(errorClass);
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass(errorClass);
			$(element.form).find("label[for=" + element.id + "]").parent()
					.removeClass(errorClass);
		},
		rules: {
			boxnumber: {
				required: true,
				digits: true,
				minlength: 6
			},
			pin: {
				required: true,
				digits: true,
				minlength: 4
			}

		},
		messages: {
			boxnumber: {
				required: "Please specify a <strong>Box No.</strong>",
				digits: "<strong>Box No.</strong> should be digits only",
				minlength: jQuery.format("<strong>Box No.</strong> should be {0} digits")
			},
			pin: {
				required: "Please specify a <strong>PIN</strong>",
				digits: "<strong>PIN</strong> should be digits only",
				minlength: jQuery.format("<strong>PIN</strong> should be {0} digits")
			}
		}

	});
	
	if ($('#regDOBday').length > 0) {
		$('#regDOBday').parent().append('<input type="text" name="jn_dob" id="regDOB" value="' + $("#regDOBday").val() + '/' + $("#regDOBmonth").val() + '/' + $("#regDOByear").val() + '" style="width:0;height:0;display:block;position:absolute;top:-9999px" />');
		$("#regDOBday,#regDOBmonth,#regDOByear").change(function() {
			$("#regDOB").val($("#regDOBday").val() + '/' + $("#regDOBmonth").val() + '/' + $("#regDOByear").val());
			$("#regDOB").keyup();
		})
	}
	jQuery.validator.addMethod("validdate", function(value, element) {
        return Date.parseExact(value, "d/M/yyyy");
    }); 
	
	// Validate register on home
	$('form#formReg').validate({
		ignoreTitle: true,
		errorClass: "error",
		highlight: function(element, errorClass) {
			$(element).addClass(errorClass);
			$(element.form).find("label[for=" + element.id + "]").parent()
					.addClass(errorClass);
		},
		unhighlight: function(element, errorClass) {
			$(element).removeClass(errorClass);
			$(element.form).find("label[for=" + element.id + "]").parent()
					.removeClass(errorClass);
		},
		rules: {
			jn_firstname: {
				required: true,
				minlength: 2
			},
			jn_dobday: {
				required: true
			},
			jn_dobmonth: {
				required: true
			},
			jn_dobyear: {
				required: true
			},
			jn_dob: {
				validdate: true
			},
			jn_county: {
				required: true
			},
			jn_town: {
				required: true
			}
		},
		messages: {
			jn_firstname: {
				minlength: jQuery.format("This field should be {0} characters or more")
			},
			jn_dob: {
				validdate: 'Not a valid date'
			}
		}

	});
	
});

