// Script copyright by Zedas 2007
// őű

var gbFirstKey = true;

var aImages = [];
var iImageCount = 1;

function init() {
}

function bootImages() {
	if (document.all) {
		var aTags = document.getElementsByTagName('img');
		var aSrc = [];

		for (var i = 0; i < aTags.length; i++) {
			var oImg = new Image();
			oImg.src = aTags[i].src;
			oImg.onload = imageLoaded;
			if (!oImg.complete)
				aImages.push(oImg);
		}
		iImageCount = aImages.length;
		if (iImageCount == 0)
			initPage(1);
	} else
		initPage(1);
}

function imageLoaded() {
	iImageCount--;
	if (iImageCount == 0) {
		initPage(1);
	}
}

function eraseUser(oThis) {
	if (gbFirstKey) {
		gbFirstKey = false;
		oThis.value = '';
	}
}

function magnify() {
	var sImageName = goCurrentPage.aImages[iCurrentGalleryIconIndex].sSource;
	window.open(sImageName.replace("/400/","/original/"),"tesztwin","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,width=800,height=600");
}

// - Fader functions ---------------------

var giFadePercent = 10; // Fade percent per frame
var giFadePerSec = 10; // Fade frames per second

var iActiveFader = 0;
var oInterval;
var iCurrentGalleryIconIndex = 0;
var gaImageNames;
var goPrimaryFader;
var goSecondaryFader;
var iFadePhase = 0;
var giCurrentPage;
var goCurrentPage;
var bVideoMode = false;

function genThumbnail(iIndex, sThumbnail, bVideo) {
	sHTML =
		'<div id="idThumb' +iIndex +'" class="thumbnail_' +(bVideo ? 'mov_' : '') +'uns" onclick="fadeTo(' +iIndex +')">'
		+'<img src="' +sThumbnail +'"/>'
		+'</div>';
	return sHTML;
}

