imageWindow=false;
imageWindowObj=window;
imageWindowImage='';
imageWindowTitle='';
var __indicatorImagePreloader;		// Ajax indikátor image preloader

var userAgent=navigator.userAgent.toLowerCase();

var isIE=(typeof(window.VBArray)!='undefined');

var IE5=/*@cc_on @_jscript_version == 5.1 ? true : @*/false;
var IE55=/*@cc_on @_jscript_version == 5.5 ? true : @*/false;
var IE6=/*@cc_on @_jscript_version == 5.6 ? true : @*/false;
var IE7=/*@cc_on @_jscript_version == 5.7 ? true : @*/false;
var IE8=/*@cc_on @_jscript_version == 5.8 ? true : @*/false;

var isOpera=typeof(window.opera)!="undefined";
var isSafari=/a/.__proto__=='//';
var isChrome=/source/.test((/a/.toString+''));

var tableRowDisplayType=((userAgent.indexOf('msie')+1)?'block':'table-row');
var tableDisplayType=((userAgent.indexOf('msie')+1)?'block':'table');

var scrollbarWidth=null;

if (isIE)	//if IE7
{
	attachToEvent(window,'load',fixEolasActivateClick);
}
function fixEolasActivateClick()
{
	var _objects=document.getElementsByTagName("object");
	var _embeds=document.getElementsByTagName("embed");
	var _applets=document.getElementsByTagName("applet");

	for (var i=0;i<_objects.length;i++)
	{
		_objects[i].outerHTML=_objects[i].outerHTML;
	}

	for (var i=0;i<_embeds.length;i++)
	{
		_embeds[i].outerHTML=_embeds[i].outerHTML;
	}

	for (var i=0;i<_applets.length;i++)
	{
		_applets[i].outerHTML=_applets[i].outerHTML;
	}
}

// IE 7 checkbox onchange bugfix
window.jscript/*@cc_on=@_jscript_version@*/
if (typeof(window.jscript)!='undefined' && jscript==5.7)	//if IE7
{
	attachToEvent(window,'load',fixIE7CheckboxOnchange);
}

function fixIE7CheckboxOnchange()
{
	var inputs=document.getElementsByTagName("input"),i=-1,l=inputs.length;
	while (++i!==l)
	{
		var inputs_i=inputs[i];

		if ((inputs_i.type=="checkbox") && inputs_i.onchange)
		{
			inputs_i._onchange=inputs_i.onchange;
			inputs_i.onchange=null;
			inputs_i.onpropertychange=function() {if (event.propertyName=='checked') this._onchange();};
		}
	}
}

String.prototype.trim=function() { return this.replace(/^\s+|\s+$/g,""); };
String.prototype.ltrim=function() { return this.replace(/\s*((\S+\s*)*)/,"$1"); };
String.prototype.rtrim=function() { return this.replace(/((\s*\S+)*)\s*/,"$1"); };

Array.prototype.inArray=function(searchTerm)
{
	var i=this.length;

	if (i > 0)
	{
		do
		{
			if (this[i] === searchTerm)
			{
				return true;
			}
		} while (i--);
	}
	return false;
}

Array.prototype.inArrayAssoc=function(searchTerm)
{
	var i=this.length;
	var item;
	var key;

	if (i > 0)
	{
		for (key in this)
		{
			item=this[key];
			if (typeof(item)!='function' && item===searchTerm)
			{
				return true;
			}
		}
	}
	return false;
}

function setOpacity(obj,opacity)	// opacity = 100 = normál
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	obj.style.opacity=(opacity/100);
	obj.style.MozOpacity=(opacity/100);
	obj.style.KhtmlOpacity=(opacity/100);
	obj.style.filter="alpha(opacity="+(opacity+10)+")";

// IE Alpha Opacity Filter bugfix

	if (opacity>=100)
	{
		try
		{
			obj.style.removeAttribute("filter");
		}
		catch(e)
		{}
	}
}

function getOpacity(obj)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	var currentOpacity=100;

	if (typeof(obj.style.opacity)!='undefined' && obj.style.opacity!=null && obj.style.opacity!='')
	{
		return obj.style.opacity*100;
	}

	if (typeof(obj.style.MozOpacity)!='undefined' && obj.style.MozOpacity!=null && obj.style.MozOpacity!='')
	{
		return obj.style.MozOpacity*100;
	}

	if (typeof(obj.style.KhtmlOpacity)!='undefined' && obj.style.KhtmlOpacity!=null && obj.style.KhtmlOpacity!='')
	{
		return obj.style.KhtmlOpacity*100;
	}

	if (typeof(obj.filters)!='undefined' && obj.filters!=null)
	{
		if (typeof(obj.filters["alpha"])!='undefined' && obj.filters["alpha"].Enabled)	// filter:alpha(opacity=52) || -ms-filter:alpha(opacity=52)
		{
			return obj.filters["alpha"].opacity;
		}

		if (typeof(obj.filters["DXImageTransform.Microsoft.Alpha"])!='undefined' && obj.filters["DXImageTransform.Microsoft.Alpha"].Enabled)	// ms-filter:'progid:DXImageTransform.Microsoft.Alpha(opacity=52)'
		{
			return obj.filters["DXImageTransform.Microsoft.Alpha"];
		}
	}

	return currentOpacity;
}

function changeOpacity(obj,value)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	var currentOpacity=getOpacity(obj);
	var newOpacity=currentOpacity+value;

	if (newOpacity>100)
	{
		newOpacity=100;
	}
	else if (newOpacity<0)
	{
		newOpacity=0;
	}

	setOpacity(obj,newOpacity);
}

function Animate(animateSettings)
{
	var settings;
	var currentStep=0;
	var target;
	var overflowX,overflowY;
	var fadeChange;
	var morphWidthChange,morphHeightChange;

	this.initialize=function (animateSettings)
	{
		settings=animateSettings;
		currentStep=0;
		target=$(settings.targetId);
		overflowX=getStyleAttributeValue(target,'overflowX');
		overflowY=getStyleAttributeValue(target,'overflowY');

		if (isIE)
		{
			settings.step=Math.floor(settings.step*0.4);
			settings.delay=Math.floor(settings.delay*0.2);
		}

		foreach(settings.commands,
			function(commandSettings,command)
			{
				switch (command)
				{
					case 'fade':
						fadeChange=Math.floor((commandSettings.stop-commandSettings.start)/settings.step);
						setOpacity(target,commandSettings.start);
						break;

					case 'morph':
						morphWidthChange=Math.floor((commandSettings.stopWidth-commandSettings.startWidth)/settings.step);
						morphHeightChange=Math.floor((commandSettings.stopHeight-commandSettings.startHeight)/settings.step);

						target.style.width=commandSettings.startWidth+'px';
						target.style.height=commandSettings.startHeight+'px';
						break;

					case 'move':
						moveXDirection=Math.floor((commandSettings.startX-commandSettings.stopX)/settings.step)*-1;
						moveYDirection=Math.floor((commandSettings.startY-commandSettings.stopY)/settings.step)*-1;

						target.style.left=commandSettings.startX+'px';
						target.style.top=commandSettings.startY+'px';
						break;
				}
			}
		);

		target.style.overflow='hidden';
		setTimeout(this.doAnimate,settings.delay);
	};

	this.doAnimate=function ()
	{
		currentStep++;

		if (currentStep<=settings.step)
		{
			foreach(settings.commands,
				function(commandSettings,command)
				{
					switch (command)
					{
						case 'fade':
							changeOpacity(target,fadeChange);
							break;

						case 'morph':
							target.style.width=morphWidthChange*currentStep+'px';
							target.style.height=morphHeightChange*currentStep+'px';
							break;

						case 'move':
							target.style.left=commandSettings.startX+moveXDirection*currentStep+'px';
							target.style.top=commandSettings.startY+moveYDirection*currentStep+'px';
							break;
					}
				}
			);

			setTimeout(target.Animate.doAnimate,settings.delay);
		}
		else
		{
			foreach(settings.commands,
				function(commandSettings,command)
				{
					switch (command)
					{
						case 'fade':
							setOpacity(target,commandSettings.stop);
							break;

						case 'morph':
							target.style.width=commandSettings.stopWidth+'px';
							target.style.height=commandSettings.stopHeight+'px';
							break;

						case 'move':
							target.style.left=commandSettings.stopX+'px';
							target.style.top=commandSettings.stopY+'px';
							break;
					}
				}
			);

			target.style.overflowX=overflowX;
			target.style.overflowY=overflowY;
		}
	};

	this.resetAnimate=function ()
	{
		currentStep=0;
		this.doAnimate();
	};

	this.initialize(animateSettings);
}

function viewImage(imageSrc,title)
{
	if (typeof(title)=='undefined')
	{
		title='';
	}

	newImageSrc=imageSrc.substr(0,imageSrc.lastIndexOf('.'))+'_large'+imageSrc.substr(imageSrc.lastIndexOf('.'),imageSrc.length-imageSrc.lastIndexOf('.'));
	imageWindowTitle=title;
	imageWindowObj=window;
	imageWindowImage=new Image;
	imageWindowImage.onload=function () { openImage(); }
	imageWindowImage.src=newImageSrc;
}

function viewGalleryImage(imageSrc,title)
{
	if (typeof(title)=='undefined')
	{
		title='';
	}

	imageWindowTitle=title;
	imageWindowImage=new Image;
	imageWindowImage.onload=function () { openImage(); }
	imageWindowImage.src=imageSrc;
}

