//
// force having an own window
//
function go_to_top() {
	if (top.location != location) {
		top.location.href = location.href;
	}
}



function pop_parentfresh() {
	window.opener.location.reload();
}
function pop_close() {
	window.close();
}
function pop_parentfresh_close() {
	pop_parentfresh();
	pop_close();
}



//
// onloads come here as part of the array
//
function my_onload() {
	for(var ii = 0; myloads.length > ii; ii++)
	{
		myloads[ii]();
	}
};
myloads = [];
myloads[myloads.length] = go_to_top;

//
// check form elements
//

// object helper functions
function _control(ctl, msg, ckt, act, ckp) {
	this.ctl = ctl;
	this.msg = msg;
	this.ckt = ckt;
	this.act = act;
	this.ckp = ckp;
}
function _checkform(form, ctls) {
	this.form = form;
	this.ctls = ctls;
}
function check_them(obj) {
	
	if((typeof checks=="undefined") || (typeof checks[obj.id] == "undefined")) {
		return true;
	} else {
		var checkthem = checks[obj.id];
	}
	var rmsg = '';
	var ffoc = '';
	var err_cnt = 0;
	var err_max = 10;
	var err_max_str = ' ...';
	for (var i=0; i<checkthem.ctls.length; i++)	{
		
		var _tctl = checkthem.ctls[i];
		var action = ((checkthem.form.elements['submitaction'] != null)
				?checkthem.form.elements['submitaction'].value
				:'')

		var to_check = false;
		var data_to_check='';
		
		if (_tctl.act == null)
			to_check = true;
		else {
			var chk_actions = _tctl.act.split(",");
			for (var j=0; j<chk_actions.length; j++)
				if (chk_actions[j] == action)
					to_check = true;
		}

		if (checkthem.form.elements[_tctl.ctl].type == "checkbox")
			data_to_check = checkthem.form.elements[_tctl.ctl].checked;
		else
			data_to_check = checkthem.form.elements[_tctl.ctl].value;
			
		if (to_check && !_checktype(data_to_check, _tctl.ckt, _tctl.ckp))
		{
			if(err_cnt<err_max){
				rmsg += _tctl.msg + '\n';
				if (!ffoc)
					ffoc = _tctl.ctl;
			}
			err_cnt++;
		}
	}

	if (rmsg.length) {
		if (err_cnt>=err_max)
			rmsg+=err_max_str;
		alert(rmsg);
		checkthem.form.elements[ffoc].focus();
		return false;
	} else {
		return true;
	}


	// helper function checks if a given data param
	// meets a condition
	function _checktype(data, datatype, chkerparam)
	{
		var search = {
			'UINT'	: new RegExp("^\\d+$"),
			'INT'	: new RegExp("^(|([-+]?))(\\d+)$"),
			'FLOAT'	: new RegExp("^(|([-+]?))(\\d+)(|(\\.((\\d)+)))$"),
			'NUM'	: new RegExp("^\\d+$"),        //  deprecated, use uint - TODO
			'ABC'	: new RegExp("^[a-zéáöüóuúío ]+$", "i")
		};
		switch (datatype)	{
			case 'NOTNULL' :
				if (data != '')
					return true;
				return false;
				break;
			case 'CHECKED' :
					return data;
				break;
			case 'UINT' :
			case 'INT' :
			case 'FLOAT' :
			case 'NUM' :
			case 'ABC' :
				if(search[datatype].test(data))
					return true;
				else	
					return false;
				break;
			case 'MAXLEN' :
				if(data.length > chkerparam)
					return false;
				else
					return true;
				break;
			case 'MINLEN' :
				if(data.length < chkerparam)
					return false;
				else
					return true;
				break;
			case 'CFUNC' :
				return eval(chkerparam);
				break;
				
			default :
				return false;
				break;
		}	
	}
}
//
// form check ends
//



function submit_action(action_button, url, target) {

	var fname=action_button.form.id;
	
	if (action_button)
		document.forms[fname].elements["submitaction"].value = action_button.id;

	if ( !check_them(document.forms[fname]) )
		return false;

/*	if( is_doubleclick() )
		return false;
*/
	if ( document.forms[fname].onsubmit ) {
		if ( !document.forms[fname].onsubmit() )
			return true;
	}
//alert('alma');
	
//	set_url(url);
//	set_target(target);
//alert('alma');
	document.forms[fname].submit();
	return true;
}



function popup_(w, h, page)
{
	var top  = ((screen.availHeight-h)/2);
	var left = ((screen.availWidth-w)/2);
	var nyit = window.open(page,"popup_","fullscreen=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=no,left="+left+",top="+top+",width="+w+",height="+h);
};


function popup_h(w, h, page)
{
	var top  = ((screen.availHeight-h)/2);
	var left = ((screen.availWidth-w)/2);
	var nyit = window.open(page,"popup_h","fullscreen=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=no,left="+left+",top="+top+",width="+w+",height="+h);
};

function popupsz(w, h, page)
{
	var top  = ((screen.availHeight-h)/2);
	var left = ((screen.availWidth-w)/2);
	var nyit = window.open(page,"popupsz","fullscreen=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=no,left="+left+",top="+top+",width="+w+",height="+h);
};


function popup(w, h, page)
{
	var top  = ((screen.availHeight-h)/2);
	var left = ((screen.availWidth-w)/2);
	var nyit = window.open(page,"popup","fullscreen=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=0,left="+left+",top="+top+",width="+w+",height="+h);
};

function popupp(w, h, page)
{
	var top  = ((screen.availHeight-h)/2);
	var left = ((screen.availWidth-w)/2);
	var nyit = window.open(page,"popupp","fullscreen=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=no,resizable=no,left="+left+",top="+top+",width="+w+",height="+h);
};

