function showImage(img, w, h) {
	if(w == null) w = 200;
	if(h == null) h = 200;
	var win = window.open("about:blank", "_blank", "width=" + w + ",height=" + h + ",status=0,resizable=1,scrollbars=1");
	var doc = win.document;

	doc.write('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Kép</title></head>');
	doc.write('<body style="margin: 0px;">');
	if (img.toLowerCase().substr(img.length - 4, 4) == '.swf') {
		doc.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="' + w + '" height="' + h + '" title="">  <param name="movie" value="' + img + '" />  <param name="quality" value="high" />  <embed src="' + img + '" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="' + w + '" height="' + h + '"></embed>  </object>');
	} else {
		doc.write('<img src="' + img + '" alt="" onclick="window.close();" style="cursor: pointer;">');
	}
	doc.write('</body></html>');
	doc.close();
	return false;
}


// alapvetoen admin funkciok, de egyszerubb kezelni, ha kozos helyen van minden funkcio

function confirmDelete() {
	return window.confirm("Biztosan törölni akarod ezt az elemet?\nEzt a műveletet nem lehet visszavonni.");
}

function chkDel() {
  return window.confirm("Biztosan törölni akarod ezt az elemet?\nEzt a műveletet nem lehet visszavonni.");
}

function confDel() {
  return window.confirm("Biztosan törölni akarod ezt az elemet?\nEzt a műveletet nem lehet visszavonni.");
}

function confirmCopy() {
  return window.confirm("Biztosan másolni akarod ezt az elemet?");
}

function jformRead(form, prefix, excludes) {
	if(typeof form == 'string') form = document.forms[form];
	if(typeof excludes != 'object' || !(excludes instanceof Array)) excludes = new Array();

	var jform = null;
	for(var i = 0; i < form.elements.length; i++) {
		var input = form.elements.item(i);
		var id = input.id;

		if(id != null && id.indexOf(prefix) == 0) {
			id = id.substr(prefix.length);
			if(excludes.indexOf(id) != -1) continue;

			var v = null;
			if(input.tagName == 'INPUT') {
				if(input.type == 'text' || input.type == 'hidden') {
					v = input.value;
				} else if(input.type == 'checkbox') {
					v = input.checked;
				} else {
					alert("FIXME!");
				}
			} else if(input.tagName == 'TEXTAREA') {
				v = input.value;
			} else if(input.tagName == 'SELECT') {
				v = input.value;
			}

			if(jform == null) jform = new Object();
			jform[id] = v;
		}
	}

	return jform;
}

function jformWrite(form, prefix, jform, excludes) {
	if(typeof form == 'string') form = document.forms[form];
	if(typeof excludes != 'object' || !(excludes instanceof Array)) excludes = new Array();

	if(prefix == null) prefix = "";
	for(var i = 0; i < form.elements.length; i++) {
		var input = form.elements.item(i);
		var id = input.id;
		if(id != null && id.indexOf(prefix) == 0) {
			id = id.substr(prefix.length);
			if(excludes.indexOf(id) != -1) continue;

			var v = jform[id];
			if(typeof v == 'function' || typeof v == 'undefined') continue;

			if(input.tagName == 'INPUT') {
				if(input.type == 'text' || input.type == 'hidden') {
					input.value = v == null ? "" : v;
				} else if(input.type == 'checkbox') {
					input.checked = (new Boolean(v) == true);
				} else {
					alert("FIXME!");
				}
			} else if(input.tagName == 'TEXTAREA') {
				input.value = v;
			} else if(input.tagName == 'SELECT') {
				if(v != null) {
					input.value = v;
				} else {
					input.selectedIndex = -1;
				}
			}
		}
	}
}

function jformXchg(form0, prefix0, form1, prefix1, excludes) {
	var jform0 = jformRead(form0, prefix0, excludes);
	var jform1 = jformRead(form1, prefix1, excludes);

	console.log("jform: %s %s %s %s", form0, prefix0, form1, prefix1);
	console.dir(jform0);
	console.dir(jform1);

	if(jform0 != null && jform1 != null) {
		jformWrite(form1, prefix1, jform0);
		jformWrite(form0, prefix0, jform1);
	}
}

/*
 * Listaboxok
 */
function TermekLista(element, initName, nameInputId) {
	function open() {
		HTAfl.openWidget('link', 'page_list_panel.php');
		HTAfl.addMessageListener('link', 'select', function(wname, msgName, msg) {
			console.dir(msg)
			element.value = msg.id;
			name.element.value = msg.name;

			HTAfl.closeWidget('link');
		});
	}

	var name = new Object();
	var js = [ "SPAN",
		[ "INPUT", { 'type': "text", 'value': initName, 'id': nameInputId, 'readOnly': true, 'class': "f_inp", 'style': "width: 300px;", 'element': name } ], 
		" ",
		[ "A", { 'onclick': open, 'style': "cursor: pointer;" }, "lap" ]
	];

	var e = jsonML(js);
	element.parentNode.insertBefore(e, element);
}

jgtc.captureEvent(window, "load", function() {
	var tags = document.getElementsByTagName("input");
	var terms = new Array();
	for(var i = 0; i < tags.length; i++) {
		var term = tags[i].getAttribute("cs2:page");
		if(term != null) {
			terms.push({'element': tags[i], 'name': tags[i].getAttribute("cs2:pageName"), 'name_id': tags[i].getAttribute("cs2:pageNameId") });
		}
	}

	for(var i = 0; i < terms.length; i++) {
		with(terms[i]) {
			new TermekLista(element, name, name_id);
		}
	}
}, true);

function xchgProperty(form, xchgpropPrefix, idx, delta) {
	var prefix0 = xchgpropPrefix + idx;
	var prefix1 = xchgpropPrefix + (idx + delta);

	jformXchg(form, prefix0, form, prefix1);
}