function openImage()
{
	imageWindowImage.onload=function () { }
	var pageInfo=getPageInfo();
	var maxWidth=(typeof(imageWindowImage.naturalWidth)!='undefined'?imageWindowImage.naturalWidth:imageWindowImage.width);
	var maxHeight=(typeof(imageWindowImage.naturalHeight)!='undefined'?imageWindowImage.naturalHeight:imageWindowImage.height);
	var initialSize=10;
	var middleX=Math.floor(pageInfo.windowWidth/2)+pageInfo.topX-initialSize;
	var middleY=Math.floor(pageInfo.windowHeight/2)+pageInfo.topY-initialSize;
	var overhangWidth=(pageInfo.windowWidth<maxWidth?maxWidth-pageInfo.windowWidth:0);
	var overhangHeight=(pageInfo.windowHeight<maxHeight?maxHeight-pageInfo.windowHeight:0);
	var isOverhang=(overhangWidth+overhangHeight>0);
	var imageFrame=$('imageFrame');
	var speed=(isIE?25:5);
	var stepNo=(isIE?25:20);
	var stepPercent=(isIE?325:210);

/*
	for (var i=1; i<=stepNo; i++)
	{
		stepPercent=stepPercent+i;
	}
	alert(stepPercent);
*/

	if (typeof(imageFrame)!='undefined' && imageFrame!=null)
	{
		imageFrame.parentNode.removeChild(imageFrame);
	}

	var imageFrame=document.createElement("div");
	imageFrame.id='imageFrame';
	imageFrame.style.position='absolute';
	imageFrame.style.left=middleX+'px';
	imageFrame.style.top=middleY+'px';
	imageFrame.style.zIndex=103;
	imageFrame.style.width=initialSize+'px';
	imageFrame.style.height=initialSize+'px';
	imageFrame.className='ViewImageFrame';
	imageFrame.innerHTML='<img src="'+imageWindowImage.src+'" border="0" style="width:100%;height:100%" onclick="closeImage(this.parentNode)">';
	document.body.appendChild(imageFrame);

	if (isIE)
	{
		imageFrame.style.display='none';
	}
	else
	{
		setOpacity(imageFrame,0);
	}


	if (isOverhang)
	{
		if (overhangWidth>overhangHeight)
		{
			maxHeight=maxHeight*(pageInfo.windowWidth/maxWidth);
			maxWidth=pageInfo.windowWidth;
		}
		else
		{
			maxWidth=maxWidth*(pageInfo.windowHeight/maxHeight);
			maxHeight=pageInfo.windowHeight;
		}
	}

// Előkészítés
	zoomWidth=Math.floor(maxWidth/stepNo);
	zoomHeight=Math.floor(maxHeight/stepNo);

	imageFrame.shiftX=Math.floor(zoomWidth/2);
	imageFrame.shiftY=Math.floor(zoomHeight/2);

	imageFrame._width=initialSize;
	imageFrame._height=initialSize;

	imageFrame.x=middleX;
	imageFrame.y=middleY;
	imageFrame.middleX=middleX;
	imageFrame.middleY=middleY;

	addMask(imageFrame);

	imageFrame.zoomCommand='zoomPixel("'+imageFrame.id+'",'+zoomWidth+','+zoomHeight+','+maxWidth+','+maxHeight+','+speed+');';
	imageFrame.stepNo=stepNo;
	imageFrame.step=stepNo;
	imageFrame.stepPercent=stepPercent;

	zoomPixel(imageFrame.id,zoomWidth,zoomHeight,maxWidth,maxHeight,0);
}

function closeImage(obj)
{
	clearTimeout(obj.zoomTimeout);
	document.body.removeChild(obj);
	removeMask();
}

function zoomPixel(obj,zoomWidth,zoomHeight,fullWidth,fullHeight,speed)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (isIE && (obj.stepNo-2)==obj.step)
	{
		imageFrame.style.display='block';
	}

	if (obj.step>0)
	{
		zoomWidth=Math.ceil(fullWidth/obj.stepPercent*obj.step);
		zoomHeight=Math.ceil(fullHeight/obj.stepPercent*obj.step);
		obj.step--;
	}

	if ((obj._width+zoomWidth)>=fullWidth || (obj._height+zoomHeight)>=fullHeight)
	{
		obj.style.width=fullWidth+'px';
		obj.style.height=fullHeight+'px';

/*
		var imageClose=document.createElement("img");
			imageClose.src='/images/icon-image-close.gif';
			imageClose.style.position='absolute';
			imageClose.style.right=40+'px';
			imageClose.style.top=40+'px';
			imageClose.onclick=function () { closeImage(this.parentNode); };
			obj.appendChild(imageClose);
*/

		obj.style.left=(obj.middleX-Math.floor(fullWidth/2))+'px';
		obj.style.top=(obj.middleY-Math.floor(fullHeight/2))+'px';

		var PPE_close=document.createElement("img");
		PPE_close.src='/images/media-button-close.gif';
		PPE_close.onclick=function () { closeImage(this.parentNode); };
		PPE_close.style.position='absolute';
		PPE_close.style.left=(fullWidth-30)+'px';
		PPE_close.style.top='12px';
		$('imageFrame').appendChild(PPE_close);

		if (!isIE)
		{
			setOpacity(obj,100);
		}
	}
	else
	{
		obj._width=obj._width+zoomWidth;
		obj._height=obj._height+zoomHeight;

		obj.style.width=obj._width+'px';
		obj.style.height=obj._height+'px';

		obj.style.left=(obj.middleX-Math.floor(obj._width/2))+'px';
		obj.style.top=(obj.middleY-Math.floor(obj._height/2))+'px';

		if (!isIE)
		{
			changeOpacity(obj,Math.floor(100/obj.stepNo));
		}

		obj.zoomTimeout=setTimeout(obj.zoomCommand,speed);
	}
}

function viewVideo(videoSrc,_width,_height,_type,_autostart,_show)
{
	var playerCode='';
	var playerWidth=_width;
	var playerHeight=_height;

	switch(_type)
	{
		case 'MediaPlayer':
			playerWidth=_width;
			playerHeight=_height+45+24;

			if (isIE)
			{
				playerCode+='<object width="'+playerWidth+'" height="'+playerHeight+'" standby="Loading WMP components..." classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112" showdisplay="1" id="PPE_videoPlayer">';
				playerCode+='<param name="displaysize" value="0">';
			}
			else
			{
				playerCode+='<object width="'+playerWidth+'" height="'+playerHeight+'" type="video/x-ms-wmv" standby="Loading WMP components..." showdisplay="1" id="PPE_videoPlayer">';
			}

			playerCode+='<param name="FileName" value="'+videoSrc+'">';
			playerCode+='<param name="animationatStart" value="false">';
			playerCode+='<param name="autoStart" value="'+(_autostart?'true':'false')+'">';
			playerCode+='<param name="showControls" value="true">';
			playerCode+='<param name="loop" value="false">';
			playerCode+='<param name="ShowStatusBar" value="true">';
			playerCode+='<param name="FullScreenMode" value="false">';
			playerCode+='<param name="EnableTracker" value="true">';
			playerCode+='<param name="AllowScan" value="true">';
			playerCode+='<param name="AutoRewind" value="true">';
			playerCode+='<param name="displaysize" value="0">';
			playerCode+='<param name="BufferingProgress" value="true">';
			playerCode+='<param name="stretchToFit" value="true">';
			playerCode+='<param name="AutoSize" value="false">';
			playerCode+='</object>';
			break;

		case 'RealPlayer':
			playerCode+='<object width="'+playerWidth+'" height="'+playerHeight+'" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" id="PPE_videoPlayer">';
			playerCode+='<param name="src" value="'+videoSrc+'">';
			playerCode+='<param name="autostart" value="'+(_autostart?'true':'false')+'">';
			playerCode+='<param name="controls" value="imagewindow">';
			playerCode+='<param name="console" value="video">';
			playerCode+='<param name="loop" value="false">';
			playerCode+='<embed width="'+playerWidth+'" height="'+playerHeight+'" autostart="'+(_autostart?'true':'false')+'" src="'+videoSrc+'" loop="false" type="audio/x-pn-realaudio-plugin" controls="imagewindow" console="video"></embed>';
			playerCode+='</object>';

			playerCode+='<object id="rvocx" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="320" height="30">';
			playerCode+='<param name="src" value="'+videoSrc+'">';
			playerCode+='<param name="autostart" value="true">';
			playerCode+='<param name="controls" value="ControlPanel">';
			playerCode+='<param name="console" value="video">';
			playerCode+='<embed src="'+videoSrc+'" width="320" height="30" autostart="'+(_autostart?'true':'false')+'" controls="ControlPanel" type="audio/x-pn-realaudio-plugin" console="video"></embed>';
			playerCode+='</object>';
			break;

		case 'QuickTime':
			playerCode+='<object width="'+playerWidth+'" height="'+playerHeight+'" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0" class="transparent">';
			playerCode+='<param name="src" value="'+videoSrc+'">';
			playerCode+='<param name="controller" value="true">';
			playerCode+='<param name="autoplay" value="'+(_autostart?'true':'false')+'">';
			playerCode+='<embed width="'+playerWidth+'" height="'+playerHeight+'" src="'+videoSrc+'" pluginspage="http://www.apple.com/quicktime/download/" controller="true" autoplay="'+(_autostart?'true':'false')+'">';
			playerCode+='</object>';
			break;

		case 'FLVPlayer':	// OpenSource FLV Player
			playerWidth=_width;
			playerHeight=_height+40;
			playerCode+='<embed width="'+playerWidth+'" height="'+playerHeight+'" type="application/x-shockwave-flash" flashvars="movie='+videoSrc+'&fgcolor=0xCCCCCC&bgcolor=0x000000&autoload=on&autorewind=on&autoplay='+(_autostart?'on':'off')+'&volume=70" allowfullscreen="true" pluginspage="http://www.macromedia.com/go/getflashplayer" src="/engine_dc/flv_player.swf"/>';
			break;

		case 'FLVPlayer_mini':	// Mini Flash Video (flv) Player
			playerWidth=_width;
			playerHeight=_height+40;
			playerCode+='<embed width="'+playerWidth+'" height="'+playerHeight+'" type="application/x-shockwave-flash" flashvars="file='+videoSrc+'&size=false&aplay=true&autorew=false&autoplay='+(_autostart?'true':'false')+'&title=Demo" allowfullscreen="true" pluginspage="http://www.macromedia.com/go/getflashplayer" src="/engine_dc/flv_player.swf"/>';
			break;
	}

	if (typeof(_show)!='undefined' && _show)
	{
		var pageInfo=getPageInfo();
		var middleX=Math.floor(pageInfo.windowWidth/2-playerWidth/2)+pageInfo.topX;
		var middleY=Math.floor(pageInfo.windowHeight/2-playerHeight/2)+pageInfo.topY;

		var PPE_videoFrame=document.createElement("div");
		PPE_videoFrame.id='PPE_videoFrame';
		PPE_videoFrame.style.position='absolute';
		PPE_videoFrame.style.left=middleX+'px';
		PPE_videoFrame.style.top=middleY+'px';
		PPE_videoFrame.style.zIndex=103;
		PPE_videoFrame.style.width=playerWidth+'px';
		PPE_videoFrame.style.height=playerHeight+'px';
		PPE_videoFrame.className='PPE_ViewVideoFrame';
		PPE_videoFrame.innerHTML=playerCode;

		var PPE_close=document.createElement("img");
		PPE_close.src='/images/media-button-close.gif';
		PPE_close.onclick=function () { closeVideo(); };
		PPE_close.style.position='absolute';
		PPE_close.style.left=_width+'px';
		PPE_close.style.top=-25+'px';

		addMask();
		document.body.appendChild(PPE_videoFrame);
		PPE_videoFrame.appendChild(PPE_close);
	}
	else
	{
		document.write(playerCode);
	}

	return true;
}

function closeVideo()
{
	var PPE_videoFrame=$('PPE_videoFrame');
	PPE_videoFrame.parentNode.removeChild(PPE_videoFrame);

	removeMask()
}

