/* popup image/flash/video megjelenito */
function showImage(img, w, h) {
	var scrollbars = 1;
	if(w == null) w = 200;
	if(h == null) h = 200;
	ww = w;
	wh = h;
	if (img.toLowerCase().substr(img.length - 4, 4) == '.flv') {
		h = h + 45;
		scrollbars = 0;
	} else {
		scrollbars = 1;
		if (is.ie) {
			w = w + 20;
		}
	}
	var win = window.open("about:blank", "_blank", "width=" + w + ",height=" + h + ",status=0,resizable=1,scrollbars=" + scrollbars);
	var doc = win.document;

	doc.write('<html xmlns="http://www.w3.org/1999/xhtml"><head><title></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 if (img.toLowerCase().substr(img.length - 4, 4) == '.flv') {
		//url = '/video/player.swf?videoURL=' + img + '&amp;_w=' + w + '&amp;_h=' + (h + 40);
		url = '/video/playerx.swf?videoURL=' + img + '&amp;skinURL=/video/SkinDeepskeye.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 + '">  <param name="allowScriptAccess" value="sameDomain" />  <param name="allowFullScreen" value="true" />  <param name="movie" value="' + url + '" />  <param name="quality" value="high" />  <param name="bgcolor" value="#ffffff" />  <param name="scale" value="noscale" />  <param name="salign" value="lt" />  <embed src="' + url + '" quality="high" bgcolor="#ffffff" width="' + w + '" height="' + h + '" scale="noscale" salign="lt" name="playerx" align="middle" allowScriptAccess="sameDomain" allowFullScreen="true" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />  </object>');
	} else {
		doc.write('<img src="' + img + '" alt="" onclick="window.close();" style="cursor: pointer;">');
	}
	doc.write('</body></html>');
	doc.close();
	return false;
}




/* raklikkre eltunos input/textarea tartalmak */
jgtc.captureEvent(window, "load", function() {
	function makeAutoInput(es) {
		for(var i = 0; i < es.length; i++) {
			var attr = es[i].getAttribute('ht:value');
			if(attr != null) {
				es[i].onfocus = function() { if (this.value == this.getAttribute('ht:value')) { this.value = ''; } };
				es[i].onblur = function() { if (this.value == '') { this.value = this.getAttribute('ht:value') } };
			}
		}
	}

	makeAutoInput(document.getElementsByTagName('INPUT'));
	makeAutoInput(document.getElementsByTagName('TEXTAREA'));
}, true);


var isClick = true;
/* dragScroller, a galeria megjelenitesehez */
function mouseDragScroll(element, dir) {
	var items = new Array();
	var posX = 0;
	var posY = 0;
	var dragging = false;
	var dragY0 = 0;
	var dragX0 = 0;
	var startX = 0;
	var startY = 0;
	var fullHeight = 0;
	var offsetHeight = 0;
	var fullWidth = 0;
	var offsetWidth = 0;
	var myelement = element;
	var mydir = dir;
	var _this = this;
	initWH();

	function initWH() {
		if (fullHeight == 0) fullHeight = element.parentNode.scrollHeight;
		if (offsetHeight == 0) offsetHeight = element.parentNode.offsetHeight;
		if (fullWidth == 0) fullWidth = element.parentNode.scrollWidth;
		if (offsetWidth == 0) offsetWidth = element.parentNode.offsetWidth;
		if (element.scrollWidth < fullWidth) {
			element.style.width = fullWidth + 'px';
		}
		//console.log(fullHeight + ' ' + offsetHeight + ' ' + fullWidth + ' ' + offsetWidth + ' ### ' + element.scrollHeight + ' ' + element.offsetHeight + ' ' + element.scrollWidth  + ' ' + element.offsetWidth);
	}

	this.move = function(deltaX, deltaY) {
		posX = (posX + deltaX);
		posY = (posY + deltaY);
		if (posX < -fullWidth + offsetWidth) posX = -fullWidth + offsetWidth;
		if (posX > 0) posX = 0;
		if (posY < -fullHeight + offsetHeight) posY = -fullHeight + offsetHeight;
		if (posY > 0) posY = 0;

		if (mydir == 'h') myelement.style.left = posX + 'px';
		if (mydir == 'v') myelement.style.top = posY + 'px';
	}

	function drag(e) {
		if(!e) e = event;
		jgtc.discardEvent(e);

		var xd = (e.clientX + document.body.parentNode.scrollLeft) - dragX0;
		dragX0 += xd;
		var yd = (e.clientY + document.body.parentNode.scrollTop) - dragY0;
		dragY0 += yd;

		_this.move(xd, yd);
		if ((Math.abs(startX - dragX0) > 5) || (Math.abs(startY - dragY0) > 5)) {
			isClick = false;
		}
	}

	function beginDrag(e) {
		if(dragging) return;
		initWH();
		dragging = true;

		dragX0 = e.clientX + document.body.parentNode.scrollLeft;
		dragY0 = e.clientY + document.body.parentNode.scrollTop;
		startX = dragX0;
		startY = dragY0;

		if(!e) e = event;
		jgtc.discardEvent(e);

		jgtc.captureEvent(document.body, "mousemove", drag, true);
	}

	function endDrag(e) {
		if(!dragging) return;
		dragging = false;

		if(!e) e = event;
		jgtc.discardEvent(e);

		jgtc.releaseEvent(document.body, "mousemove", drag, true);
		window.setTimeout(setClick, 0);
	}

	function setClick() {
		isClick = true;
	}

	function _click(e) {
		if(!e) e = event;
		if (!isClick) {
			jgtc.discardEvent(e);
			//isClick = true;
			window.setTimeout(setClick, 0);
		}
	}

	jgtc.captureEvent(element, "mousedown", beginDrag, true);
	jgtc.captureEvent(document.body, "mouseup", endDrag, true);
	jgtc.captureEvent(element, "click", _click, true);
}

