
$().ready(function(){
	var dupe_uid = false;
	var dupe_email = false;
	$(".register tbody tr:odd").addClass("odd");
	$(".register tbody tr:even").addClass("even");
	$("#submit-message").empty().hide();
	document.getElementById("chkTerms").checked = true;
	
	$("input[type='checkbox']").click(function() {
		if ($(this).is(":checked")) {
			$(this).parent().removeClass().addClass("ok").addClass("topleft"); 
		}
		else {
			$(this).parent().removeClass().addClass("x").addClass("topleft"); 
		}
	});
	
	$("input").blur(function() {
		$(this).parent().next().removeClass();
	});
	
	$("#input_un").blur(function() {
		var re = new RegExp(/^\w{4,22}$/);
		var err_msg = "";
		var input_un = $(this).val();
			if (!re.test(input_un)) err_msg = err_messages["invalid user id"];
			if (input_un.indexOf('yaho') != -1 || input_un.indexOf('hotmail') != -1 || input_un.indexOf('admin') != -1) err_msg = err_messages["invalid word in user id"];
			var tempar = input_un.split(/\d/);
			if (tempar.length > 6) err_msg = err_messages["too many numbers in user id"];
			if (!isNaN(input_un)) err_msg = err_messages["not enough letters in user id"];

			if (err_msg != '')
				display_error("input_un", err_msg); 
			else {
				var randid = Math.random();
				$.get("/register/index.asp", {a:"check_username", username:input_un ,rand:randid}, function(data) {
					dupe_uid = (data.length > 2) ? true : false;
					display_error("input_un", data);
				});
			}
		
	});
	
	$("#input_pw1").blur(function() {
		var err_msg = ($(this).val().length < 6 || $(this).val().length > 22) ? err_messages["password length"] : "";
		display_error("input_pw1", err_msg); 
	});
	
	$("#input_pw2").blur(function() {
		err_msg = ($(this).val() != $("#input_pw1").val()) ? err_messages["passwords do not match"] : "";
		display_error("input_pw2", err_msg); 
	});

	$("#input_email").blur(function() {
		var errMessageHotmail = $("#ar_err").val();
		var re = new RegExp(/.+@.+\.[a-zA-Z]{2,4}$/);
		var $email = $(this).val().toLowerCase();
		var err_msg = (!re.test($email)) ? $("#smart_email_cnd").val(): "";
		if ($email.indexOf("@qiran.com") != -1 || $email.indexOf("@mehndi.com") != -1) {	err_msg = "Invalid email address. Please enter your regular email address."	}
		// username cannot be same as email username (if at yahoo or hotmail)
		if ($email.indexOf("@yahoo.co") != -1 || $email.indexOf("@hotmail.co") != -1 || $email.indexOf("@gmail.co") != -1 || $email.indexOf("@aol.co") != -1) {
			if ($email.substr(0,$email.indexOf('@')) == $("#input_un").val().toLowerCase()) err_msg = errMessageHotmail;
		}
		if(err_msg != ''){
			display_error("input_email", err_msg); 
		}else{
			var randid = Math.random();
				$.get("/register/index.asp", {a:"check_email", email:$email ,rand:randid}, function(data) {
					dupe_email = (data.length > 2) ? true : false;
					display_error("input_email", data);
				});	
		}
	});


	$("#input_fname").blur(function() {
		var err_msg = ($(this).val().length < 2) ? $("#smart_2char_cnd").val(): "";
		display_error("input_fname", err_msg); 
	});

	$("#input_lname").blur(function() {
		var err_msg = ($(this).val().length < 2) ? $("#smart_2char_cnd").val(): "";
		display_error("input_lname", err_msg); 
	});

	$("#input_country").blur(function() {
		var err_msg = (!$(this).val()) ? $("#smart_resCountry_cnd").val(): "";
		display_error("input_country", err_msg); 
	});

	$("#input_secretQ").blur(function() {
		var err_msg = (!$(this).val()) ? $("#smart_selSec_cnd").val(): "";
		display_error("input_secretQ", err_msg); 
	});

	$("#input_secretA").blur(function() {
		var err_msg = (!$(this).val()) ? $("#smart_ansSec_cnd").val(): "";
		display_error("input_secretA", err_msg); 
	});

	$("#input_refmedia").blur(function() {
		var err_msg = (!$(this).val()) ? $("#smart_hau_cnd").val(): "";
		display_error("input_refmedia", err_msg); 
	});


	$("#maincontent form").submit(function() {
		$("#submit-message").empty().hide();
		$(":input").trigger("blur");
		if (dupe_uid) $("#input_un").parent().next().addClass("x"); 
		if (dupe_email) $("#input_email").parent().next().addClass("x");
		var numWarnings = $(".x", this).length;
		if (numWarnings) {
			$(".x").animate({opacity:0.1},250).animate({opacity:1.0},250).animate({opacity:0.1},250).animate({opacity:1.0},250).animate({opacity:0.1},250).animate({opacity:1.0},250);
			
			$("#submit-message").show().append("Oops! " + numWarnings + " fields need to be corrected:<br/>").insertBefore(".button");
			$(".x").prev().children("input,select").each(function() {
				$("#submit-message").append('<strong>' + $(this).attr("title") + '</strong>, ');
			});

			return false;
		}


		if (!$(':checked').length) {
			$("#submit-message").show().append('<p><strong>'+$("#smart_terms_cnd").val()+'</strong></p>');
			return false;
		};


	});
	
	
});

function display_error(el, msg) {
	var $el = $("#" + el).next();
	if(msg.length > 2){
		$el.html(msg).fadeIn(300).parent().next().removeClass("ok").addClass("x");
		setTimeout(function() {
			$el.fadeOut(1000);	}, 5000);
	}
	else {
		$el.parent().next().removeClass().removeClass("x").addClass("ok");
	}
}