function openIFrame(_id,_src,_width,_height,_callBackCommand)
{
	_id=(typeof(_id)=='undefined'?'frame':_id);
	_width=(typeof(_width)=='undefined'?700:_width);
	_height=(typeof(_height)=='undefined'?450:_height);
	_callBackCommand=(typeof(_callBackCommand)=='undefined'?'':_callBackCommand);

	var pageInfo=getPageInfo();

	var PPE_frame=$(_id);
	if (typeof(PPE_frame)!='undefined' && PPE_frame!=null)
	{
		PPE_frame.parentNode.removeChild(PPE_frame);
	}

	pageInfo=getPageInfo();

	var PPE_frame=document.createElement("iframe");
	PPE_frame.id=_id;
	PPE_frame.style.position='fixed';
	PPE_frame.style.left=pageInfo.topX+'px';
	PPE_frame.style.top=pageInfo.topY+'px';
	PPE_frame.style.zIndex=103;
	PPE_frame.style.width=_width+'px';
	PPE_frame.style.height=_height+'px';
	PPE_frame.className='Frame';
	document.body.appendChild(PPE_frame);

	PPE_frame.style.display='none';
	$(_id).src=_src;
	PPE_frame.style.display='block';

	var middleX=Math.floor(pageInfo.viewportWidth/2)-Math.ceil(PPE_frame.offsetWidth/2);
	var middleY=Math.floor(pageInfo.viewportHeight/2)-Math.ceil(PPE_frame.offsetHeight/2);
	var closeLeft=(Math.floor(pageInfo.viewportWidth/2)+Math.ceil(PPE_frame.offsetWidth/2)+5);

	if (middleX<30)
	{
		_width=(pageInfo.viewportWidth-55);
		middleX=0;
		closeLeft=(pageInfo.viewportWidth-30);
	}

	if (middleY<55)
	{
		_height=(pageInfo.viewportHeight-55);
		middleY=25;
	}

	PPE_frame.style.left=middleX+'px';
	PPE_frame.style.top=middleY+'px';
	PPE_frame.style.width=_width+'px';
	PPE_frame.style.height=_height+'px';

	var PPE_close=document.createElement("img");
	PPE_close.id=_id+'_close';
	PPE_close.src='/images/media-button-close.gif';
	eval('PPE_close.onclick=function () { closeIFrame("'+_id+'","'+_callBackCommand+'"); };');
	document.body.appendChild(PPE_close);
	PPE_close.style.position='fixed';
	PPE_close.style.left=closeLeft+'px';
	PPE_close.style.top=(middleY>25?middleY-25:0)+'px';

	addMask(PPE_frame);

	PPE_close.style.zIndex=100+maskCounter*3+1;

	PPE_frame.Animate=new Animate({
									'targetId':PPE_frame.id,
									'step':15,
									'delay':50,
									'commands':{
												'fade':{
															start:100,
															stop:getOpacity(PPE_frame)
														}
											}
								});
}

function closeIFrame(_id,_callBackCommand)
{
	_id=(typeof(_id)=='undefined'?'frame':_id);

	var PPE_frame=$(_id);
	PPE_frame.parentNode.removeChild(PPE_frame);

	var PPE_close=$(_id+'_close');
	PPE_close.parentNode.removeChild(PPE_close);

	removeMask();

	if (_callBackCommand!='')
	{
		eval(_callBackCommand);
	}
}

function openDialog(_id,_dialogCommand,_class,_callBackCommand)
{
	_id=(typeof(_id)=='undefined'?'dialog':_id);
	_dialogCommand=(typeof(_dialogCommand)=='undefined'?'':_dialogCommand);
	_class=(typeof(_class)=='undefined'?'Dialog':_class);
	_callBackCommand=(typeof(_callBackCommand)=='undefined'?'':_callBackCommand);

	if (_dialogCommand=='')
	{
		return false;
	}

	var PPE_dialog=$(_id);
	if (typeof(PPE_dialog)!='undefined' && PPE_dialog!=null)
	{
		PPE_dialog.parentNode.removeChild(PPE_dialog);
	}

	var PPE_dialog=document.createElement("div");
	PPE_dialog.id=_id;
	PPE_dialog.style.position='fixed';
	PPE_dialog.style.top=0;
	PPE_dialog.style.left=0;
	PPE_dialog.style.width='auto';
	PPE_dialog.style.zIndex=103;
	PPE_dialog.className=_class;
	document.body.appendChild(PPE_dialog);

	_dialogCommand(PPE_dialog);

	var pageInfo=getPageInfo();
	var middleX=Math.floor(pageInfo.viewportWidth/2)-Math.ceil(PPE_dialog.offsetWidth/2);
	var middleY=Math.floor(pageInfo.viewportHeight/2)-Math.ceil(PPE_dialog.offsetHeight/2);
	var closeLeft=(Math.floor(pageInfo.viewportWidth/2)+Math.ceil(PPE_dialog.offsetWidth/2)+5);

	if (middleX<30)
	{
		PPE_dialog.style.width=(pageInfo.viewportWidth-25)+'px';
		middleX=0;
		closeLeft=(pageInfo.viewportWidth-25);
	}

	if (middleY<55)
	{
		PPE_dialog.style.height=(pageInfo.viewportHeight-55)+'px';
		middleY=25;
	}

	addMask(PPE_dialog);

	PPE_dialog.style.left=middleX+'px';
	PPE_dialog.style.top=middleY+'px';

	var PPE_close=document.createElement("img");
	PPE_close.id=_id+'_close';
	PPE_close.src='/images/media-button-close.gif';
	eval('PPE_close.onclick=function () { closeDialog("'+_id+'","'+_callBackCommand+'"); };');
	PPE_close.style.position='fixed';
	PPE_close.style.left=closeLeft+'px';
	PPE_close.style.top=(middleY>25?middleY-25:0)+'px';
	document.body.appendChild(PPE_close);
	PPE_close.style.zIndex=100+maskCounter*3+1;

	PPE_dialog.Animate=new Animate({
									'targetId':PPE_dialog.id,
									'step':20,
									'delay':50,
									'commands':{
												'fade':{
															start:100,
															stop:getOpacity(PPE_dialog)
														}
											}
								});
}

function closeDialog(_id,_callBackCommand)
{
	_id=(typeof(_id)=='undefined'?'dialog':_id);

	var PPE_dialog=$(_id);
	PPE_dialog.parentNode.removeChild(PPE_dialog);

	var PPE_close=$(_id+'_close');
	PPE_close.parentNode.removeChild(PPE_close);

	removeMask();

	if (_callBackCommand!='')
	{
		eval(_callBackCommand);
	}
}

function initIndicator(imageSrc)
{
//window.status=window.status+'->InitIndicator('+(__indicatorImagePreloader==null?'null':'not null')+')';
	if (__indicatorImagePreloader==null)
	{
		__indicatorImagePreloader=new Image;
		__indicatorImagePreloader.show=true;
		__indicatorImagePreloader.onload=function () { showIndicator(); }
		__indicatorImagePreloader.src=imageSrc;
	}
}

function showIndicator()
{
//window.status=window.status+'->showIndicator('+(__indicatorImagePreloader.show?'true':'false')+')';
	__indicatorImagePreloader.onload=function () { }
	if (__indicatorImagePreloader.show)
	{
		addMask();

		var __pageInfo=getPageInfo();
		var __middleX=Math.floor((__pageInfo.windowWidth-__indicatorImagePreloader.offsetWidth)/2);
		var __middleY=Math.floor((__pageInfo.windowHeight-__indicatorImagePreloader.offsetHeight)/2);

		var __indicator=document.createElement("img");
		__indicator.src=__indicatorImagePreloader.src;
		__indicator.style.position='absolute';
		__indicator.style.left=__middleX+'px';
		__indicator.style.top=__middleY+'px';
		__indicator.style.zIndex=103;
		__indicator.id='ppeIndicator';
		document.body.appendChild(__indicator);
		__indicatorImagePreloader=null;
	}
	else
	{
		__indicatorImagePreloader=null;
	}
}

function hideIndicator()
{
	var __indicatorImage=$('ppeIndicator');

//window.status=window.status+'->hideIndicator('+(__indicatorImagePreloader==null?'null':'not null')+','+(__indicatorImage==null?'null':'not null')+')';
	if (__indicatorImagePreloader!=null)
	{
		__indicatorImagePreloader.show=false;
	}

	if (__indicatorImage!=null)
	{
		document.body.removeChild(__indicatorImage);
	}
	removeMask();
}

function getStyleAttributeValue(obj,attributeName,forcedValue)
{
	if (typeof(forcedValue)=='undefined')
	{
		forcedValue=false;
	}

	var attributeValue;

	if (isIE)
	{
		attributeValue=obj.currentStyle[attributeName];

		if (attributeValue==null || attributeValue=='')
		{
			attributeValue=eval('obj.runtimeStyle.'+attributeName);
		}

		if (forcedValue && attributeValue=='auto')
		{
			var rec=obj.getBoundingClientRect()

			switch(attributeName)
			{
				case 'top':
				case 'right':
				case 'bottom':
				case 'left':
					attributeValue=rec[attributeName];
					break;

				case 'width':
//					var border=getStyleAttributeValue(obj,'borderLeft',true)+getStyleAttributeValue(obj,'borderRight',true);
//					attributeValue=(typeof(rec[attributeName])!='undefined'?rec[attributeName]:obj.offsetWidth-border);
					attributeValue=(typeof(rec[attributeName])!='undefined'?rec[attributeName]:obj.clientWidth);
					break;

				case 'height':
//					var border=getStyleAttributeValue(obj,'borderTop',true)+getStyleAttributeValue(obj,'borderBottom',true);
//					attributeValue=(typeof(rec[attributeName])!='undefined'?rec[attributeName]:obj.offsetHeight-border);
					attributeValue=(typeof(rec[attributeName])!='undefined'?rec[attributeName]:obj.clientHeight);
					break;

				case 'borderTop':
				case 'borderRight':
				case 'borderBottom':
				case 'borderLeft':
					attributeValue=0;
					break;
			}
		}
	}
	else
	{
		attributeValue=eval('obj.style.'+attributeName);

		if ((attributeValue==null || attributeValue=='' || (forcedValue && attributeValue=='auto')) && window.getComputedStyle)
		{
			attributeValue=document.defaultView.getComputedStyle(obj,null).getPropertyValue(attributeName);
		}
	}
	return attributeValue;
}

function elementHasClass(obj,className)
{
	if (typeof(obj)!='object')
	{
		obj=document.getElementById(obj);
	}

	if (obj.className)
	{
		var classNames=obj.className.split(' ');
		var i;

		className=className.toLowerCase();
		for (i=0;i<classNames.length;i++)
		{
			if (classNames[i].toLowerCase()==className)
			{
				return true;
			}
		}
	}

	return false;
}