function getElementsByPath(oRoot, sPath) {
	var iSlash = sPath.indexOf('/');
	var sChildrenPath;
	if (iSlash != -1) {
		sChildrenPath = sPath.substr(iSlash +1);
		sPath = sPath.substr(0, iSlash);
	}

	var iBrace = sPath.indexOf('[');
	var sTag = iBrace == -1 ? sPath : sPath.substr(0, iBrace);
	var aNodes = oRoot.getElementsByTagName(sTag);

	var aResult = [];
	if (iBrace != -1) {
		var sFilter = sPath.substring(iBrace +1, sPath.length -1);
		if (sFilter.match(/^[0-9]+$/))
			aResult.push([aNodes[Number(sFilter) -1]]);
		else if (sFilter.match(/^@([a-zA-Z]+)=(.*)/)) {
			var sAttribute = RegExp.$1;
			var sValue = RegExp.$2.replace(/["']/g, '');
			for (var t = 0; t < aNodes.length; t++) {
				var oNode = aNodes[t];
				var oAttribute = oNode.attributes.getNamedItem(sAttribute);
				if (oAttribute != null) {
					var sCheck = oAttribute.value;
					if (sCheck == sValue)
						aResult.push(oNode);
				}
			}
		}
	} else
		for (var t = 0; t < aNodes.length; t++)
			aResult.push(aNodes[t]);

	if (sChildrenPath) {
		var aNewResult = [];
		for (var t = 0; t < aResult.length; t++) {
			var oNode = aResult[t];
			var aTemp = getElementsByPath(oNode, sChildrenPath);
			for (var i = 0; i < aTemp.length; i++)
				aNewResult.push(aTemp[i]);
		}
		return aNewResult;
	} else
		return aResult;
}

function hilightHTML(sText) {
	sText = sText.replace(/<br>/mig, '<br/>').replace(/^\s*<br\/>/i, '<p>')
		.replace(/<br\/>\s*<br\/>\s*$/i, '</p>').replace(/<br\/>\s*<br\/>/mig, '</p><p>');

	var oExp = /\b([0-9]+(.[0-9]+[A-Z0-9]*)?)\b/g;
	var oArr;
	var iPrevIndex = 0;
	var sOutput = '';
	while ((oArr = oExp.exec(sText)) != null) {
		var iLt = sText.indexOf('<', oArr.index);
		var iGt = sText.indexOf('>', oArr.index);
		if (iGt == -1 || iLt < iGt) {
			sOutput += sText.substring(iPrevIndex, oArr.index);
			sOutput += '<span style="color:#fde0b9">' +oArr[1] +'</span>';
			iPrevIndex = oArr.index +oArr[1].length;
		}
	}
	sOutput += sText.substr(iPrevIndex);

	return sOutput;
}

function initPage(iPage) {
//	alert(iPage);
	goCurrentPage = new Object();

	if (iPage != null && document.getElementById('idPrevPageBtn')) {
		if (document.getElementById('idPrevPageBtn'))
			document.getElementById('idPrevPageBtn').style.display = (iPage == 1 ? 'none' : 'inline');
		var oPage = document.getElementById('idPage' +(iPage +1));
		var bNoNextPage= oPage == null;
		if (document.getElementById('idNextPageBtn'))
			document.getElementById('idNextPageBtn').style.display = (bNoNextPage ? 'none' : 'inline');

	// Clean prev selection
		if (giCurrentPage) {
			var oPage = document.getElementById('idPage' +giCurrentPage);
			oPage.getElementsByTagName('h3')[0].className = '';
		}

	// Build new page data
		giCurrentPage = iPage;

		var oPage = document.getElementById('idPage' +giCurrentPage);
		var aNodes = getElementsByPath(oPage, 'h3/span[@class="caption"]');
		var sTitle = aNodes[0].innerHTML;
		aNodes = getElementsByPath(oPage, 'div[@class="text"]');
		var sText = aNodes[0].innerHTML;

		oPage.getElementsByTagName('h3')[0].className = 'selected';

//		document.getElementById('idTitle').innerHTML = sTitle;
		sText = hilightHTML(sText);
		if (!bNoNextPage)
			sText += '<div style="color:#ff4000; text-align:right; width: 100%">A cikk folytatódik a következő oldalon!</div>';
		document.getElementById('idText').innerHTML = sText;
	} else {
		var oPage = document.getElementById('article_pages');
		setControlsVisible(0);
		document.getElementById('mini_text').innerHTML =
			hilightHTML(document.getElementById('mini_text').innerHTML);
	}

	var aImages = [];
	aNodes = getElementsByPath(oPage, 'div[@class="gallery"]');
	for (var i = 0; i < aNodes.length; i++) {
		var oNode = aNodes[i];
		var oParas = oNode.getElementsByTagName('p');

		var oImage = new Object();
		oImage.sTitle = oParas[0].innerHTML;
		var sSource = oNode.getElementsByTagName('img')[0].src;
		oImage.sSource = sSource;
		oImage.sThumbnail = sSource.replace("/400/","/38/");
		var oSpans = oNode.getElementsByTagName('span');
		if (oSpans.length != 0) {
			var sTemp = oSpans[0].innerHTML;
			var aTemp = sTemp.split('|');
			oImage.iWidth = Number(aTemp[1]);;
			oImage.iHeight = Number(aTemp[2]);
			oImage.sVideo = aTemp[0];
		}
		aImages.push(oImage);
	}
	if (iPage != null) {
		goCurrentPage.sTitle = sTitle;
		goCurrentPage.sText = sText;
	}
	goCurrentPage.aImages = aImages;
// Build gallery
	var sHTML = '';
	for (var i = 0; i < aImages.length; i++) {
		var oImage = aImages[i];
		sHTML += genThumbnail(i, oImage.sThumbnail, oImage.sVideo != null);
	}
	document.getElementById('idIcons').innerHTML = sHTML;
// Initialize fader
	initImage(0);
}
/*
function nextPage() {
	var oPage = document.getElementById('idPage' +(giCurrentPage +1));
	if (oPage != null) {
		initPage(giCurrentPage +1);
		window.scroll(0, 178);
	}
}

function prevPage() {
	if (giCurrentPage > 1) {
		initPage(giCurrentPage -1);
		window.scroll(0, 178);
	}
}
*/
function resetImage() {
	if (oInterval != null) {
		window.clearInterval(oInterval);
		oInterval = null;
	}
	iActiveFader = 0;
	goPrimaryFader = document.getElementById('idImage0');
	goSecondaryFader = document.getElementById('idImage1');
	changeOpacity(goPrimaryFader, 100);
	changeOpacity(goSecondaryFader, 0);
}

function initImage(iIndex) {
	resetImage();
	iCurrentGalleryIconIndex = iIndex;
	var oImage = goCurrentPage.aImages[iIndex];

	if (oImage != null) {
		if (oImage.sVideo != null)
			setControlsVisible(1);
		else
			setControlsVisible(0);
/*			bVideoMode = true;
			initPlay(oImage.sSource);
		} else {
			setControlsVisible(true);*/
		document.getElementById('idImageTitle').innerHTML = oImage.sTitle;
		goPrimaryFader.style.backgroundImage = 'url(' +oImage.sSource +')';

		var oIcon = document.getElementById('idThumb' +iIndex);
		var sClass = oIcon.className;
		oIcon.className = sClass.substr(0, sClass.length -3) +'sel';
	} else {
		document.getElementById('idImageTitle').innerHTML = '';
		goPrimaryFader.style.backgroundImage = 'url()';
	}
}

// This function was taken from
// http://www.brainerror.net/scripts_js_blendtrans.php
function changeOpacity(oImg, iOpacity) {
    var oStyle = oImg.style;
    oStyle.opacity = (iOpacity /100);
    oStyle.MozOpacity = (iOpacity /100);
    oStyle.KhtmlOpacity = (iOpacity /100);
    oStyle.filter = 'alpha(opacity=' + iOpacity+ ')';
}

// 0 - show all / hide video
// 1 - hide magnify / hide video / show image pointer
// 2 - hide all / show video
function setControlsVisible(iMode) {
	var oVideo = document.getElementById('idVideo');
	if (iMode < 2)
		oVideo.innerHTML = '';
	var sTemp = (iMode == 2 ? 'inline' : 'none');
	oVideo.style.display = sTemp;

	var sTemp = (iMode < 2 ? 'inline' : 'none');
	document.getElementById('idImageTitle').style.display = sTemp;
	document.getElementById('idImage0').style.display = sTemp;
	document.getElementById('idImage1').style.display = sTemp;
	document.getElementById('idPrevBtn').style.display = sTemp;
	document.getElementById('idNextBtn').style.display = sTemp;

	var sTemp = (iMode == 0 ? 'inline' : 'none');
	document.getElementById('idMagnify').style.display = sTemp;

	var sTemp = (iMode == 1 ? 'pointer' : 'default');
	document.getElementById('idImage0').style.cursor = sTemp;
	document.getElementById('idImage1').style.cursor = sTemp;
}

function fadeTo(iIndex) {
	if (iCurrentGalleryIconIndex != iIndex) {
		var oImage = goCurrentPage.aImages[iIndex];
		if (oInterval == null) {
			var oIcon = document.getElementById('idThumb' +iCurrentGalleryIconIndex);
			var sClass = oIcon.className;
			oIcon.className = sClass.substr(0, sClass.length -3) +'uns';

			iCurrentGalleryIconIndex = iIndex;

			var oIcon = document.getElementById('idThumb' +iCurrentGalleryIconIndex);
			var sClass = oIcon.className;
			oIcon.className = sClass.substr(0, sClass.length -3) +'sel';
		}

		if (oImage.sVideo != null)
			setControlsVisible(1);
		else
			setControlsVisible(0);

/*
		if (oImage.bVideo) {
			if (!bVideoMode) {
				setControlsVisible(false);
				resetImage();
				bVideoMode = true;
			}
			initPlay(oImage.sSource);
			return;
	//		iCurrentGalleryIconIndex = iIndex;
		} else {
			if (bVideoMode) {
				setControlsVisible(true);
				initImage(iIndex);
				bVideoMode = false;
				return;
			}
		}
*/
		if (oInterval == null) {
			goPrimaryFader = document.getElementById('idImage' +iActiveFader);
			goSecondaryFader = document.getElementById('idImage' +(iActiveFader == 0 ? 1 : 0));

			var sImageName = goCurrentPage.aImages[iIndex].sSource;

			oInterval = window.setInterval("doFade()", 1000 /giFadePerSec);
			iFadePhase = 0;

	//		goPrimaryFader.style.visibility = 'hidden';
	//		goSecondaryFader.src = sImageName;
			goSecondaryFader.style.backgroundImage = 'url(' +sImageName +')';
	//		oSecondaryFader.style.visibility = 'visible';

			iActiveFader = iActiveFader == 0 ? 1 : 0;

	//		var oImage = goCurrentPage.aImages[iIndex];
			document.getElementById('idImageTitle').innerHTML = oImage.sTitle;
		}
	}
}

function fadePrev() {
	if (iCurrentGalleryIconIndex > 0)
		fadeTo(iCurrentGalleryIconIndex -1);
	else
		fadeTo(goCurrentPage.aImages.length -1);
}

function fadeNext() {
	if (iCurrentGalleryIconIndex < goCurrentPage.aImages.length -1)
		fadeTo(iCurrentGalleryIconIndex +1);
	else
		fadeTo(0);
}

function doFade() {
	if (iFadePhase < 100) {
		changeOpacity(goSecondaryFader, iFadePhase);
		changeOpacity(goPrimaryFader, 100 -iFadePhase);
		iFadePhase += giFadePercent;
	} else {
		changeOpacity(goSecondaryFader, 100);
		changeOpacity(goPrimaryFader, 0);

		window.clearInterval(oInterval);
		oInterval = null;
	}
}

var aAdvIndexes = [];
function initAdvertisements() {
	var oPage = document.getElementById('advertisements');
	var oAdvs = getElementsByPath(oPage, 'div[@class="advertisement"]');
	for (var i = 0; i < oAdvs.length; i++) {
		var oAdv = oAdvs[i];
		var oImages = oAdv.getElementsByTagName('img');

		aAdvIndexes.push([0, oImages.length]);
		initAdvPage(i, 0);
	}
}

function initAdvPage(iIndex, iPos) {
	var oAdv = document.getElementById('advertisement_' +iIndex);
	var oImages = oAdv.getElementsByTagName('img');
	var oDisplay = getElementsByPath(oAdv, 'div[@class="image"')[0];
	var oCounter = getElementsByPath(oAdv, 'div[@class="counter"')[0];

	var iSize = aAdvIndexes[iIndex][1];
	oCounter.innerHTML = '' +iSize +' / ' +(iPos +1) +'. kép';
	oDisplay.style.backgroundImage = 'url(' +oImages[iPos].src +')';
}

function goPrevAdv(iIndex) {
	var iPos = aAdvIndexes[iIndex][0];
	if (iPos > 0) {
		iPos--;
		initAdvPage(iIndex, iPos);
		aAdvIndexes[iIndex][0] = iPos;
	}
}

function goNextAdv(iIndex) {
	var iPos = aAdvIndexes[iIndex][0];
	var iSize = aAdvIndexes[iIndex][1];
	if (iPos < iSize -1) {
		iPos++;
		initAdvPage(iIndex, iPos);
		aAdvIndexes[iIndex][0] = iPos;
	}
}

function goZoomAdv(iIndex) {
	var iPos = aAdvIndexes[iIndex][0];
	var oAdv = document.getElementById('advertisement_' +iIndex);
	var oImages = oAdv.getElementsByTagName('img');

	var sURL = oImages[iPos].src;
	window.open(sURL.replace("_b_","_o_"),"advwin"+Math.floor(Math.random()*1000000000),"toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,width=800,height=600");
;
}

/*
	if (giCurrentPage) {
		var oPage = document.getElementById('idPage' +giCurrentPage);
		oPage.getElementsByTagName('h3')[0].className = '';
	}
// Build new page data
	giCurrentPage = iPage;

	goCurrentPage = new Object();
	var oPage = document.getElementById('idPage' +giCurrentPage);
	var aNodes = getElementsByPath(oPage, 'h3/span[@class="caption"]');
	var sTitle = aNodes[0].innerHTML;
	aNodes = getElementsByPath(oPage, 'div[@class="text"]');
	var sText = aNodes[0].innerHTML;

	oPage.getElementsByTagName('h3')[0].className = 'selected';

	document.getElementById('idTitle').innerHTML = sTitle;
	document.getElementById('idText').innerHTML = sText;

	var aImages = [];
	aNodes = getElementsByPath(oPage, 'div[@class="gallery"]');
	for (var i = 0; i < aNodes.length; i++) {
		var oNode = aNodes[i];
		var sImgTitle = oNode.getElementsByTagName('p')[0].innerHTML;
		var sSource = oNode.getElementsByTagName('img')[0].src;
		var oImage = new Object();
		oImage.sTitle = sImgTitle;
		oImage.sSource = sSource;
		aImages.push(oImage);
	}
	goCurrentPage.sTitle = sTitle;
	goCurrentPage.sText = sText;
	goCurrentPage.aImages = aImages;
// Build gallery
	var sHTML = '';
	for (var i = 0; i < aImages.length; i++) {
		var oImage = aImages[i];
		sHTML += genThumbnail(i, oImage.sSource);
	}
	document.getElementById('idIcons').innerHTML = sHTML;
// Initialize fader
	initImage(0);
*/

function startPlay(sURL, iWidth, iHeight) {
	if (sURL == null) {
		var oImage = goCurrentPage.aImages[iCurrentGalleryIconIndex];
		sURL = oImage.sVideo;
		iWidth = oImage.iWidth;
		iHeight = oImage.iHeight;
	}
//	alert(sURL);
	var oVideo = document.getElementById('idVideo');
	var sHTML = '<object id="MediaPlayer1" width="'+iWidth+'" height="'+(iHeight+45)+'"	classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"	codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902" standby="Loading Microsoft® Windows® Media Player components..."  type="application/x-oleobject"><param name="FileName" value="'+sURL+'" /><param name="AutoStart" value="false" /><embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" src="'+sURL+'" name="MediaPlayer1" width="'+iWidth+'" height="'+(iHeight+45)+'" AutoStart="false"></embed></object><p>Kattints a videóra duplán a teljes képernyőhöz!</p>';
	oVideo.innerHTML = sHTML;
}

function imageClick() {
	var oImage = goCurrentPage.aImages[iCurrentGalleryIconIndex];
	if (oImage.sVideo != null) {
		setControlsVisible(2);
		startPlay();
	}
}

function vote(iIndex) {
	document.getElementById('idVoteField').value = iIndex;
	document.getElementById('idVote').submit();
}

/* PMI -> */
function maxlength(element, maxvalue)
     {
     var q = eval("document.form_hsz_1."+element+".value.length");
     var msg = "Szöveg túl hosszú!";
     if (q > maxvalue)
        {
        document.form_hsz_1.hszolas_szoveg.value=document.form_hsz_1.hszolas_szoveg.value.substr(0,600);
        }
     }

function hozzaszol_form_mutat()
        {
        if (navigator.appVersion.indexOf("MSIE") != -1 )
                {
                if (navigator.appVersion.indexOf("MSIE 7") != -1 )
                        {
                        document.getElementById('hozzaszol_form').style.zindex='15';
                        document.getElementById('hozzaszol_form').style.visibility='visible';
                        document.getElementById('hozzaszol_form').style.height='150px';
                        }
                else
                        {
                        // document.getElementById('hozzaszol_form').style.height='150';
                        document.getElementById('hozzaszol_form').style.display='';
                        document.getElementById('hsz_text').style.zindex='5';
                        }
                }
        else
                {
                document.getElementById('hozzaszol_form').style.display='table';
                }

        }
function hozzaszol_form_elrejt()
        {
        if (navigator.appVersion.indexOf("MSIE") != -1 )
                {
                if (navigator.appVersion.indexOf("MSIE 7") != -1 )
                        {
                        document.getElementById('hozzaszol_form').style.visibility='hidden';
                        document.getElementById('hozzaszol_form').style.height='0px';
                        }
                else
                        {
                        // document.getElementById('hozzaszol_form').style.height=0;
                        document.getElementById('hozzaszol_form').style.display='none';
                        document.getElementById('hsz_text').style.zindex='5';
                        }
                }
        else
                {
                document.getElementById('hozzaszol_form').style.display='none';
                }
        }
function miez_mutat()
        {
        if (navigator.appVersion.indexOf("MSIE") != -1 )
                {
                document.getElementById('miez').style.visibility='visible';
                }
        else
                {
                document.getElementById('miez').style.visibility='visible';
                }

        }
function miez_elrejt()
        {
        if (navigator.appVersion.indexOf("MSIE") != -1 )
                {
                document.getElementById('miez').style.visibility='hidden';
                }
        else
                {
                document.getElementById('miez').style.visibility='hidden';
                }

        }

function set_hform()
        {
        if (document.getElementById('hszov').value)
                {
                hozzaszol_form_mutat();
                document.form_hsz_1.filterszam.focus();
                }
        else
                {
                hozzaszol_form_elrejt();
                }
        }

/* <- PMI */