﻿var curPic = 0;
var isIE =navigator.userAgent.toLowerCase().indexOf("msie") != -1;
var IE6 = false /*@cc_on || @_jscript_version < 5.7 @*/;
var doc;
var doc7;
window.onload=function()
{
	windowLoaded();
	doc = isIE?document.body:document.documentElement;
	doc7 = IE6?document.body:document.documentElement;
}

var headerSlideDisabled = false;
function nextSlide()
{
	if(!headerSlideDisabled)
	{
		
		curPic++;
		if(curPic == arrPics.length)
		curPic = 0;

		var hp = document.getElementById('screen');

		if (isIE) 
			if(hp.filters.item(0))
				hp.filters.item(0).Apply();

		if(isIE)
		{
		  if(IE6)
		  {
			hp.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = "header_pics/" + arrPics[curPic];
			//alert('done ie6');
		  }
		  else
			hp.style.backgroundImage = "url('header_pics/" + arrPics[curPic] + "')";
		}
		else
		{
			hp.style.backgroundImage = "url('header_pics/" + arrPics[curPic] + "')";
		}
		if (isIE)
			if(hp.filters.item(0))
				hp.filters.item(0).Play();
		  
	}
	window.setTimeout(nextSlide, 5000);
};

var interval, perc;
var ns, os, cc;
function animate()
{
	perc=0;
	interval=setInterval("reveal()", 10);
}

function reveal()
{
	perc++;
	//document.getElementById("new_screen").style.height=perc*5+"%";
	os.style.width=100-perc*5+"%";
	ns.style.width=perc*5+"%";
	if(perc == 20)
	{
		clearInterval(interval);
		swapScreens();
	}
}

function swapScreens()
{
	var hp = document.getElementById('screen');
	//var ns = document.getElementById('new_screen');
	
	hp.style.backgroundImage = ns.style.backgroundImage;
	
	hp.removeChild(ns);
	hp.removeChild(os);
}

function windowLoaded()
{
	curPic = Math.ceil(arrPics.length*Math.random()) - 1;
	window.setTimeout(nextSlide, 5000);
}

function addEvent(name, elem, func)
{
	if(window.addEventListener)
	{
		elem.addEventListener(name, func, false);
	}
	else
	{
		elem.attachEvent('on'+name, func);
	}
}

function getOffsetTop(o) {
	var t = o.offsetTop;
	while (document.body && o.offsetParent) {
		o  = o.offsetParent;
		t += o.offsetTop;
	}
	return t;
};

function getOffsetLeft(o) {
	var t = o.offsetLeft;
	while (document.body && o.offsetParent) {
		o  = o.offsetParent;
		t += o.offsetLeft;
	}
	return t;
};

function getOffsetPath(o) {
	var t = o.nodeName + '<-';
	while (o.offsetParent) {
		o  = o.offsetParent;
		t += o.nodeName + '<-';
	}
	return t;
};

function getOffsetPath2(o) {
	var h = o.offsetTop;
	var t = o.offsetTop;
	while (o.offsetParent) {
		o  = o.offsetParent;
		t += '+' + o.offsetTop;
		h += o.offsetTop;
	}
	return t + '=' + h;
};

function thumbClick(div)
{
	var img = document.getElementById(div.id.replace('div', 'img'));
	//alert(src);
	//alert(getOffsetPath2(div));
	showCallback = function(){addDescription();}
	showImage(div, img.src);
	//alert('document.body.clientHeight='+document.body.clientHeight);
	//alert('document.documentElement.clientHeight='+document.documentElement.clientHeight);
	//alert(getOffsetTop(div));
	
	//document.body.style.border="solid 1px blue";
	//document.documentElement.style.border="solid 1px red";
	
}

function showImage(div, bigsrc)
{
	headerSlideDisabled = true;
	var src = div.style.backgroundImage.replace('url(', '').replace(')', '');//.replace("/thumbs", "");
	//alert(src);
	var img = document.createElement("img");
	img.id="display";
	img.style.position='absolute';
	img.src = src;
	//alert(img.src);
	img.style.left = getOffsetLeft(div)+"px";
	img.style.top = getOffsetTop(div)+"px";
	img.style.width = div.offsetWidth+"px";
	img.style.height = div.offsetHeight+"px";
	srcdiv = div;
	
	doc.appendChild(img);
	
	addEvent('click', img, nextImageClick);
	
	loader = new Image();
	loadCallback = function(){animate2();};
	loader.onload=function(){imgLoaded();};

	
	loader.src = bigsrc;//(src.replace("/thumbs", ""));
	
	showOverlay(70);
	
	if(window.opera)
	{
		//alert(src.replace("/thumbs", ""));
		//var str = src.replace("/thumbs", "");
		if(!interval2)
			imgLoaded();//fix(skip) problem with opera onload event
	}

}