function addElementClass(obj,className)
{
	if (typeof(obj)!='object')
	{
		obj=document.getElementById(obj);
	}

	if (elementHasClass(obj,className))
	{
		return;
	}

	obj.className+=' '+className;
}

function removeElementClass(obj,className)
{
	if (typeof(obj)!='object')
	{
		obj=document.getElementById(obj);
	}

	if (!obj.className || !elementHasClass(obj,className))
	{
		return false;
	}

	var classNames=obj.className.split(' ');
	var i;
	var result=false;

	className=className.toLowerCase();
	for (i=0;i<classNames.length;i++)
	{
		if (classNames[i].toLowerCase()==className)
		{
			classNames.splice(i,1);
			result=true;
		}
	}

	obj.className=classNames.join(' ');
	return result;
}

function getObjXY(Obj)
{
	var Cord,leftpos,toppos,aTag,IE;

	if (typeof(Obj)!='object')
	{
		Obj=document.getElementById(Obj);
	}

	var IE=(typeof(Obj.currentStyle)!='undefined');
	var Cord=new Array();
	var leftpos=Obj.offsetLeft;
	var toppos=Obj.offsetTop;

	if ((IE?Obj.currentStyle['position']:Obj.style.position)!='absolute')
	{
		aTag=Obj;
		do
		{
			aTag=aTag.offsetParent;
			leftpos += aTag.offsetLeft;
			toppos += aTag.offsetTop;
			if (aTag.style.position=='absolute')
			{
				leftpos -= aTag.offsetLeft;
				toppos -= aTag.offsetTop;
				break;
			}
		} while(aTag.tagName!="BODY" && aTag.tagName!="HTML" && (IE?aTag.currentStyle['position']:aTag.style.position)=='static');
	}
	Cord[0]=leftpos;
	Cord[1]=toppos;
	return Cord;
}

function getDocHeight()
{
	return (typeof(window.innerHeight)!='undefined'?window.innerHeight:document.body.clientHeight);
}

function getPageInfo(w)
{
	var viewportWidth,viewportHeight;		// Látható tartalom mérete (nem tartalmazza a scrollbart)
	var scrollbarX,scrollbarY;				// Van scrollbar?
	var windowWidth,windowHeight;			// Ablak mérete (tartalmazza a scrollbar méretét is)
	var pageHeight,pageWidth;				// Oldal mérete
	var topX,topY;							// Látható tartalom itt kezdődik

	if (typeof(w)=='undefined')
	{
		w=window;
	}

// Viewport meghatározása
	if (w.innerHeight && w.scrollMaxY)	// Firefox
	{
		viewportWidth=w.document.body.scrollWidth;
//		viewportHeight=w.innerHeight+w.scrollMaxY;
		viewportHeight=w.document.body.scrollHeight;
	}
	else if (w.document.body.scrollHeight > w.document.body.offsetHeight)	 // Ha nem Mac Explorer
	{
		viewportWidth=w.document.body.scrollWidth;
		viewportHeight=w.document.body.offsetHeight;
	}
	else
	{ // Explorer (Mac) és Explorer 6 Strict, Mozilla and Safari
		viewportWidth=w.document.documentElement.clientWidth;
		viewportHeight=w.document.documentElement.clientHeight
	}

// Ablak méret meghatározása
	if (self.innerHeight)	// Ha nem IE
	{
		windowWidth=self.innerWidth;
		windowHeight=self.innerHeight;
	}
	else if (w.document.documentElement && w.document.documentElement.clientHeight)  // Explorer 6 Strict Mode
		{
			windowWidth=w.document.documentElement.clientWidth;
			windowHeight=w.document.documentElement.clientHeight;
		}
		else if (w.document.body)	// Egyébb Explorer
		{
			windowWidth=w.document.body.clientWidth;
			windowHeight=w.document.body.clientHeight;
		}

	if (window.innerHeight && window.scrollMaxY)
	{
		pageWidth=window.innerWidth+window.scrollMaxX;
		pageHeight=window.innerHeight+window.scrollMaxY;
	}
	else if (document.body.scrollHeight > document.body.offsetHeight)
		{
			pageWidth=document.body.scrollWidth;
			pageHeight=document.body.scrollHeight;
		}
		else
		{
			pageWidth=document.body.offsetWidth+document.body.offsetLeft;
			pageHeight=document.body.offsetHeight+document.body.offsetTop;
		}

// Viewport kezdő kordinátájának meghatározása
	if(window.pageYOffset) // ha nem IE
	{
		topX=w.pageXOffset;
		topY=w.pageYOffset;
	}
	else
	{
		if(w.document.documentElement && !isNaN(w.document.documentElement.scrollTop)) //IE standards compliance mode
		{
			topX=w.document.documentElement.scrollLeft;
			topY=w.document.documentElement.scrollTop;
		}
		else //IE quirks mode
		{
			topX=w.document.body.scrollLeft;
			topY=w.document.body.scrollTop;
		}
	}

// Gördítősávok meglétének detektálása
	if (typeof(w.scrollMaxX)!='undefined')
	{
		scrollbarX=!(w.scrollMaxX==0);
		scrollbarY=!(w.scrollMaxy==0);
	}
	else
	{
		scrollbarX=(windowWidth<pageWidth);
		scrollbarY=(isIE?true:windowHeight<pageHeight);
	}

	return {pageWidth:pageWidth,pageHeight:pageHeight,windowWidth:windowWidth,windowHeight:windowHeight,viewportWidth:viewportWidth,viewportHeight:viewportHeight,scrollbarX:scrollbarX,scrollbarY:scrollbarY,topX:topX,topY:topY};
}

function getScrollbarWidth()
{
	if (scrollbarWidth!=null)
	{
		return scrollbarWidth;
	}

	if (isIE)
	{
		var tarea;

		tarea=document.createElement('textarea');
		tarea.style.position='absolute';
		tarea.style.top='0px';
		tarea.style.left='0px';
		tarea.style.visibility='hidden';
		tarea.setAttribute('id','PPE_ta');

		document.body.appendChild(tarea);

		tarea.wrap='off';						// Scrollbar ki
		scrollbarWidth=tarea.offsetHeight;
		tarea.wrap='soft';					// Scrollbar be
		scrollbarWidth -= tarea.offsetHeight;

		document.body.removeChild(tarea);
	}
	else
	{
		var _outer=null;
		var inn=null;

		_outer=document.createElement('div');
		_outer.style.position='absolute';
		_outer.style.top='0px';
		_outer.style.left='0px';
		_outer.style.visibility='hidden';
		_outer.style.width='100px';
		_outer.style.height='50px';
		_outer.style.overflow='hidden';

		inn=document.createElement('div');
		inn.style.width='100%';
		inn.style.height='200px';

		_outer.appendChild(inn);
		document.body.appendChild(_outer);

		scrollbarWidth=inn.offsetWidth;
		_outer.style.overflow='auto';			// Scrollbar be
		scrollbarWidth -= inn.offsetWidth;

		document.body.removeChild(_outer);
	}

	return scrollbarWidth;
}

function setScrollToMiddle(obj)
{
	if (typeof(obj)!='object')
	{
		obj=document.getElementById(obj);
	}

	switch(obj.tagName.toLowerCase())
	{
		case 'select':
		if (obj.selectedIndex==-1 || isIE)
			{
				return true;
			}

			var itemHeight=obj.scrollHeight/obj.options.length;
			var scrollMiddle=Math.floor(obj.selectedIndex*itemHeight-(obj.clientHeight/2)+(itemHeight/2));

			if (scrollMiddle<1)
			{
				scrollMiddle=0;
			}

			if (scrollMiddle>obj.scrollHeight-obj.clientHeight)
			{
				scrollMiddle=obj.scrollHeight-obj.clientHeight;
			}
			obj.scrollTop=scrollMiddle;
			break;
	}

	return true;
}

function moveToCenter(obj,width,height)
{
	if (typeof(obj)!='object')
	{
		obj=document.getElementById(obj);
	}

	if (typeof(width)=='undefined')
	{
		width=obj.offsetWidth+getStyleAttributeValue(obj,'marginLeft')+getStyleAttributeValue(obj,'marginRight');
	}

	if (typeof(height)=='undefined')
	{
		height=obj.offsetHeight+getStyleAttributeValue(obj,'marginTop')+getStyleAttributeValue(obj,'marginBottom');
	}

	var pageInfo=getPageInfo();
	var middleX=Math.floor(pageInfo.viewportWidth/2)-Math.ceil(width/2);
	var middleY=Math.floor(pageInfo.viewportHeight/2)-Math.ceil(height/2);

	obj.style.left=middleX+'px';
	obj.style.top=middleY+'px';
}

function $(id)
{
	return document.getElementById(id);
}

function attachToEvent(obj,eventName,func)
{
	if(obj.addEventListener)
	{
		obj.addEventListener(eventName,func,false);
	}
	else
	{
		if(obj.attachEvent)
		{
			obj.attachEvent('on'+eventName,func);
		}
		else
		{
			obj["on"+eventName]=func;
		}
	}
}

function deattachEvent(obj,eventName,func)
{
	if(obj.removeEventListener)
	{
		obj.removeEventListener(eventName,func,false);
	}
	else
	{
		if(obj.detachEvent)
		{
			obj.detachEvent('on'+eventName,func);
		}
		else
		{
			obj["on"+eventName]=null;
		}
	}
}

function addFlash(contentId,content)
{
	var index;

	if (typeof(__objectContent)=='undefined')
	{
		__objectContent=new Array();
	}
	index=__objectContent.length;
	__objectContent[index]=new Array();
	__objectContent[index]['id']=contentId;
	__objectContent[index]['content']='type="application/x-shockwave-flash" '+content;
}

function addObject(contentId,content)
{
	var index;

	if (typeof(__objectContent)=='undefined')
	{
		__objectContent=new Array();
	}
	index=__objectContent.length;
	__objectContent[index]=new Array();
	__objectContent[index]['id']=contentId;
	__objectContent[index]['content']=content;
}

function putObject()
{
	var i;

	if (typeof(__objectContent)=='undefined' || __objectContent.length<1)
	{
		return;
	}
	for (i=0;i<__objectContent.length;i++)
	{
		document.getElementById(__objectContent[i]['id']).innerHTML='<object " '+__objectContent[i]['content']+'</object>';
	}
}

attachToEvent(window,'load',putObject);

