var onLoadMethods=new Array(imageProjector);
//randomHeaderImages

function onResizer() {
	if (onLoadMethods) {
		for(var i=0;i<onLoadMethods.length;i++) {
			var func = onLoadMethods[i];
			func();
		}
	}
}
function onLoader() {
	onResizer();
}

var random_header_pictures=new Array();
var random_header_picture_index=0;
function randomHeaderImages() {
	clearTimeout(window.random_header_pictures_timeout);
	if (random_header_pictures.length) {
		if (!window.random_header_pictures_preloaded)preloadImages(random_header_pictures);
		else {
			var obj=getObjfromIdorObj('random-header-row');
			obj.className=random_header_pictures[random_header_picture_index];
			if (random_header_picture_index<random_header_pictures.length-1)random_header_picture_index++;
			else random_header_picture_index=0;
		}
	}
	window.random_header_pictures_timeout=setTimeout("randomHeaderImages()",5000);
}

function preloadImages(images) {
	var doc=document;
	if (!doc.preloadedImages) doc.preloadedImages=new Array();
	for (var i=0;i<images.length;i++) {
		doc.preloadedImages[i]=new Image;
		doc.preloadedImages[i].src="design/images/fejlec/fejlec_02_02_"+images[i].replace(/headerstyle\-/g,"")+".jpg";
	}
	window.random_header_pictures_preloaded=true;
}

function reAlignMapObjects() {
	var outer=getObjfromIdorObj("terkep");
	var inner=getObjfromIdorObj("map");
	var difference=new Object();
	if (outer && inner) {
		var pos=getAnchorPosition({tagid:'terkep'});
		
		//left állítása
		pos.x+=50;//balmargó miatt ez kellhet
		difference.x=inner.offsetLeft-pos.x;
		inner.style.left=parseInt(pos.x)+"px";
		inner.left=parseInt(pos.x)+"px";
		

		//top állítása
		pos.y+=130;//topmargó miatt ez kellhet
		difference.y=inner.offsetTop-pos.y;
		inner.style.top=parseInt(pos.y)+"px";
		inner.top=parseInt(pos.y)+"px";
		showObj(inner);

		var objects=outer.getElementsByTagName('div');
		for (var i=0;i<objects.length;i++) {
			if (objects[i]!=inner) {
/**/
				//left
 				objects[i].style.left=parseInt(objects[i].offsetLeft-difference.x)+"px";
				objects[i].left=parseInt(objects[i].offsetLeft-difference.x)+"px";
				objects[i].style.marginLeft="0px";
				//top
				objects[i].style.top=parseInt(objects[i].offsetTop-difference.y)+"px";
				objects[i].top=parseInt(objects[i].offsetTop-difference.y)+"px";
				objects[i].style.marginTop="0px";
				showObj(objects[i]);
/**/
			}
		}
	}
}

function showMapOverlib(obj) {	
    var obj=getObjfromIdorObj(obj);
	overlib(getMapObjectHTML(obj.id), BGCLASS, 'overdiv-bg', FGCLASS, 'overdiv-text', FIXX, getMapObjectLeft(obj), FIXY, getMapObjectTop(obj));
}

function getMapObjectHTML(obj) {
    var obj=getObjfromIdorObj(obj);
	if (obj && obj.id){
		var html=getInnerHTML(obj.id+"content");
		if (!html)return "";
		html=html.replace(/[\r\n]/g,"");
		return html;
	}
}
function getMapObjectTop(obj) {
    var obj=getObjfromIdorObj(obj);
    if (obj)return obj.offsetTop;
     
}
function getMapObjectLeft(obj) {
    var obj=getObjfromIdorObj(obj);
    if (obj)return obj.offsetLeft+obj.offsetWidth; 
}