function imgLoaded()
{
	disp = document.getElementById("display");
	disp.src = loader.src;
	
	//animate2();
	if(loadCallback)
		loadCallback();
	else
		alert('Load callback not set!');
}

var steps = 10;
var interval2, dw, dh, dl, dt, di;
var disp, loader, srcdiv;
var showCallback, loadCallback;

function animate2()
{
	di=0;
	if(!interval2)
		interval2=setInterval("reveal2()", 10);
}

function reveal2()
{
	//alert(disp.width + "x" + disp.height + "---" + loader.width + "x" + loader.height);

	dw = (loader.width - disp.offsetWidth)/(steps - di);
	dh = (loader.height - disp.offsetHeight)/(steps - di);

	if(disp.offsetWidth < loader.width)
		disp.style.width = (disp.offsetWidth+dw)+"px";
	
	if(disp.offsetHeight < loader.height)
		disp.style.height = (disp.offsetHeight+dh)+"px";

	dl = (disp.offsetLeft - doc7.scrollLeft - (doc7.clientWidth/2 - disp.offsetWidth/2))/(steps - di);
	dt = (disp.offsetTop - doc7.scrollTop - (doc7.clientHeight/2 - disp.offsetHeight/2))/(steps - di);
	
	//alert(disp.offsetTop + '-' + document.documentElement.scrollTop + '-' + document.documentElement.clientHeight/2 + '-' + disp.offsetHeight/2);
		
	disp.style.left = (disp.offsetLeft - dl)+"px";
	disp.style.top = (disp.offsetTop - dt)+"px";
	
	//alert(disp.style.left + ',' + disp.style.top + ',' + disp.style.width + ',' + disp.style.height);
	
	//if((disp.height >= loader.height) && (disp.width >= loader.width))
	di++;
	if(di >= steps)
	{
		//alert('finito!');
		clearInterval(interval2);
		interval2=0;
		
		if(showCallback)
			showCallback();
		//top.document.getElementById('overlay').style.height = document.body.scrollHeight;
		//window.setTimeout("darken(80)", 100);
		
	}
}

function addDescription()
{
	var title = document.createElement('div');
	title.id = 'imageTitle';
	title.style.left = disp.style.left;
	title.style.width = disp.offsetWidth+"px";
	
	var txt = document.createElement('div');
	txt.id = 'imageDesc';
	
	var desc = document.getElementById(srcdiv.id.replace('div', 'dsc'));

	if(isIE)
		txt.innerText = desc.innerText.length?desc.innerText:'[Untitled]';
	else
		txt.textContent = desc.textContent.length?desc.textContent:'[Untitled]';

	title.appendChild(txt);
	
	doc.appendChild(title);
	
	title.style.top = (disp.offsetTop - title.offsetHeight) + "px";
	
	var close = document.createElement('span');
	close.id = "btnClose";
	close.title = "Close";
	addEvent('click', close, closeDisplay);
	txt.style.width = title.offsetWidth - 30 + "px";
	title.appendChild(close);
	
	var btns = document.getElementById('slideshowButtons');
	if(btns)
	{
		btns.style.left = disp.style.left;
		btns.style.top = disp.offsetTop + disp.offsetHeight + "px";
		btns.style.width = disp.offsetWidth+"px";
		btns.style.visibility = 'visible';
	}
}

/*function changeDescription()
{
	var title = document.getElementById('imageTitle');
	title.style.left = disp.style.left;
	title.style.width = disp.offsetWidth+"px";
	
	var txt = title.childNodes[0];
	
	var desc = document.getElementById(srcdiv.id.replace('div', 'dsc'));

	if(isIE)
		txt.innerText = desc.innerText.length?desc.innerText:'[Untitled]';
	else
		txt.textContent = desc.textContent.length?desc.textContent:'[Untitled]';

	title.style.top = (disp.offsetTop - title.offsetHeight) + "px";
	txt.style.width = title.offsetWidth - 30 + "px";
	
	var btns = document.getElementById('slideshowButtons');
	if(btns)
	{
		btns.style.left = disp.style.left;
		btns.style.top = disp.offsetTop + disp.offsetHeight + "px";
		btns.style.width = disp.offsetWidth+"px";
		btns.style.visibility = 'visible';
	}
}*/

function removeDescription()
{
	var title = document.getElementById('imageTitle');
	if(title)
	{
		doc.removeChild(title);
	}
	title = document.getElementById('slideshowButtons');
	if(title)
		title.style.visibility = "hidden";

}