function getElementsByClassName(oElm,strTagName,oClassNames)
{
	var arrElements=(strTagName=="*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements=new Array();
	var arrRegExpClassNames=new Array();
	if(typeof oClassNames=="object")
	{
		for(var i=0; i<oClassNames.length; i++)
		{
			arrRegExpClassNames.push(new RegExp("(^|\\s)"+oClassNames[i].replace(/\-/g,"\\-")+"(\\s|$)"));
		}
	}
	else
	{
		arrRegExpClassNames.push(new RegExp("(^|\\s)"+oClassNames.replace(/\-/g,"\\-")+"(\\s|$)"));
	}
	var oElement;
	var bMatchesAll;
	for(var j=0; j<arrElements.length; j++)
	{
		oElement=arrElements[j];
		bMatchesAll=true;
		for(var k=0; k<arrRegExpClassNames.length; k++){
			if(!arrRegExpClassNames[k].test(oElement.className))
			{
				bMatchesAll=false;
				break;
			}
		}
		if(bMatchesAll)
		{
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function resetFileInput(formObj)
{
	var origValue= new Array();
	var index;

	for (index=0;index<formObj.elements.length;index++)
	{
		origValue[index]=new Array();
		origValue[index][0]=formObj.elements[index].type;
		origValue[index][1]=formObj.elements[index].value;
		if (origValue[index][0]!='file' && origValue[index][0]!='submit' && origValue[index][0]!='reset')
		{
			origValue[index][2]=formObj.elements[index].disabled;
		}
		if (origValue[index][0]=='radio')
		{
			origValue[index][3]=formObj.elements[index].checked;
		}
	}
	formObj.reset();
	for (index=0;index<formObj.elements.length;index++)
	{
		if (origValue[index][0]!='file' && origValue[index][0]!='submit' && origValue[index][0]!='reset')
		{
			formObj.elements[index].value=origValue[index][1];
			formObj.elements[index].disabled=origValue[index][2];
			if (origValue[index][0]=='radio')
			{
				formObj.elements[index].checked=origValue[index][3];
			}
		}
	}
}

function collectInputIds(obj)
{
	var ids=new Array();
	var inputs;
	var index;

	inputs=obj.getElementsByTagName('input');
	for (index in inputs)
	{
		if (typeof(inputs[index])!='undefined' && inputs[index].id!=null && inputs[index].id!='')
		{
			ids.push(inputs[index].id);
		}
	}

	inputs=obj.getElementsByTagName('select');
	for (index in inputs)
	{
		if (typeof(inputs[index])!='undefined' && inputs[index].id!=null && inputs[index].id!='')
		{
			ids.push(inputs[index].id);
		}
	}

	inputs=obj.getElementsByTagName('button');
	for (index in inputs)
	{
		if (typeof(inputs[index])!='undefined' && inputs[index].id!=null && inputs[index].id!='')
		{
			ids.push(inputs[index].id);
		}
	}

	return ids;
}

function dissableInputs(formObj,except)
{
	var index;

	if (typeof(except)!='undefined' && except.length>0)
	{
		for (index=0;index<formObj.elements.length;index++)
		{
			if (typeof(formObj.elements[index].originalDisabled)=='boolean' || typeof(formObj.elements[index].id)!='undefined' && except.inArray(formObj.elements[index].id))
			{
				continue;
			}
			formObj.elements[index].originalDisabled=formObj.elements[index].disabled;
			formObj.elements[index].disabled=true;
		}
	}
	else
	{
		for (index=0;index<formObj.elements.length;index++)
		{
			if (typeof(formObj.elements[index].originalDisabled)=='boolean')
			{
				continue;
			}
			formObj.elements[index].originalDisabled=formObj.elements[index].disabled;
			formObj.elements[index].disabled=true;
		}
	}
}

function enableInputs(formObj,except)
{
	var index;

	if (typeof(except)!='undefined' && except.length>0)
	{
		for (index=0;index<formObj.elements.length;index++)
		{
			if (typeof(formObj.elements[index].id)=='undefined' && except.inArray(formObj.elements[index].id) || typeof(formObj.elements[index].originalDisabled)!='boolean')
			{
				continue;
			}
			formObj.elements[index].disabled=formObj.elements[index].originalDisabled;
			formObj.elements[index].originalDisabled=null;
		}
	}
	else
	{
		for (index=0;index<formObj.elements.length;index++)
		{
			if (typeof(formObj.elements[index].originalDisabled)!='boolean')
			{
				continue;
			}
			formObj.elements[index].disabled=formObj.elements[index].originalDisabled;
			formObj.elements[index].originalDisabled=null;
		}
	}
}

function getCheckedRadioValue(radioObj)
{
	if (typeof(radioObj)!='object')
	{
		radioObj=$(radioObj);

		var inputs=document.getElementsByTagName('input');
		var len=len=inputs.length;

		for (var i=0;i<len;i++)
		{
			if (inputs[i].name==radioObj.name && inputs[i].type=="radio" && inputs[i].checked)
			{
				return inputs[i].value;
			}
		}
		return null;
	}

	var radioLength=radioObj.length;

	if(radioLength==undefined)
	{
		if(radioObj.checked)
		{
			return radioObj.value;
		}
		else
		{
			return null;
		}
	}

	for(var i=0;i<radioLength;i++)
	{
		if(radioObj[i].checked)
		{
			return radioObj[i].value;
		}
	}
	return null;
}

function setRadioValue(radioObj,newValue)
{
	if (typeof(radioObj)!='object')
	{
		radioObj=$(radioObj);

		var inputs=document.getElementsByTagName('input');
		var len=len=inputs.length;

		for (var i=0;i<len;i++)
		{
			if (inputs[i].name==radioObj.name && inputs[i].type=="radio")
			{
				if (inputs[i].checked)
				{
					inputs[i].checked=false;
				}

				if (inputs[i].value==newValue)
				{
					inputs[i].checked=true;
				}
			}
		}
		return;
	}

	var radioLength=radioObj.length;
	newValue=newValue.toString();

	if(radioLength==undefined)
	{
		radioObj.checked=(radioObj.value==newValue);
		return;
	}

	for(var i=0; i<radioLength;i++)
	{
		radioObj[i].checked=false;
		if(radioObj[i].value==newValue)
		{
			radioObj[i].checked=true;
		}
	}
}

function objInDocument(obj)
{
	var testObj;
	var id;
	var setId;
	var result;

	obj.objInDocument='objInDocument';
	setId=(typeof(obj.id)!='string');

	if (setId)
	{
		id='objInDocument';
		obj.id=id;
		setId=true;
	}
	else
	{
		id=obj.id;
		setId=false;
	}

	testObj=document.getElementById(obj.id);
	if(!(typeof(testObj)!='undefined' && testObj!=null && typeof(testObj.objInDocument)!='undefined' && typeof(testObj.objInDocument)!='null' && testObj.objInDocument=='objInDocument'))
	{
		result=false;
	}
	else
	{
		result=true;
	}

	if (setId)
	{
		obj.id=null;
	}
	obj.objInDocument=null;
	return result;
}

function cleanOptions(obj)
{
	var index;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	obj.selectedIndex=-1;
	if (obj.options.length>0)
	{
		for (index=(obj.options.length-1);index>=0;index--)
		{
			obj.options[index]=null;
		}
	}
}

function removeOption(obj,index)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (typeof(obj.options[index])!='undefined')
	{
		if (objInDocument(obj))
		{
			obj.options[index]=null;
		}
		else
		{
			opener.document.getElementById(obj.id).remove(index);
		}
	}
}

function removeSelectedOptions(obj)
{
	var index=0;
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	for (index=(obj.options.length-1);index>=0;index--)
	{
		if (obj.options[index].selected==true)
		{
			removeOption(obj,index);
		}
	}
}

function removeOptionByValue(obj,value)
{
	var index=0;
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	for (index=(obj.options.length-1);index>=0;index--)
	{
		if (obj.options[index].value==value)
		{
			removeOption(obj,index);
		}
	}
}

function addOptionItems(obj,items)
{
	var index=0;
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	foreach(items,
		function(item,index)
		{
			obj.options[obj.options.length]=new Option(item,index,false,false);
		}
	);
}

function addOptionItem(obj,text,value,defaultSelected,selected)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}
	if (typeof(defaultSelected)=='undefined')
	{
		defaultSelected=false;
	}
	if (typeof(selected)=='undefined')
	{
		selected=false;
	}

	var newItemIndex=obj.options.length;

	if (objInDocument(obj))
	{
		obj.options[newItemIndex]=new Option(text,value,defaultSelected,selected);
	}
	else
	{
		if (typeof(document.all)!='undefined')
		{
			var newOption=opener.document.createElement("option");
			newOption.value=value;
			newOption.text=text;
			newOption.defaultSelected=defaultSelected;
			newOption.selected=selected;
			obj.add(newOption);
		}
		else
		{
			obj.options[newItemIndex]=new Option(text,value,defaultSelected,selected);
		}

		return newItemIndex;
	}

	return newItemIndex;
}

function addUniqueOptionItem(obj,text,value,defaultSelected,selected)
{
	var index=0;
	var unique=true;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	for (index=(obj.options.length-1);index>=0;index--)
	{
		if (obj.options[index].value==value)
		{
			unique=false;
			break;
		}
	}

	if(unique)
	{
		addOptionItem(obj,text,value,defaultSelected,selected);
		return true;
	}
	return false;
}

function copySelectedOptionItems(sourceObj,targetObj,_unique)
{
	var unique=false;
	var index=0;

	if (typeof(sourceObj)!='object')
	{
		sourceObj=$(sourceObj);
	}
	if (typeof(targetObj)!='object')
	{
		targetObj=$(targetObj);
	}
	if (typeof(_unique)!='undefined')
	{
		unique=_unique;
	}

	if (sourceObj.options.length>0)
	{
		for (index=0;index<sourceObj.options.length;index++)
		{
			if (!sourceObj.options[index].selected)
			{
				continue;
			}
			if (unique)
			{
				addUniqueOptionItem(targetObj,sourceObj.options[index].text,sourceObj.options[index].value,false,sourceObj.options[index].selected);
			}
			else
			{
				addOptionItem(targetObj,sourceObj.options[index].text,sourceObj.options[index].value,false,sourceObj.options[index].selected);
			}
		}
	}
}

function moveSelectedOptionItems(sourceObj,targetObj,_unique)
{
	var unique=false;
	var index=0;

	if (typeof(sourceObj)!='object')
	{
		sourceObj=$(sourceObj);
	}
	if (typeof(targetObj)!='object')
	{
		targetObj=$(targetObj);
	}
	if (typeof(_unique)!='undefined')
	{
		unique=_unique;
	}
	copySelectedOptionItems(sourceObj,targetObj,unique);
	removeSelectedOptions(sourceObj);
}

function getSelectedOptionValue(obj)
{
	var result='';
	var index=0;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (obj.options.length>0)
	{
		for (index=(obj.options.length-1);index>=0;index--)
		{
			if (obj.options[index].selected==true)
			{
				result+=obj.options[index].value+',';
			}
		}
	}

	if (result!='')
	{
		result=result.substr(0,result.length-1);
	}
	return result;
}

function getSelectedOptionTitle(obj)
{
	var result='';
	var index=0;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (obj.options.length>0)
	{
		for (index=(obj.options.length-1);index>=0;index--)
		{
			if (obj.options[index].selected==true)
			{
				result+=obj.options[index].text+',';
			}
		}
	}

	if (result!='')
	{
		result=result.substr(0,result.length-1);
	}
	return result;
}

function selectAllOptions(obj)
{
	var index=0;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (obj.options.length>0)
	{
		for (index=(obj.options.length-1);index>=0;index--)
		{
			obj.options[index].selected=true;
		}
	}
}

function selectOptionsByValue(obj,values)
{
	var index=0;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (obj.options.length>0)
	{
		for (index=(obj.options.length-1);index>=0;index--)
		{
			if (values.inArray(obj.options[index].value)==true)
			{
				obj.options[index].selected=true;
			}
		}
	}
}

function selectOptionItemByValue(obj,selectedValue)
{
	var optionIndex=0;
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}
	if (obj.options.length==0)
	{
		return;
	}

	for (optionIndex=0;optionIndex<obj.options.length;optionIndex++)
	{
		if (obj.options[optionIndex].value==selectedValue)
		{
			obj.options[optionIndex].selected=true;
		}
	}
}

