// JavaScript Document
function checkEmailValue(email)
{
	if (email.search( /^\w+((-\w+)|(\.\w+)|(\_\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z]{2,4}$/ ) == -1)
	{
		return false;
	}
	return true;
}

function SwapImage(id, imagePath)
{
	document.getElementById(id).src = imagePath;
}

function confirmURL(url)
{
	if (confirm("Esti sigur?\r\nApasa OK pentru Da."))
		location.href = url;
}

function confirmURL2(url, message)
{
	if (confirm(message))
		location.href = url;
}

function trim(sir)
{
	var s,r;
	s = sir;
	re = /^\s+/g;
	s = s.replace(re, "");
	re = /\s+$/g;
	s = s.replace(re, "");
	return s;
}

function ChangeClassOnHoverForID(e, t, id, cssClass)
{
	changeClassOnHoverForElement(e, t, document.getElementById(id), cssClass);
}

function changeClassOnHoverForElement(e, t, element, cssClass)
{
	changeCSSClassForElement(isMouseLeaveOrEnter(e, t), element, cssClass);
}

function changeCSSClassForElement(condition, element, cssClass)
{
	if (condition)
		element.className = cssClass;
}

function changeCSSClassForID(condition, id, cssClass)
{
	changeCSSClassForElement(condition, document.getElementById(id), cssClass);
}

function isMouseLeaveOrEnter(e, handler)
{
//source: http://www.dynamic-tools.net/toolbox/isMouseLeaveOrEnter/
	if (e.type != 'mouseout' && e.type != 'mouseover') return false;
	var reltg = e.relatedTarget ? e.relatedTarget :
	e.type == 'mouseout' ? e.toElement : e.fromElement;
	while (reltg && reltg != handler) reltg = reltg.parentNode;
	return (reltg != handler);
}

function AutoPostBack(formName)
{
	document.getElementById('IsAutoPostBack').value = 1;
	document.forms[formName].submit();
	return true;
}

function AddRemItems(element, list)
{
	return AddRemValue(element.value, list, element.checked);
}

function AddRemValue(val, list, add)
{
	items		= document.getElementById(list);
	var	reg		= new RegExp("(^|,)" + val + "(,|$)", "g");
	var pos		= reg.exec(items.value);
	if (pos != null)
	{
		car			= (RegExp.$1 == ',' && RegExp.$2 == ',') ? "," : "";
		items.value = items.value.replace(reg, car);
	}
	if (add)
	{
		if (items.value == "") items.value = val;
		else items.value += "," + val;
	}
}

function AddRemNumber(val, to, from, addedValue, add)
{
	toObj			= document.getElementById(to);
	fromObj			= document.getElementById(from);
	addedValueObj	= document.getElementById(addedValue);
	fromValue		= parseFloat(fromObj.value);
	
	if (add)
	{
		if (fromValue >= val)
		{
			toObj.value			= val;
			fromObj.value		= fromValue - val;
			addedValueObj.value	= val;
		}
		else
		{
			toObj.value			= fromValue;
			fromObj.value		= 0;
			addedValueObj.value	= fromValue;
		}
	}
	else
	{
		fromObj.value			= fromValue + parseFloat(addedValueObj.value);
		toObj.value				= 0
		addedValueObj.value		= 0;
	}
//	alert("Added: " + addedValueObj.value + " FROM: " + fromObj.value);
}

function IsBetween(x, y, minx, miny, maxx, maxy)
{
	if (x >= minx && x <= maxx && y >= miny && y <= maxy) return true;
	return false;
}

function SetCssClass(objID, cssClass)
{
	document.getElementById(objID).className	= cssClass;
}

function ModifyListByValue(val, list, add)
{
	var	items	= $(list);
	var	reg		= new RegExp("(^|,)" + val + "(,|$)", "g");
	var pos		= reg.exec(items.val());
	if (pos != null)
	{
		car			= (RegExp.$1 == ',' && RegExp.$2 == ',') ? "," : "";
		items.val(items.val().replace(reg, car));
	}
	if (add)
	{
		if (items.val() == "") items.val(val);
		else items.val(items.val() + "," + val);
	}
}

function ModifyListByItem(obj, list)
{
	ModifyListByValue(obj.value, list, obj.checked);
}

function ParseInt(text)
{
	if (text)
		return parseInt(text.replace("px", ""));
	return NaN;
}