function bakonyCalendarIncDay() {
	var fromdate=getValue('fromdate');
	var fromdateArray=fromdate.match(/^([\d]{2,4})\-([\d]{1,2})\-([\d]{1,2})/);
	var date=new Date(fromdateArray[1],fromdateArray[2]-1,fromdateArray[3]);
	
	if (date) {
		date.setTime( date.getTime()+24*60*60*1000 );
		refreshEventCalendar('fromdate='+getDateString(date));
	}
}
function bakonyCalendarDecDay() {
	var fromdate=getValue('fromdate');
	var fromdateArray=fromdate.match(/^([\d]{2,4})\-([\d]{1,2})\-([\d]{1,2})/);
	var date=new Date(fromdateArray[1],fromdateArray[2]-1,fromdateArray[3]);
	
	if (date) {
		date.setTime( date.getTime()-24*60*60*1000 );
		refreshEventCalendar('fromdate='+getDateString(date));
	}
}
function bakonyCalendarSetDay(calendar, date) {
	if (!date || !calendar) return false;
	 if (calendar && calendar.dateClicked) {
	    calendar.callCloseHandler(); // this calls "onClose" (see above)
	  }

	var fromdateArray=date.match(/^([\d]{2,4})\-([\d]{1,2})\-([\d]{1,2})/);
	var date=new Date(fromdateArray[1],fromdateArray[2]-1,fromdateArray[3]);

   	refreshEventCalendar("fromdate="+getDateString(date));
}
function refreshEventCalendar(PostData) {
 	PostData="action=refreshCalendar&"+PostData;

	var opts = {
		method: 'post',
		postBody:PostData,
		onSuccess: function(t) {
		},
		on404: function(t) {
			alert('Error ' + t.status + ' -- ' + t.statusText);
		},
		onFailure: function(t) {
			alert('Error ' + t.status + ' -- ' + t.statusText);
		}
	}
	new Ajax.Updater('calendar-rows', _site_url+'ajax.php', opts);
	return false;
} 

function MyCalendarSetup() {
	if (getObjfromIdorObj('calendar_button_date')) {
	Calendar.setup({
		inputField     :    "calendar_button_date",   // id of the input field
		ifFormat       :    "%Y-%m-%d %H:%M",       // format of the input field
		showsTime      :    false,
		timeFormat     :    "24",
		onSelect       :    bakonyCalendarSetDay
	});
	}
}


function swapImage(id,src) {
    var x=getObjfromIdorObj(id);
    if (x && x.src && x.src!=src) {
//        document.swapImage_src=x;
        if(!x.oSrc)x.oSrc=x.src;
        if(getBrowserType()=="ie")IExploreTimeHack("getObjfromIdorObj('"+x.id+"').src='"+src+"'");
        else x.src=src;
    }
}
function swapOverImage(id) {
    var obj=getObjfromIdorObj(id);
    var newsrc=obj.src.replace(/_over(\.gif|\.jpg)$/i,'$1');
    var newsrc=newsrc.replace(/(\.gif|\.jpg)$/i,'_over$1');
    swapImage(obj, newsrc);
}
function swapOutImage(id) {
    var obj=getObjfromIdorObj(id);
    var newsrc=obj.src.replace(/_over(\.gif|\.jpg)$/i,'$1');
    swapImage(obj, newsrc);
}
function IExploreTimeHack(evalstr)
{
    setTimeout(evalstr,1);
	return true;
}


/*decalshop main*/
function getNextProjectedImage(key) {
	var images=projectorArray[key];
	if (typeof lastProjectedIds[key]=="undefined")lastProjectedIds[key]=-1;
	lastProjectedIds[key]++;
	if (lastProjectedIds[key]>=images.length)lastProjectedIds[key]=0;
	return images[lastProjectedIds[key]]; 
}
function getNextProjectedText(key) {
	var images=projectorTextArray[key];
	if (typeof lastProjectedIds[key]=="undefined")lastProjectedIds[key]=-1;
	lastProjectedIds[key]++;
	if (lastProjectedIds[key]>=images.length)lastProjectedIds[key]=0;
	return images[lastProjectedIds[key]]; 
}
function getPrevProjectedImage(key) {
	var images=projectorArray[key];
	if (typeof lastProjectedIds[key]=="undefined")lastProjectedIds[key]=-1;
	lastProjectedIds[key]--;
	if (lastProjectedIds[key]<0)lastProjectedIds[key]=images.length-1;
	return images[lastProjectedIds[key]]; 
}
function getPrevProjectedText(key) {
	var images=projectorTextArray[key];
	if (typeof lastProjectedIds[key]=="undefined")lastProjectedIds[key]=-1;
	lastProjectedIds[key]--;
	if (lastProjectedIds[key]<0)lastProjectedIds[key]=images.length-1;
	return images[lastProjectedIds[key]]; 
}

function setNextProjectedImage(key,key2){
	stopImageProjector();
	swapImage(key,getNextProjectedImage(key));
	if (typeof key2!="undefined")swapImage(key2,getNextProjectedImage(key2));
	for (var key2 in projectorTextArray) {
		if (typeof key2=="string" && key2.match(key)) {
			setInnerHTML(key2,getNextProjectedText(key2));
		}
	}
	restartImageProjector();
}