function selectOptionItemByText(obj,text)
{
	var optionIndex=0;
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}
	if (obj.options.length==0)
	{
		return;
	}

	for (optionIndex=0;optionIndex<obj.options.length;optionIndex++)
	{
		if (obj.options[optionIndex].text==text)
		{
			obj.options[optionIndex].selected=true;
		}
	}
}

function setAllCheckboxState(formObj,value)
{
	if (typeof(formObj)!='object')
	{
		formObj=$(formObj);
	}

	var index;

	for (index=0;index<formObj.elements.length;index++)
	{
		if(formObj.elements[index].type=='checkbox' && formObj.elements[index].disabled==false)
		{
			formObj.elements[index].checked=value;
		}
	}
	return true;
}

function invertAllCheckboxState(formObj)
{
	if (typeof(formObj)!='object')
	{
		formObj=$(formObj);
	}

	var index;

	for (index=0;index<formObj.elements.length;index++)
	{
		if(formObj.elements[index].type=='checkbox' && formObj.elements[index].disabled==false)
		{
			formObj.elements[index].checked=!formObj.elements[index].checked;
		}
	}
	return true;
}

function foreach(variable,_function)
{
	var key;
	var item;

	for (key in variable)
	{
		item=variable[key];
		if (typeof(item)!='function')
		{
			_function(item,key);
		}
	}
}

function enter(e,nextFieldId,requireFill)
{
	if (typeof(requireFill)=='undefined')
	{
		requireFill=false;
	}

	var keyCode=(typeof(e.which)!='undefined'?e.which:e.keyCode);
	var _target=(typeof(e.target)!='undefined'?e.target:e.srcElement);

	if (keyCode==13)
	{
		if (requireFill && _target.value=='')
		{
			return false;
		}

		if (typeof(nextFieldId)=='function')
		{
			nextFieldId();
			return true
		}

		nextField=$(nextFieldId);
		nextField.focus();
		return false;
	}
}

function isValidDate(year,month,day)
{
	var dt=new Date(parseFloat(year),parseFloat(month)-1,parseFloat(day),0,0,0,0);

	if (parseFloat(day)!=dt.getDate())
	{
		return false;
	}
	if (parseFloat(month)-1!=dt.getMonth())
	{
		return false;
	}
	return true;
}

function isNuberPressed(e)
{
	var keyCode;
	var extraKey;

	if (typeof(e.which)!='undefined')
	{
		keyCode=e.which;
	}
	else
	{
		keyCode=e.keyCode;
	}

	extraKey=e.ctrlKey && keyCode;

	if((keyCode<48 || keyCode>57) && keyCode>8 && extraKey!=99 && extraKey!=118 && extraKey!=120)
	{
		return false;
	}

	return true;
}

function formatNumber(number)
{
	var decimalSeparator=',';
	var thousandSeparator='.';
	var i,piece,offset,result;

	if (number=='' || number=='0')
	{
		return 0;
	}

	number=number+'';
	number=number.replace(new RegExp('[\\'+thousandSeparator+']*',"g"),'').split(decimalSeparator);
	number[0]=number[0].replace(/^0[0]*/,'');

	piece=Math.floor(number[0].length/3);
	offset=number[0].length%3;
	result=number[0].substr(0,offset)+(offset>0 && number[0].length>3?thousandSeparator:'');
	for (i=0; i<piece; i++)
	{
		result=result+number[0].substr(offset+i*3,3)+(i!=(piece-1)?thousandSeparator:'');
	}
	number=result+(typeof(number[1])!='undefined' && number[1]!=''?decimalSeparator+number[1]:'');
	return number;
}

function onEvent_formatNumber()
{
	var decimalSeparator=',';
	var thousandSeparator='.';
	var number,i,piece,offset,result;

	if (this.value=='' || this.value=='0')
	{
		return;
	}

	number=this.value.replace(new RegExp('[\\'+thousandSeparator+']*',"g"),'').split(decimalSeparator);
	number[0]=number[0].replace(/^0[0]*/,'');

	if (typeof(this.originalMaxLenght)!='undefined' && this.originalMaxLenght<number[0].length)
	{
		number[0]=number[0].substr(0,this.originalMaxLenght);
	}

	piece=Math.floor(number[0].length/3);
	offset=number[0].length%3;
	result=number[0].substr(0,offset)+(offset>0 && number[0].length>3?thousandSeparator:'');
	for (i=0; i<piece; i++)
	{
		result=result+number[0].substr(offset+i*3,3)+(i!=(piece-1)?thousandSeparator:'');
	}
	this.value=result+(typeof(number[1])!='undefined' && number[1]!=''?decimalSeparator+number[1]:'');
}

function initFormatedFields(fields)
{
	var key,field;

	if (fields.length<1)
	{
		return true;
	}
	for (key=0;key<fields.length;key++)
	{
		field=document.getElementById(fields[key]);
		if (field.maxLength>3)
		{
			field.originalMaxLenght=field.maxLength;
			if (field.size==field.maxLength)
			{
				field.size=field.maxLength+(Math.floor(field.maxLength/3));
			}
			field.maxLength=field.maxLength+(Math.floor(field.maxLength/3));
			field.onkeyup=onEvent_formatNumber;
			field.onblur=onEvent_formatNumber;
			field.onblur();
		}
	}
}

function removeFormat(fields)
{
	var thousandSeparator='.';
	var key,field;

	if (fields.length<1)
	{
		return true;
	}
	for (key=0;key<fields.length;key++)
	{
		field=document.getElementById(fields[key]);
		field.value=field.value.replace(new RegExp('[\\'+thousandSeparator+']*',"g"),'');
	}
}

function setInnerHTML(obj,innerHTML)
{
	if (typeof(obj)!='object')
	{
		obj=document.getElementById(obj);
	}

	if (isIE || isIE7)	// IE bugfix
	{
		var objId=obj.id;
		var objIdFix=false;

		if (objId=='')
		{
			objId='_sSIHTMLFix';
			obj.id=objId;
			objIdFix=true;
		}

		obj.innerHTML='';
		var outerHTML=obj.outerHTML.substr(0,obj.outerHTML.length-(obj.tagName.length+3))+innerHTML+'<'+'/'+obj.tagName+'>';
		obj.outerHTML=outerHTML;

		obj=document.getElementById(objId);

		if (objIdFix)
		{
			obj.id='';
		}
	}
	else
	{
		obj.innerHTML=innerHTML;
	}

	return obj;
}

function setSelectInnerHTML(obj,innerHTML)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	obj.innerHTML=innerHTML;

	if (isIE7)	// IE 7 bugfix
	{
		obj.outerHTML=obj.outerHTML;
	}
}

function initTRHover()
{
	if (isIE)
	{
		var rows=document.getElementsByTagName('tr');
		var i;
		var rowType;

		for (i=0;i<rows.length;i++)
		{
			if (rows[i].className.substr(0,3)=='Odd')
			{
				rows[i].onmouseover=function() { this.className+=' OddHover'; }
				rows[i].onmouseout=function() { this.className=this.className.replace(' OddHover',''); }
			}
			else
			{
				if (rows[i].className.substr(0,4)=='Even')
				{
					rows[i].onmouseover=function() { this.className+=' EvenHover'; }
					rows[i].onmouseout=function() { this.className=this.className.replace(' EvenHover',''); }
				}
			}
		}
	}
}

function delayedEnable(obj,delay,disabledClass,enabledClass)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	var oldDelayText=' ['+delay+']';
	var originalLength=obj.textContent.length-oldDelayText.length;

	delay--;

	if (delay>0)
	{
		obj.textContent=obj.textContent.substr(0,originalLength)+' ['+delay+']';
		setTimeout('delayedEnable("'+obj.id+'",'+delay+',"'+disabledClass+'","'+enabledClass+'")',1000);
	}
	else
	{
		obj.textContent=obj.textContent.substr(0,originalLength);
		originalLength=obj.className.length-(disabledClass.length+1);
		obj.className=obj.className.substr(0,originalLength)+(enabledClass!=''?' '+enabledClass:'');
		obj.disabled=false;
	}
}

function initDelayedEnable(obj,delay,disabledClass,enabledClass)
{
	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	obj.disabled=true;
	obj.className=obj.className+' '+disabledClass;
	obj.textContent=obj.textContent+' ['+delay+']'
	setTimeout('delayedEnable("'+obj.id+'",'+delay+',"'+disabledClass+'","'+enabledClass+'")',1000);
}

function classExist(obj,_className)
{
	var i
	var classList;

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	classList=obj.className.split(" ");

	for (i=0;i<classList.length;i++)
	{
		if (classList[i]==_className)
		{
			return true;
		}
	}

	return false;
}

function removeClass(obj,_className)
{
	var i;
	var newClassList;
	var currentClassList;

	if (obj.className==null)
	{
		return;
	}

	newClassList=new Array();
	currentClassList=obj.className.split(" ");

	for (i=0;i<currentClassList.length;i++)
	{
		if (currentClassList[i]!=_className)
		{
			newClassList.push(currentClassList[i]);
		}
	}
	obj.className=newClassList.join(" ");
}