var topac = 100;
var ovrl, interval3;
function darken(opac)
{
	topac = opac;
	ovrl = document.getElementById('overlay');
	if(!interval3)
		interval3=setInterval("setOpacity()", 100);
}

function setOpacity()
{
	var opac = 0;
	if(isIE)
		opac = ovrl.filters('alpha').opacity;
	else
		opac = ovrl.style.opacity*100;
		
	if(opac != topac)
	{
		var d = (opac <= topac)?10:-10;
		if(d>topac-opac)
			d=topac-opac;
		if(isIE)
			ovrl.filters('alpha').opacity = opac+d;
		else
			ovrl.style.opacity = (opac+d)/100;
	}
	else
	{
		clearInterval(interval3);
		interval3=0;
	}
}

/*function hideImage(e)
{
	e = e?e:event;
	if (!e.target) e.target = e.srcElement;
	
	var el = e.target;
	while(el.id != 'display')
		el = el.offsetParent;
				
	closeDisplay(el);
}*/


function closeDisplay()
{
	stopSlideshow();
	removeDescription();
	animate3();
}

function animate3()
{
	di=0;
	
	if(interval3)
	{
		clearInterval(interval3);
		interval3=0;
	}
	
	if(interval2)
		clearInterval(interval2);
		
	interval2=setInterval("reveal3()", 10);
		
}

function reveal3()
{
	//alert(disp.width + "x" + disp.height + "---" + loader.width + "x" + loader.height);

	dw = (disp.offsetWidth - srcdiv.offsetWidth)/(steps - di);
	dh = (disp.offsetHeight - srcdiv.offsetHeight)/(steps - di);

	if(disp.offsetWidth > srcdiv.offsetWidth)
		disp.style.width = (disp.offsetWidth-dw)+"px";
	
	if(disp.offsetHeight > srcdiv.offsetHeight)
		disp.style.height = (disp.offsetHeight-dh)+"px";

	dl = (disp.offsetLeft - getOffsetLeft(srcdiv))/(steps - di);
	dt = (disp.offsetTop - getOffsetTop(srcdiv))/(steps - di);
		
	disp.style.left = (disp.offsetLeft - dl)+"px";
	disp.style.top = (disp.offsetTop - dt)+"px";
	
	
	//if((disp.height >= loader.height) && (disp.width >= loader.width))
	di++;
	if(di >= steps)
	{
		//alert('finito!');
		clearInterval(interval2);
		interval2=0;
		showOverlay(0);
		doc.removeChild(document.getElementById('display'));
		
		headerSlideDisabled = false;
	}
}

function showOverlay(opac)
{
	var ovl = top.document.getElementById('overlay');
	if(ovl)
	{
		
		ovl.style.display = opac?'block':'none';
		ovl.style.height = doc.scrollHeight+"px";
		ovl.style.width = doc.scrollWidth+"px";
		
		if(isIE)
			ovl.filters('alpha').opacity = opac;
		else
			ovl.style.opacity = opac/100;
	}
}

function programDetails(id)
{
    document.location="tours.details.php?id=" + id;
}
function newsDetails(id)
{
    document.location="news.details.php?id=" + id;
}
function campaignDetails(id)
{
    document.location="campaigns.details.php?id=" + id;
}
function gotoUrl(url)
{
	document.location=url;
}

function mhb(button) //mouse hover button
{
	button.style.backgroundImage = "url('/img/" + button.className + "_active.jpg')";
}
function mob(button) //mouse out button
{
	button.style.backgroundImage = "url('/img/" + button.className + ".jpg')";
}


function label(div)
{
	if(div.title)
		return;
	
	var desc = document.getElementById(div.id.replace('div', 'dsc'));
	if(desc)
		div.title = isIE?desc.innerText:desc.textContent;
}

var slide_interval;
function toggleSlideshow(btn)
{
	if(slide_interval)
		stopSlideshow();
	else
		startSlideshow();
}

function startSlideshow()
{
	slide_interval = window.setInterval("nextImage()", 5000);

	var btn = document.getElementById('btnToggleSlideshow');
	btn.className = "stop_slideshow";
	btn.title = "Stop Slideshow";
	mob(btn);
}

function stopSlideshow()
{
	window.clearTimeout(slide_interval);
	slide_interval = 0;
	
	var btn = document.getElementById('btnToggleSlideshow');
	btn.className = "start_slideshow";
	btn.title = "Start Slideshow";
	mob(btn);
}

function nextImageClick()
{
	stopSlideshow();
	nextImage();
}

function prevImageClick()
{
	stopSlideshow();
	prevImage();
}

