function inputHasValue(jobj)
	{
	//if (!jobj.val() || (jobj.attr("type") != "hidden" && jobj.val() == jobj[0].defaultValue)) return false;
	if (!jobj.val()) return false;
	return true;
	}

function atLeastOneChecked(jobj)
	{
	for (var i=0;i<jobj.length;i++)
		{
		if (jobj[i].checked) return true;
		}
	return false;
	}

function strContains(str,strs_arr)
	{
	if (typeof(strs_arr) == "string") strs_arr = [strs_arr];
	for (var i=0;i<strs_arr.length;i++)
		{
		if (str.indexOf(strs_arr[i]) == -1) return false;
		}
	return true;
	}

function alertField(jobj,err,pass)
	{
	var err_elm = jobj.parents("form:first").find(".error."+err.id);
	if (pass)
		{
		jobj.removeClass("highlight");
		jobj.addClass("successful");
		if (err.id) err_elm.html("");
		if (err_elm.hasClass("dblock")) err_elm.css("display","none");
		return true;
		}
	else
		{
		jobj.removeClass("successful");
		jobj.addClass("highlight");
		err_elm.html(err.message);
		if (err_elm.hasClass("dblock")) err_elm.css("display","block");
		return false;
		}
	}

function loginOnSubmit()
	{
	var f = $("#login");
	f[0].submitted_once = true;
	var ok = true;
	
	var e = $("[name='email']",f);
	var p = $("[name='pass']",f);
	
	if (e.val() != e[0].defaultValue) e.val(e.val().replace(/[^a-zA-Z0-9_@\+\-\.]/g,""));
	
	if (!inputHasValue(e)) ok = alertField(e,{id:"email"});
	else if (!strContains(e.val(),["@","."])) ok = alertField(e,{id:"email"});
	else alertField(e,{id:"email"},true);

	if (!inputHasValue(p)) ok = alertField(p,{id:"pass"});
	else alertField(p,{id:"pass"},true);
	
	return ok;
	}

function getWidthHeightOfDocument()
	{
	/*
	var w = 0;
	var h = 0;
	var b = document.getElementsByTagName("body")[0];
	w = b.offsetWidth;
	h = b.offsetHeight;
	return {width:w,height:h};
	*/
	return {width:$(document).width(),height:$(document).height()};
	}

function getWidthHeightOfWindow()
	{
	/*
	var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || 0;
	var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || 0;
	return {width:w,height:h};
	*/
	return {width:$(window).width(),height:$(window).height()};
	}

function getCenterOfScreen()
	{
	var scrollHeight = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
	var w_wh = getWidthHeightOfWindow();
	var x = w_wh.width/2;
	var y = w_wh.height/2+scrollHeight;
	return {x:x,y:y};
	}

global_regoverlay_initiated = false;
function openRegOverlay()
	{
	var width = 1000;
	var height = 660;
	
	if (!global_regoverlay_initiated)
		{
		var window_height = getWidthHeightOfWindow().height;
		var d = getWidthHeightOfDocument();
		var c = getCenterOfScreen();
		if (!$("#reg_form_overlay")[0])
			{
			$("body").append('<div id="reg_form_overlay"><div id="reg_form_overlay-bg"></div><iframe frameborder="0" scrolling="no"></iframe><div id="reg_form_overlay-x"></div></div>');
			$("#reg_form_overlay iframe").attr("src","reg-overlay.php");
			}
		$("#reg_form_overlay-bg").css({"width":d.width+"px","height":(d.height < window_height ? window_height : d.height)+"px"});
		var i_xy = {
			x:c.x-width/2,
			y:c.y-height/2
			};
		if (i_xy < 0) i_xy = 0;
		$("#reg_form_overlay iframe").css({"width":width+"px","height":height+"px","left":i_xy.x+"px","top":i_xy.y+"px"});
		$("#reg_form_overlay-x").css({"left":(i_xy.x+(width-40))+"px","top":(i_xy.y+16)+"px"});
		$("#reg_form_overlay-x").bind("click",closeRegOverlay);
		$("#reg_form_overlay").fadeIn(1000);
		global_regoverlay_initiated = true;
		}
	return false;
	}

function closeRegOverlay()
	{
	$("#reg_form_overlay").hide();
	global_regoverlay_initiated = false;
	return false;
	}

$(document).ready(function()
	{
	$("#login .default").bind("focus",function()
		{
		if (this.value == this.defaultValue)
			{
			this.value = "";
			$(this).removeClass("default");
			}
		});
	$("#login .default").bind("blur",function()
		{
		if (!this.value)
			{
			this.value = this.defaultValue;
			$(this).addClass("default");
			}
		});
	$("#login .txt").bind("blur",function()
		{
		if ($("#login")[0].submitted_once) loginOnSubmit();
		});
	});