function Ajax()
{
	this.xmlHttp=null;
	this.url='';				// Küldés helye
	this.params='';				// Küldendő paraméterek
	this.mode='POST';			// Adatküldés módja POST / GET
	this.charset='UTF-8';		// Átadott adat karakterkódolása
	this.lastError=false;		// Utolsó hiba
	this.processResult=true;	// Legyen e a válasz feldolgozva

	this.create=function ()
	{
		try
		{
			if (window.XMLHttpRequest)	// Mozzila
			{
				this.xmlHttp=new XMLHttpRequest();

				if (this.xmlHttp.readyState==null)	// Bizonyos Mozzila verzióknál nincs readyState tulajdonság ezért bevezetünk ekkor.
				{
					this.xmlHttp.readyState=1;
					this.xmlHttp.addEventListener("load",function ()
						{
							this.xmlHttp.readyState=4;
							if (typeof(this.xmlHttp.onreadystatechange)=="function")
							{
								this.xmlHttp.onreadystatechange();
							}
						},false);
				}
				return true;
			}

			if (window.ActiveXObject)	// IE
			{
				var prefix=false;

				if (typeof(getXmlHttpPrefix)!='undefined' && getXmlHttpPrefix.prefix)
				{
					prefix=getXmlHttpPrefix.prefix;
				}

				var prefixes=["MSXML2","Microsoft","MSXML","MSXML3"];
				var o;

				for (var i=0;i<prefixes.length;i++)
					{
						try
						{
							o=new ActiveXObject(prefixes[i]+".XmlHttp");	// XML HTTP objektum példányosítása
							prefix=prefixes[i];
						}
						catch (ex) {};

						if (prefix!=false)
						{
							break;
						}
					}

				if (prefix==false)
				{
					this.lastError="Could not find an installed XML parser";
					throw new Error(this.lastError);
					return false;
				}

				this.xmlHttp=new ActiveXObject(prefix+".XmlHttp");
				return true;
			}
		}
		catch (ex) {}
		return false;		// A böngésző nem támogatja az XML HTTP Request-et
	};

	this.query=function (url,params)
	{
		this.url=url;
		this.params=params;
		var response;

		if (this.xmlHttp==null)
		{
			if (!this.create())
			{
				response={'error':true,'result':"Sajnálom, de az Ön böngészője nem támogatja az XML HTTP Request-et, ezért az oldal valószínűleg nem fog teljes funkcionalitással működni! Kérem szerezzen be egy modernebb böngészőprogramot, erre a célra a www.getfirefox.com -ot tudom Önnek ajánlani.",'command':'xmlHttp.create'};
			}
		}

		if (typeof(this.params)=='array' || typeof(this.params)=='object')
		{
			var _urlData=processUrl(this.url);
			url=_urlData['url'];
			params=arrayToQueryParams(arrayMerge(params,_urlData['params']));
		}

		if (this.mode.toUpperCase()=='GET')
		{
			try
			{
				this.xmlHttp.open(this.mode,url+'?'+params,false);
			}
			catch (ex)
			{
				this.lastError=ex;
				response={'error':true,'result':'Hiba történt a komunikáció kiépítése közben!','command':''};
				return response;
			};

			params=null;
		}
		else
		{
			try
			{
				this.xmlHttp.open(this.mode,this.url,false);
			}
			catch (ex)
			{
				this.lastError=ex;
				response={'error':true,'result':'Hiba történt a komunikáció kiépítése közben!','command':''};
				return response;
			};

//this.xmlHttp.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
			this.xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset='+this.charset);
		}

		try
		{
			this.xmlHttp.send(params);
		}
		catch (ex)
		{
			this.lastError=ex;
			response={'error':true,'result':'Hiba történt a kérés küldése közben!','command':''};
			return response;
		};

		if (this.processResult)
		{
			try
			{
				response=eval('('+this.xmlHttp.responseText+')')
			}
			catch (ex)
			{
				this.lastError=ex;
				response={'error':true,'result':'Hiba történt a válasz feldolgozása közben!','command':''};
			}
			return response;
		}
		else
		{
			return this.xmlHttp.responseText;
		}
	};
}

var maskCounter=-1;

function addMask(rootObj)
{
	var iframe;
	var div=document.createElement("div");

	maskCounter++;

	if (isIE)
	{
		iframe=document.createElement("iframe");
		iframe.id='mask'+maskCounter+'IFrame';
		iframe.style.zIndex=100+(maskCounter*3);
		iframe.className='MaskIFrame';
		iframe.style.filter='alpha(opacity=0)';
		iframe.style.visibility='hidden';
/*
		iframe.allowTransparency=true;
		iframe.setAttribute('src','about:blank');
		iframe.src="about:blank";
//		iframe.contentWindow.document.body.style.backgroundColor='transparent';
*/
	}

	div.id='mask'+maskCounter+'Div';
	div.style.zIndex=100+(maskCounter*3)+1;
	div.className='MaskDiv';
	div.style.visibility='hidden';
	if (isIE)
	{
		div.style.filter='alpha(opacity=50)';
	}
	else
	{
		div.style.opacity=0.5;
	}

	switch (maskCounter%3)
	{
		case 0:
			div.style.backgroundColor='rgb('+(maskCounter*10)+',0,0)';
			break;
		case 1:
			div.style.backgroundColor='rgb(0,'+(maskCounter*10)+',0)';
			break;
		case 2:
			div.style.backgroundColor='rgb(0,0,'+(maskCounter*10)+')';
			break;
	}

	var pageInfo=getPageInfo();
	var scrollCorrection=(isIE?0:getScrollbarWidth()*-1);

	div.style.width=pageInfo.pageWidth+(pageInfo.scrollbarY?scrollCorrection:0)+'px';
	div.style.height=pageInfo.pageHeight+(pageInfo.scrollbarX?scrollCorrection:0)+'px';

	if (typeof(rootObj)=='undefined')
	{
		if (isIE)
		{
			document.body.appendChild(iframe);
		}
		document.body.appendChild(div);
	}
	else
	{
		if (typeof(rootObj)!='object')
		{
			rootObj=document.getElementById(rootObj);
		}

		if (isIE)
		{
			rootObj.parentNode.insertBefore(iframe,rootObj);
		}
		rootObj.style.zIndex=100+(maskCounter*3)+2;
		rootObj.parentNode.insertBefore(div,rootObj);
	}

// IE opacity rendering bug fix, különben egy pillanatra nem átlátszó a div
	div.style.visibility='visible';
	if (isIE)
	{
		iframe.style.visibility='visible';
	}

	if (maskCounter==0)
	{
		attachToEvent(window,'resize',resizeMask);
	}

	return true;
}

function resizeMask()
{
	var pageInfo=getPageInfo();
	var scrollCorrection=(isIE?0:getScrollbarWidth()*-1);
	var maskDiv;
	var maskIndex;

	for (maskIndex=0;maskIndex<=maskCounter;maskIndex++)
	{
		maskDiv=document.getElementById('mask'+maskCounter+'Div');
		maskDiv.style.width=pageInfo.pageWidth+(pageInfo.scrollbarY?scrollCorrection:0)+'px';
		maskDiv.style.height=pageInfo.pageHeight+(pageInfo.scrollbarX?scrollCorrection:0)+'px';
	}

	return true;
}

function removeMask()
{
	if (maskCounter<0)
	{
		return false;
	}

	var maskDiv=document.getElementById('mask'+maskCounter+'Div');

	if (isIE)
	{
		var maskIFrame=document.getElementById('mask'+maskCounter+'IFrame');
		maskIFrame.parentNode.removeChild(maskIFrame);
	}

	maskDiv.parentNode.removeChild(maskDiv);
	maskCounter--;

	if (maskCounter==-1)
	{
		deattachEvent(window,'resize',resizeMask);
	}
	return true;
}

var msgBoxCounter=0;

function msgBox(_message,_titleText,_buttons,_boxClass,_focusAfterClose)
{
	_titleText=(typeof(_titleText)=='undefined'?'':_titleText);
	_boxClass=(typeof(_boxClass)=='undefined'?'':' '+_boxClass);
	_focusAfterClose=(typeof(_focusAfterClose)=='undefined'?false:_focusAfterClose);

	msgBoxCounter++;
	var PPE_msgBox=document.createElement("div");
	PPE_msgBox.style.position='fixed';
	PPE_msgBox.style.top=0;
	PPE_msgBox.style.left=0;
	PPE_msgBox.style.width='auto';
	PPE_msgBox.id='msgBox'+msgBoxCounter
	PPE_msgBox.className='MsgBox'+_boxClass;

	var _title=document.createElement("p");
	_title.className='Title';
	_title.appendChild(document.createTextNode(_titleText));

	var _content=document.createElement("div");
	_content.className='Content';

	var _text=document.createElement("p");
	_text.innerHTML=_message;

	var _buttonContanier=document.createElement("div");
	_buttonContanier.className='Buttons';

	if (typeof(_buttons)=='undefined' || _buttons==false)
	{
		_buttons={'OK':{ 'caption':'OK', 'callBack':'' }};
	}

	PPE_msgBox.appendChild(_title);
	_content.appendChild(_text);
	PPE_msgBox.appendChild(_content);

	foreach(_buttons,
		function(buttonConfig,index)
		{
			var button=document.createElement("button");
			button.setAttribute('type','button');
			button.id='msgBox'+msgBoxCounter+index;
			button.msgBoxId=PPE_msgBox.id;
			button._focusAfterClose=_focusAfterClose;
			button.callBack=(typeof(buttonConfig.callBack)!='undefined' && buttonConfig.callBack!=null?buttonConfig.callBack: function () {});
			button.onclick=function () { closeMsgBox(this.msgBoxId,this.callBack); if (this._focusAfterClose!=false) { $(this._focusAfterClose).focus(); } };

/*
			if (typeof(buttonConfig.callBack)!='undefined' && buttonConfig.callBack!=null)
			{
				eval('button.onclick=function () { closeMsgBox("'+PPE_msgBox.id+'","'+buttonConfig.callBack+'"); };');
			}
			else
			{
				button.onclick=closeMsgBox;
			}
*/

			button.appendChild(document.createTextNode(buttonConfig.caption));

			_buttonContanier.appendChild(button);
		}
	);

	PPE_msgBox.appendChild(_buttonContanier);

	document.body.appendChild(PPE_msgBox);
	$(PPE_msgBox.id).childNodes[2].firstChild.focus();

	var pageInfo=getPageInfo();
	var middleX=Math.floor(pageInfo.viewportWidth/2)-Math.ceil(PPE_msgBox.offsetWidth/2);
	var middleY=Math.floor(pageInfo.viewportHeight/2)-Math.ceil(PPE_msgBox.offsetHeight/2);

	PPE_msgBox.style.zIndex=100+(maskCounter*3)+2;
	PPE_msgBox.style.left=middleX+'px';
	PPE_msgBox.style.top=middleY+'px';
	addMask(PPE_msgBox);

	PPE_msgBox.Animate=new Animate({
									'targetId':PPE_msgBox.id,
									'step':15,
									'delay':40,
									'commands':{
												'fade':{
															start:0,
															stop:getOpacity(PPE_msgBox)
														}
/*
												,'morph':{
															startWidth:0,
															startHeight:0,
															stopWidth:parseInt(getStyleAttributeValue(PPE_msgBox,'width',true)),
															stopHeight:parseInt(getStyleAttributeValue(PPE_msgBox,'height',true))
														}
*/
												,'move':{
															startX:Math.floor(pageInfo.viewportWidth/2)-Math.ceil(PPE_msgBox.offsetWidth/2),
															startY:0,
															stopX:Math.floor(pageInfo.viewportWidth/2)-Math.ceil(PPE_msgBox.offsetWidth/2),
															stopY:Math.floor(pageInfo.viewportHeight/3)-Math.ceil(PPE_msgBox.offsetHeight/2)
														}
											}
								});
}