function nextImage()
{
	var imgNo = Math.max(srcdiv.id.substring(3), 0);
	if(imgNo < picCount - 1)
		imgNo++;
	else
		imgNo = 0;
	
	var obj = document.getElementById('div'+imgNo);
	if(obj)
	{
		removeDescription();
		setNextImage(obj);
	}
}

function prevImage()
{
	var imgNo = Math.max(srcdiv.id.substring(3), 0);
	if(imgNo == 0)
		imgNo =  picCount - 1;
	else
		imgNo--;
	
	var obj = document.getElementById('div'+imgNo);
	if(obj)
	{
		removeDescription();
		setNextImage(obj);
	}
}


function setNextImage(div)
{
	var img = document.getElementById(div.id.replace('div', 'img'));
	//alert(src);
	showCallback = function(){addDescription();}
	displayImage(div, img.src);
}

function displayImage(div, bigsrc)
{
	headerSlideDisabled = true;
	var src = div.style.backgroundImage.replace('url(', '').replace(')', '');//.replace("/thumbs", "");
	//alert(src);
	var img = document.getElementById('display');
	img.src = src;
	//alert(img.src);
	//img.style.left = getOffsetLeft(div)+"px";
	//img.style.top = getOffsetTop(div)+"px";
	//img.style.width = div.offsetWidth+"px";
	//img.style.height = div.offsetHeight+"px";
	srcdiv = div;
	
	loader = new Image();
	loadCallback = function(){animate4();};
	loader.onload=function(){imgLoaded();};

	loader.src = bigsrc;//(src.replace("/thumbs", ""));
	
	if(window.opera)
	{
		//alert(src.replace("/thumbs", ""));
		//var str = src.replace("/thumbs", "");
		if(!interval2)
			imgLoaded();//fix(skip) problem with opera onload event
	}

}

function animate4()
{
	di=-1;
	if(!interval2)
		interval2=setInterval("reveal4()", 10);
}

function reveal4()
{
	//alert(disp.width + "x" + disp.height + "---" + loader.width + "x" + loader.height);
	dw = Math.abs(loader.width - disp.offsetWidth);
	dh = Math.abs(loader.height - disp.offsetHeight);
	
	di++;
	if( (di >= steps) || (dw <=2 && dh<=2))
	{
		//alert('finito!');
		clearInterval(interval2);
		interval2=0;
		
		if(showCallback)
			showCallback();
		//top.document.getElementById('overlay').style.height = document.body.scrollHeight;
		//window.setTimeout("darken(80)", 100);
		return;
	}

	dw = (loader.width - disp.offsetWidth)/(steps - di);
	dh = (loader.height - disp.offsetHeight)/(steps - di);
	
	if(disp.offsetWidth != loader.width)
		disp.style.width = (disp.offsetWidth+dw)+"px";
	
	if(disp.offsetHeight != loader.height)
		disp.style.height = (disp.offsetHeight+dh)+"px";

	dl = (disp.offsetLeft - doc7.scrollLeft - (doc7.clientWidth/2 - disp.offsetWidth/2))/(steps - di);
	dt = (disp.offsetTop - doc7.scrollTop - (doc7.clientHeight/2 - disp.offsetHeight/2))/(steps - di);
	
	//alert(disp.offsetTop + '-' + document.documentElement.scrollTop + '-' + document.documentElement.clientHeight/2 + '-' + disp.offsetHeight/2);
		
	disp.style.left = (disp.offsetLeft - dl)+"px";
	disp.style.top = (disp.offsetTop - dt)+"px";
	
	//alert(disp.style.left + ',' + disp.style.top + ',' + disp.style.width + ',' + disp.style.height);
	
	//if((disp.height >= loader.height) && (disp.width >= loader.width))
}

function mhval(img)
{
	img.src=img.src.replace('-blue', '');
}

function moval(img)
{
	img.src=img.src+"-blue";
}

function showValidator(lnk)
{
	lnk.parentNode.removeChild(lnk);
	document.getElementById("validator").style.visibility="visible";
}

var vid;
function videoGallery()
{
	var isIE =navigator.userAgent.toLowerCase().indexOf("msie") != -1;
	
	var vurl = "video_gallery.php";
	var vname = "VideoGallery";
	var spar = "fullscreen=1,left=0,top=0,width=" + screen.width + ",height=" + screen.height + ",menubar=0,toolbar=0,status=0,location=0";
	if(null != vid)
	{
		try
		{
			if(isIE)
			{
			popup.focus();
			//popup.location.href = url;
			return;
			}
		
			vid.close();
			//vid.location.href = url;
			//return;
		}
		catch(err)
		{
			//vid.close();
			vid = null;
		}
	}

	vid = window.open(vurl, vname, spar);
	vid.focus();
}