var mouseDS = null;

// galeria dragScroller init
jgtc.captureEvent(window, "load", function() {
	var e = document.getElementById("gallery_tn_1");
	if(e != null) mouseDS = new mouseDragScroll(e, 'h');
}, true);

/* galeria lapozas */
var picIndex = 0;

function g_enlarge(idx) {
	if (!isClick) return;
  if (typeof pics[idx] == 'undefined' || pics[idx].disabled) return;

  document.getElementById("a_tn_" + picIndex).className = '';
  picIndex = idx;
  document.getElementById("a_tn_" + idx).className = 'sel';
	e = document.getElementById("a_tn_" + idx);

	var tnpanel_offsetWidth = e.parentNode.parentNode.offsetWidth;
	var myLeft;
	var XD = 0;
	if (is.ie) {
		myLeft = e.offsetLeft;
	} else {
		myLeft = e.offsetLeft + document.getElementById("gallery_tn_1").offsetLeft;
	}
	if (myLeft < 0) {
		XD = -myLeft;
	} else if (myLeft + e.offsetWidth > tnpanel_offsetWidth) {
		XD = tnpanel_offsetWidth - (myLeft + e.offsetWidth);
	}
	//console.log(myLeft, myLeft + e.offsetWidth, tnpanel_offsetWidth, XD);
	mouseDS.move(XD, 0);

	var img = document.getElementById("gallerypic");
  img.removeAttribute("width");
  img.removeAttribute("height");
  img.src = pics[idx].src;

  document.getElementById("prevpic").style.visibility = (idx == 0 ? 'hidden' : 'visible');
  document.getElementById("nextpic").style.visibility = (idx == pics.length - 1 ? 'hidden' : 'visible');

  var t = document.getElementById("pictitle");
  if (t == null) {
    t = document.createElement("SPAN");
    t.id = "pictitle";
    document.getElementById("picholder").appendChild(t);
  }
  if ((pics[idx].title != null) && (pics[idx].title != "null") && (pics[idx].title != "")) {
    t.innerHTML = pics[idx].title;
  } else {
    t.innerHTML = '&nbsp;';
  }
  document.getElementById('gallerypageinfo').innerHTML = (idx + 1) + '/' + pics.length;
}

function g_prev() {
  g_enlarge(picIndex - 1);
}

function g_next() {
  g_enlarge(picIndex + 1);
}







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

/* confirmations */
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?");
}




/* kapcsolodo-formok tartalmanak kiegeszito funkcioi, elemek cserelgetese */
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' || input.type == 'radio') {
					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.type == 'radio') {
					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);
	}
}

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

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




/* tagcloud tipusu inputmezok kezelese */
function NormalizeTagCloud(tag) {
	return tag.replace(/^\s+/, "").replace(/\s+$/, "").replace(/ *, */g, ",").replace(/,,+/g, ",").replace(/(,$|^,)/g, "").replace(/,/g, ", ");
}

function UpdateTagCloud(id, tag) {
	var e = document.getElementById(id);
	e.value = NormalizeTagCloud(e.value);
	var tmp = e.value.replace(/^|$/g , ", ");
	if (tmp.search(", " + tag + ", ") != -1) {
		tmp = tmp.replace(", " + tag + ", ", ", ");
	} else {
		tmp = tmp + tag + ", ";
	}
	e.value = NormalizeTagCloud(tmp);
}

/* preview */
function openPopupO(htmname, winname) {
	var w = window.open(htmname, winname, "screenX=1,screenY=1,resizable=1,scrollbars=1");
	w.focus();
}

function setPreview(form, e) {
	if(typeof form == 'string') form = document.forms[form];
	form.elements[e].value = 1;
}

/* admin funkciok END */