function setPrevProjectedImage(key,key2){
	stopImageProjector();
	swapImage(key,getPrevProjectedImage(key));
	if (typeof key2!="undefined")swapImage(key2,getNextProjectedImage(key2));
	for (var key2 in projectorTextArray) {
		if (typeof key2=="string") {
			setInnerHTML(key2,getNextProjectedText(key2));
		}
	}
	restartImageProjector();
}
function setProjectedImage(key,id){
	swapImage(key,projectorArray[key][id]);
}
function setProjectedText(key,id){
	setInnerHTML(key,projectorTextArray[key][id]);
}

var projectorArray=new Array();
var projectorLinkArray=new Array();
var projectorTextArray=new Array();
var lastProjectedIds=new Array();
var projectingImages=1;
function imageProjector() {
	if (!projectingImages)return false;
	clearTimeout(window.imageProjector_timeout);
	fadeOutImageProjector();
//	
/*	for (var key in projectorArray) {
		if (typeof key=="string") {
			var image=getNextProjectedImage(key);
			swapImage(key,image);
		}
	}*/
}
function stopImageProjector() {
	projectingImages=0;
	for (var key in projectorArray) {
		if (typeof key=="string") {
			chageopacity(key,99);
			opacity=100;
		}
	}
	clearTimeout(window.fadeImage_timeout);
	clearTimeout(window.imageProjector_timeout);
}

var opacity=100;
function fadeOutImageProjector() {
	clearTimeout(window.fadeImage_timeout);
	opacity-=5;
	for (var key in projectorArray) {
		if (typeof key=="string"  && !key.match(/_tiltprojector_/)) {
			chageopacity(key,opacity);
			//if (opacity==0)swapImage(key,image);
		}
	}
	if (opacity==0) {
		//change titles
		for (var key in projectorArray) {
			if (typeof key=="string" && !key.match(/_tiltprojector_/)) {
				var image=getNextProjectedImage(key);
				swapImage(key,image);
			}
		}
		for (var key2 in projectorTextArray) {
			if (typeof key2=="string" && !key2.match(/_tiltprojector_/)) {
				setInnerHTML(key2,getNextProjectedText(key2));
			}
		}
		fadeInImageProjector();
	} else {
    	window.fadeImage_timeout=setTimeout('fadeOutImageProjector()',50);
    }
}

function fadeInImageProjector() {
	clearTimeout(window.fadeImage_timeout);
	opacity+=5;
	for (var key in projectorArray) {
		if (typeof key=="string" && !key.match(/_tiltprojector_/)) {
			chageopacity(key,opacity);
			//if (opacity==0)swapImage(key,image);
		}
	}
	if (opacity==100) {
		restartImageProjector();
	} else {
    	window.fadeImage_timeout=setTimeout('fadeInImageProjector()',50);
	}
}



function chageopacity(obj,opacity){
	obj=getObjfromIdorObj(obj);
	if (!obj)return false;
	if (opacity>=100)opacity=99;
	var ie = (document.all) ? 1 : 0;
	if (ie)obj.style.filter='Alpha(Opacity='+opacity+')';
	else obj.style["MozOpacity"] = opacity/100;
}


function restartImageProjector() {
	projectingImages=1;
	window.imageProjector_timeout=setTimeout("imageProjector()",1500);
	closeObj('product-preview-list');
}

function zoomCurrentProjectedImage(key,key2) {
    var defkey=lastProjectedIds[key2];
    if (typeof defkey=="undefined")defkey=0;
	setHref(key,projectorLinkArray[key][defkey]);
/*	if (getObjFromIdOrObj(key) && getObjFromIdOrObj(key).className=="lightwindow") {
		return true;
	} else {
		location.href=projectorLinkArray[key][defkey];
		return false;
	} 
*/
}

var LangTitles=new Array();
function getLangTitle(title) {
	return LangTitles[title]?LangTitles[title]:title;
}
T=getLangTitle;




var showProductObjects=new Array();
function closeAllProductObjects() {
	var len=showProductObjects.length;
	for (var i=0;i<len;i++) {
		closeObj(showProductObjects[i]);
	}
}
function showProductDetails(id) {
	closeAllProductObjects();
	showProductObjects=new Array(id);
	showObj(id);
}

/*notown*/
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src;x.src=a[i+2];}
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'':(v='hide')?'none':v; }
    obj.display=v; }
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}

