var tp_div_height = 0;
var tp_p_height = 0;

$(document).ready(function() {

	// run initially
	if(isiPhone() === false){
		$("input[name='login_username']").focus();
	}
	$("#tp_reviews div.container").each(function() { 
		if($(this).height() > tp_div_height) { 
			tp_div_height = $(this).height(); 
		} 
		if($("p.text", $(this)).height() > tp_p_height) { 
			tp_p_height = $("p.text", $(this)).height();
		}
	}).height(tp_div_height);
	$("#tp_reviews div.expanded").height(tp_p_height);
	$("#tp_reviews span.expand").click(function() { $(".expanded", $(this).closest('div.container')).show(); $(".text", $(this).closest('div.container')).hide(); });
	$("#tp_reviews span.contract").click(function() { $(".expanded", $(this).closest('div.container')).hide(); $(".text", $(this).closest('div.container')).show(); });
	$("input").attr("autocomplete","off");

	// Form validation
	$("#logon_form").submit(function() {
		$("input", $(this)).each(function(){
			if($(this).val().length == 0){
				$(this).addClass("formError");
			}
		});
		if($(".formError", $(this)).length) {
			return false;
		}
	});

	$("#signup_form").submit(function() {
		$(".error,.notice").remove();
		var missing_fields = 0;
		var username = $("input[name='signup_username']");
		var password = $("input[name='signup_password']");
		var email = $("input[name='email']");
		var eula = $("input[name='eula']");
		$("input[type!='checkbox']", $(this)).each(function(){
			if($(this).val().length == 0){
				missing_fields++;
				$(this).addClass("formError");
			}
		});
		$("select", $(this)).each(function(){
			if($(this).val() == 0) {
				missing_fields++;
				$(this).addClass("formError");
			}
		});
		if(username.val().length > 0 && !isValidUsername(username.val())) {
			username.addClass("formError");
			$("button", $(this)).after("<p class='error'>"+username.data("txt1")+"</p>");
		}
		if(username.val().length > 0 && username.val().length > 14) {
			username.addClass("formError");
			$("button", $(this)).after("<p class='error'>"+username.data("txt2")+"</p>");
		}
		if(password.val().length > 0 && password.val().length < 4) {
			password.addClass("formError");
			$("button", $(this)).after("<p class='error'>"+password.data("txt1")+"</p>");
		}
		if(email.val().length > 0 && !isValidEmail(email.val())) {
			email.addClass("formError");
			$("button", $(this)).after("<p class='error'>"+email.data("txt1")+"</p>");
		}
		if(!eula.is(":checked")){
			eula.addClass("formError");
			$("button", $(this)).after("<p class='error'>"+eula.data("txt1")+"</p>");
		}
		if($(".formError", $(this)).length > 0) {
			if(missing_fields > 0 && $(".error", $(this)).length == 0){
				$("button", $(this)).after("<p class='error'>"+$("button", $(this)).data("txt1")+"</p>");
			}
			return false;
		}
	});

	$("form input").keyup(function() { $(this).removeClass("formError"); });
	$("form select,input[type='checkbox']").change(function() { $(this).removeClass("formError"); });

});

function isValidEmail(email) { 
	var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\ ".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA -Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
	return re.test(email);
} 
function isValidUsername(username) {
	var pattern = new RegExp(/^[a-zA-Z0-9\.æøåÆØÅäöüÄÖÜß_\-]+$/);
	return pattern.test(username);
}
function isiPhone(){
	return (
			(navigator.platform.indexOf("iPhone") != -1) ||
			(navigator.platform.indexOf("iPod") != -1)
			);
}

