var debug = true;


function $(id)
{
	return document.getElementById(id);
}

function $$(el)
{
	return document.createElement(el);
}

function checkForm(El)
{
	var tElement = El.getElementsByTagName("INPUT");
	for (var i=0; i<tElement.length; i++)
	{
		if ((tElement[i].getAttribute('required') != null) && (tElement[i].getAttribute('required') != '') && (tElement[i].value == ''))
		{
			alert(tElement[i].getAttribute('required'));
			tElement[i].focus();
			return false;
		}
		if ((tElement[i].getAttribute('required') != null) && (tElement[i].getAttribute('required') != '') && (tElement[i].type == 'checkbox') && !tElement[i].checked)
		{
			alert(tElement[i].getAttribute('required'));
			tElement[i].focus();
			return false;
		}
		if ((tElement[i].getAttribute('equal') != null) && (tElement[i].getAttribute('equal') != ''))
		{
			var tt = $(tElement[i].getAttribute('equal'));
			if ((tt != null) && (tt.value != tElement[i].value))
			{
				alert(tElement[i].getAttribute('equaltext'));
				tt.focus();
				return false;
			}
		}
		if ((tElement[i].getAttribute('minlength') != null) && (tElement[i].getAttribute('minlength') != '') && (tElement[i].value.length < tElement[i].getAttribute('minlength')))
		{
			alert(tElement[i].getAttribute('mintext'));
			tElement[i].focus();
			return false;
		}
		if ((tElement[i].getAttribute('is_email') != null) && (tElement[i].getAttribute('is_email') != ''))
		{
			var re = /^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-wyz][a-z](g|l|m|pa|t|u|v)?$/;
			if (!tElement[i].value.match(re)) {
				alert(tElement[i].getAttribute('is_email'));
				tElement[i].focus();
				return false;
			}
		}
		if ((tElement[i].getAttribute('is_float') != null) && (tElement[i].getAttribute('is_float') != '') && (tElement[i].value != ''))
		{
			if (parseFloat(tElement[i].value) != tElement[i].value)
			{
				alert(tElement[i].getAttribute('is_float'));
				tElement[i].focus();
				return false;
			}
		}
/*   if ((tElement[i].getAttribute('maxvalue') != null) && (tElement[i].getAttribute('maxvalue') != '') && (tElement[i].value+1 > tElement[i].getAttribute('maxvalue')+1))
		{
			alert(tElement[i].getAttribute('maxvaluetext'));
			tElement[i].focus();
			return false;
		}*/
	}

	tElement = El.getElementsByTagName("SELECT");
	for (var i=0; i<tElement.length; i++)
	{
		if ((tElement[i].getAttribute('required') != null) && (tElement[i].getAttribute('required') != '') && (tElement[i].value == ''))
		{
			alert(tElement[i].getAttribute('required'));
			tElement[i].focus();
			return false;
		}
	}
	return true;
}

function sendAction()
// arguments[0] - Action
// arguments[1] - if == true  - send action to dynamicIFrme, else send and reload page
{
	if (arguments[0])
	{
		var mainForm = $("mainform");
		mainForm.action.value = arguments[0];
		if (arguments[1])
			mainForm.target = 'dynamicIFrame';
		else
			mainForm.target = '_self';
		if (arguments[2])
			$('actionvalue').value = arguments[2];
		mainForm.submit();
	}
}

function sendXAction()
{
	//arguments[0] - action
	//arguments[1] - module
	//other arguments - parameters, ex. sendXAction('update', 'user', 'id', 5);
	//         sendXAction('update', 'user', 'id', 5, 'pid', 10);

	el = $('xForm');
	if (el)
		document.body.removeChild(el);

	var xForm = $$('FORM');
	var elemAction = $$('INPUT');

	xForm.id = 'xForm';

	elemAction.setAttribute('type', 'hidden');
	elemAction.setAttribute('name', 'action');
	elemAction.setAttribute('value', arguments[0]);
	xForm.appendChild(elemAction);

	var elemModule = $$('INPUT');
	elemModule.setAttribute('name', 'module');
	elemModule.setAttribute('type', 'hidden');
	elemModule.setAttribute('value', arguments[1]);
	xForm.appendChild(elemModule);

	for (var i=2; i<arguments.length; i+=2)
	{
		var elem = $$('INPUT');
		elem.setAttribute('name', arguments[i]);
		elem.setAttribute('type', 'hidden');
		try{elem.setAttribute('value', arguments[i+1]); }catch(e){};
		xForm.appendChild(elem);
	}
	xForm.setAttribute('method', 'post');
	document.body.appendChild(xForm);
	xForm.submit();
}

function sendJAction()
{
	//arguments[0] - action
	//arguments[1] - module, if empty - current module
	//other arguments - parameters, ex. sendJAction('update', 'user', 'id', 5);
	//         sendJAction('update', '', 'id', 5, 'pid', 10);
	el = $('xForm');
	if (el)
	{
		document.body.removeChild(el);
	}

	var xForm = $$('FORM');
	var elemAction = $$('INPUT');

	xForm.id = 'xForm';

	elemAction.setAttribute('type', 'hidden');
	elemAction.setAttribute('name', 'action');
	elemAction.setAttribute('value', arguments[0]);
	xForm.appendChild(elemAction);

	var Form = $("mainform");
	var elemModule = $$('INPUT');
	elemModule.setAttribute('name', 'module');
	elemModule.setAttribute('type', 'hidden');
	if (arguments[1])
		elemModule.setAttribute('value', arguments[1]);
	else
		elemModule.setAttribute('value', Form.module.value);
	xForm.appendChild(elemModule);


	for (var i=2; i<arguments.length; i+=2)
	{
		var elem = $$('INPUT');
		elem.setAttribute('name', arguments[i]);
		elem.setAttribute('type', 'hidden');
		try{elem.setAttribute('value', arguments[i+1]); }catch(e){};
		xForm.appendChild(elem);
	}
	xForm.setAttribute('method', 'post');
	xForm.target = '_self';

	document.body.appendChild(xForm);

	xForm.submit();
}


function get_top(el)
{
	var top = 0;
	try {top += el.offsetTop;} catch (e) {}
	if (el.tagName != 'BODY')
		top += get_top(el.offsetParent);
	return top;
}

function get_left(el)
{
	var left = 0;
	try {left += el.offsetLeft;} catch (e) {}
	if (el.tagName != 'BODY')
		left += get_left(el.offsetParent);
	return left;
}


function open_pic(name)
{
	window.open('/openimage.php?img=' + name + '&loaded=0', 'pre_image', 'toolbar=0,menubar=0,personalbar=0,scrollbars=0,status=0,location=0,resizable=0,width=200,height=100');
}

function checkEmail(e)
{
	ok = "1234567890qwertyuiop[]asdfghjklzxcvbnm.@-_QWERTYUIOPASDFGHJKLZXCVBNM";

	for(i=0; i < e.length ;i++)
		if(ok.indexOf(e.charAt(i))<0)
			return (false);

	if (document.images)
	{
		re = /(@.*@)|(\.\.)|(^\.)|(^@)|(@$)|(\.$)|(@\.)/;
		re_two = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
		if (!e.match(re) && e.match(re_two))
			return true;
		else
			return false;

	}
	return true;

}

function bookmarkURL(title)
{
	if (title == '')
		title = document.title;

	try{
		window.external.AddFavorite(document.location.href,title);
	}
	catch (e)
	{
		try{
			window.sidebar.addPanel(title, document.location.href,"");
		}
		catch(e1){}
	}
}

function change_count(el)
{
	sendAction('change_paging', false, el.value);
}