function popup_flash(w, h, page)
{
	var top  = ((screen.availHeight-h)/2);
	var left = ((screen.availWidth-w)/2);
	var nyit = window.open(page,"popup_flash","fullscreen=0,toolbar=0,location=0,directories=0,statusbar=0,menubar=0,scrollbars=1,resizable=no,left="+left+",top="+top+",width="+w+",height="+h);
};

var statusmsg=""

function hidestatus(){
window.status=statusmsg
return true
}

m1 = new Image ();
m1.src = "images/regisztracio.gif";
m1s = new Image ();
m1s.src = "images/sub/regisztracio.gif";
m2 = new Image ();
m2.src = "images/elfelejt.gif";
m3 = new Image ();
m3.src = "images/sugo.gif";
m4 = new Image ();
m4.src = "images/menu_reg.gif";
m5 = new Image ();
m5.src = "images/menu_online_1.gif";
m6 = new Image ();
m6.src = "images/menu_online_2.gif";
m7 = new Image ();
m7.src = "images/menu_online_3.gif";
m8 = new Image ();
m8.src = "images/menu_online_4.gif";
m9 = new Image ();
m9.src = "images/menu_online_5.gif";
m10 = new Image ();
m10.src = "images/menu_online_6.gif";
m11 = new Image ();
m11.src = "images/menu_online_7.gif";
m13 = new Image ();
m13.src = "images/menu_forum.gif";
m14 = new Image ();
m14.src = "images/menu_tut.gif";
m15 = new Image ();
m15.src = "images/menu_letolt.gif";
m16 = new Image ();
m16.src = "images/menu_linkek.gif";
m17 = new Image ();
m17.src = "images/sub/kosarikon.gif";
m18 = new Image ();
m18.src = "images/sub/ajandekikon.gif";
m19 = new Image ();
m19.src = "images/sub/helpikon.gif";
m20 = new Image ();
m20.src = "images/sub/letoltesikon.gif";

m12 = new Image ();
m12.src = "images/regisztracio_on.gif";
m1s2 = new Image ();
m1s2.src = "images/sub/regisztracio_on.gif";
m22 = new Image ();
m22.src = "images/elfelejt_on.gif";
m32 = new Image ();
m32.src = "images/sugo_on.gif";
m42 = new Image ();
m42.src = "images/menu_reg_on.gif";
m52 = new Image ();
m52.src = "images/menu_online_1_on.gif";
m62 = new Image ();
m62.src = "images/menu_online_2_on.gif";
m72 = new Image ();
m72.src = "images/menu_online_3_on.gif";
m82 = new Image ();
m82.src = "images/menu_online_4_on.gif";
m92 = new Image ();
m92.src = "images/menu_online_5_on.gif";
m102 = new Image ();
m102.src = "images/menu_online_6_on.gif";
m112 = new Image ();
m112.src = "images/menu_online_7_on.gif";
m132 = new Image ();
m132.src = "images/menu_forum_on.gif";
m142 = new Image ();
m142.src = "images/menu_tut_on.gif";
m152 = new Image ();
m152.src = "images/menu_letolt_on.gif";
m162 = new Image ();
m162.src = "images/menu_linkek_on.gif";
m172 = new Image ();
m172.src = "images/sub/kosarikon_on.gif";
m182 = new Image ();
m182.src = "images/sub/ajandekikon_on.gif";
m192 = new Image ();
m192.src = "images/sub/helpikon_on.gif";
m202 = new Image ();
m202.src = "images/sub/letoltesikon_on.gif";



function imgon(id) {
	eval ("document.m" + id + ".src=m" + id + "2.src");
	
};
   
function imgoff(id) {
	eval ("document.m" + id + ".src=m" + id + ".src");
	
};


var bpostc = "";
var bcity = "";
var bstreet = "";

function data(form) {
bpostc = form.usr_bpostc.value;
bcity = form.usr_bcity.value;
bstreet = form.usr_bstreet.value;
}

function atobdata(form) {
form.usr_bpostc.value = form.usr_apostc.value;
form.usr_bcity.value = form.usr_acity.value;
form.usr_bstreet.value = form.usr_astreet.value;
};

function clearDefault(c) {
						if (!c._cleared) 
						{c.value='';
				c._cleared=true;}
					}





/* not used yet

// info box opener/closer

function toggleInfobox(divname) {
	if (document.getElementById(divname).style.display != "none")
		document.getElementById(divname).style.display = "none";
	else
		document.getElementById(divname).style.display = "block";
}


function cursorize_layer (layername, status) {

	if (status=="on") {
		document.getElementById(layername).style.cursor = "pointer";
		//document.getElementById(layername).style.textDecoration = "underline";
	} else {
		document.getElementById(layername).style.cursor = "arrow";
		//document.getElementById(layername).style.textDecoration = "none";
	}

}

function pop_parentfresh() {
	window.opener.location.reload();
}
function pop_close() {
	window.close();
}
function pop_parentfresh_close() {
	pop_parentfresh();
	pop_close();
}

function self_close() {  //depr  TODO: remove
	alert('deprecated');
	pop_close();
}
function self_close_parentfresh() { //depr  TODO: remove
	alert('deprecated');
	pop_parentfresh_close();
}
function set_url(url) {
	if ( null == url ) {
		if ( null != get_input('action_url') )
			document.forms["filter"].action = document.forms["filter"].elements['action_url'].value
	} else {
		document.forms["filter"].action = url;
	}
//alert(document.forms["filter"].action + 'ACTION');
}

function set_target(target) {
	if ( null == target ) {
		if ( null != get_input('action_target') )
			document.forms["filter"].target = document.forms["filter"].elements['action_target'].value
	} else {
		document.forms["filter"].target = target;
	}
//alert(document.forms["filter"].action + 'ACTION');
}

*/