function closeMsgBox(_id,_callBackCommand)
{
	_id=(typeof(_id)=='undefined'?'msgBox'+msgBoxCounter:_id);

	var PPE_msgBox=$(_id);
	PPE_msgBox.parentNode.removeChild(PPE_msgBox);

	removeMask();

	if (typeof(_callBackCommand)!='undefined')
	{
		if (typeof(_callBackCommand)=='function')
		{
			_callBackCommand();
		}
		else
		{
			eval(_callBackCommand);
		}
	}
}

function escapeString(value)
{
	var m={
			'\b':'\\b',
			'\t':'\\t',
			'\n':'\\n',
			'\f':'\\f',
			'\r':'\\r',
			'"':'\\"',
			'\\':'\\\\'
		};

	if (/["\\\x00-\x1f]/.test(value))
	{
		value.replace(/[\x00-\x1f\\"]/g,function (a)
					{
						var c=m[a];
						if (c)
						{
							return c;
						}
						c=a.charCodeAt();
						return '\\u00'+Math.floor(c/16).toString(16)+(c%16).toString(16);
					})
	}
	return value;
}

function convertToJSON(value)
{
	var index;
	var length;

	switch (typeof(value))
	{
		case 'string':
		return '"'+escapeString(value)+'"';

	case 'number':
		return isFinite(value)?String(value):'null';

	case 'boolean':
		return String(value);

	case 'null':
		return 'null';

	case 'object':
		if (!value)
		{
			return 'null';
		}

		var a=[];
		var newValue;

		if (typeof(value.length)==='number' && !(value.propertyIsEnumerable('length')))
		{
			length=value.length;
			for (index=0;index<length;index++)
			{
				a.push(convertToJSON(value[index]) || 'null');
			}
			return '['+a.join(',')+']';
		}

		for (index in value)
		{
			if (typeof(index==='string'))
			{
				newValue=convertToJSON(value[index]);
				if (newValue)
				{
					a.push(convertToJSON(index)+':'+newValue);
				}
			}
		}

		return '{'+a.join(',')+'}';
	}
}

function arrayToQueryParams(_array)
{
	var a=[];
	var index;
	var value;

	for (index in _array)
	{
		if (typeof(index==='string'))
		{
			value=_array[index];
			switch (typeof(value))
			{
				case 'string':
				a.push(index+'='+escapeString(value));
				break;
			case 'number':
				a.push(index+'='+(isFinite(value)?String(value):'null'));
				break;
			case 'boolean':
				a.push(index+'='+String(value));
				break;
			case 'null':
				a.push(index+'=null');
				break;
			case 'object':
				break;
			}
		}
	}
		return a.join('&');
}


function getUrlParam(paramName,_url)
{
	paramName=paramName.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
	_url=(typeof(_titleText)=='undefined'?window.location.href:_url);

	var regexS="[\\?&]"+paramName+"=([^&#]*)";
	var regex=new RegExp(regexS);
	var results=regex.exec(_url);

	if(results==null)
	{
		return "";
	}
	else
	{
		return results[1];
	}
}


function processUrl(_url)
{
	var result=new Array();
	var variables;
	var i;
	var pieces;

	pieces=_url.split("?");

	result['url']=pieces[0];
	result['params']=new Array();

	if (typeof(pieces[1])!='undefined')
	{
		pieces[1]=pieces[1].replace(/&amp;/, "&");
		pieces[1]=pieces[1].replace(/.*\?(.*?)/,"$1");
		variables=pieces[1].split("&");

		for (i=0; i<variables.length; i++)
		{
			pieces=variables[i].split("=");
			result['params'][pieces[0]]=pieces[1];
		}
	}

	return result;
}


function arrayMerge(arr1,arr2)
{
	if ((arr1 && (arr1 instanceof Array)) && (arr2 && (arr2 instanceof Array)))
	{
		for (var idx in arr2)
		{
			arr1.push(arr2[idx]);
		}
	}
	else if ((arr1 && (arr1 instanceof Object)) && (arr2 && (arr2 instanceof Object)))
	{
		for(var idx in arr2)
		{
			if(idx in arr1)
			{
				if (typeof arr1[idx]=='object' && typeof arr2=='object')
				{
					arr1[idx]=array_merge(arr1[idx],arr2[idx]);
				}
				else
				{
					arr1[idx]=arr2[idx];
				}
			}
			else
			{
				arr1[idx]=arr2[idx];
			}
		}
	}
	return arr1;
}


function count(obj)
{
	if (obj.__count__=='undefined')
	{
		obj.__count__=function() {
									var count=0;
									for (var k in obj)
									{
										if (obj.hasOwnProperty(k))
										{
											count++;
										}
									}
									return count;
								}
	}

	return obj.__count__;
}


function setCookie(name,value,expires,path,domain,secure)
{
	expires=(typeof(expires)=='undefined' || !(expires)?'':'; expires='+expires.toGMTString());
	path=(typeof(path)=='undefined' || !(path)?'':'; path='+path);
	domain=(typeof(domain)=='undefined' || !(path)?'':'; domain='+domain);
	secure=(typeof(secure)=='undefined' || !(secure)?'':'; secure');

	if (expires==0)
	{
		var thisDate=new Date();
		thisDate.setYear(2030);
		expires=thisDate;
	}
	document.cookie=name+"="+escape(value)+expires+path+domain+secure;
}

function getCookie(name)
{
	var dc=document.cookie;
	var prefix=name+"=";
	var begin=dc.indexOf("; "+prefix);
	if (begin==-1)
	{
		begin=dc.indexOf(prefix);
		if (begin!=0) return null;
	}
	else
	{
		begin += 2;
	}

	var end=document.cookie.indexOf(";",begin);

	if (end==-1)
	{
		end=dc.length;
	}
	return unescape(dc.substring(begin+prefix.length,end));
}

function deleteCookie(name,path,domain)
{
	if (getCookie(name))
	{
		document.cookie=name+"="+((path) ? "; path="+path : "")+((domain) ? "; domain="+domain : "")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
}

var PPE_timeoutCheck=null;
var PPE_keepAlive=null;

function PPE_setTimeoutCheck()
{
	if (typeof(PPE_timeoutCheck==null))
	{
		PPE_timeoutCheck=setTimeout('PPE_timeout()',PPE_timeoutCheckLength);
	}
}

function PPE_resetTimeoutCheck()
{
	if (typeof(PPE_timeoutCheck!=null))
	{
		clearTimeout(PPE_timeoutCheck);
	}
	PPE_timeoutCheck=setTimeout('PPE_timeout()',PPE_timeoutCheckLength);
}

function PPE_timeout()
{
	var _contentArea=$('contentArea');

	if (typeof(_contentArea)!='undefined' && _contentArea!=null)
	{
		$('contentArea').innerHTML='&nbsp;';
	}

	alert('Sajnálom de lejárt a biztonsági időkorlát!');
	document.location=(typeof(PPE_timeoutStartPage)!='undefined'?PPE_timeoutStartPage:'/');
}

function PPE_setKeepAlive()
{
	if (PPE_keepAlive==null)
	{
		PPE_keepAlive=setTimeout('PPE_keepAliveRefresh()',PPE_keepAliveLength);
	}
}

function PPE_keepAliveRefresh()
{
	var params='command=refreshPage';
	var ajax=new Ajax();

	var result=ajax.query(PPE_keepAlivePage,params);
	if (result['error']==true)
	{
		PPE_timeout();
		return false;
	}

	PPE_keepAlive=null
	PPE_setKeepAlive();
	PPE_resetTimeoutCheck();
	return true;
}

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

function fixPNGImage(obj)
{
/*@cc_on
/*@if (@_jscript_version <= 5.6)

	if (typeof(obj)!='object')
	{
		obj=$(obj);
	}

	if (obj==null)
	{
		return;
	}

	var src;

	if (obj.tagName=='IMG')
	{
		src = obj.src;
		obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='scale')"
		obj.style.width = obj.width + "px";
		obj.style.height = obj.height + "px";
		obj.src = "/engine_dc/spacer.gif";
	}
	else
	{
		if (obj.currentStyle.backgroundImage!='' && obj.currentStyle.backgroundImage.match(/url[("']+(.*\.png[^\)"']*)[\)"']/i))
		{
			src = obj.currentStyle.backgroundImage.match(/url[("']+(.*\.png[^\)"']*)[\)"']/i);
			var sizingMethod=(obj.currentStyle.backgroundRepeat=='no-repeat'?'crop':'scale');
			obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src[1] + "', sizingMethod='"+sizingMethod+"')";
			obj.style.backgroundImage = 'none';
alert(obj.style.filter);
		}
		else
		{
			return;
		}
	}


/*@end
@*/
}

function pngfix()
{
	var els=document.getElementsByTagName('*');
	var ip=/\.png/i;
	var i=els.length;

	while(i-- >0)
	{
		var el=els[i];
		var es=el.style;

		if(el.src&&el.src.match(ip)&&!es.filter)
		{
			es.height=el.height;
			es.width=el.width;
			es.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+el.src+"',sizingMethod='crop')";
			el.src=clear;
		}
		else
		{
			var elb=el.currentStyle.backgroundImage;

			if(elb.match(ip))
			{
				var path=elb.split('"');
				var rep=(el.currentStyle.backgroundRepeat=='no-repeat')?'crop':'scale';
				es.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+path[1]+"',sizingMethod='"+rep+"')";
				es.height=el.clientHeight+'px';
				es.backgroundImage='none';
				var elkids=el.getElementsByTagName('*');

				if (elkids)
				{
					var j=elkids.length;

					if(el.currentStyle.position!="absolute")
					{
						es.position='static';
					}

					while (j-- >0)
					{
						if(!elkids[j].style.position)
						{
							elkids[j].style.position="relative";
						}
					}
				}
			}
		}
	}
}