// New7Wonders-JS-Functions
var i = 0;
var myTimeouts = new Array();
var Slogan = new Array();
var currentSlogan = 0;
var OverlayPager = new Array();


// ---------------------------------------------------
//	TAKEN FROM Lightbox v2.03.2
//	by Lokesh Dhakar - http://www.huddletogether.com
//	4/30/06

function showFlash(){
	var flashObjects = document.getElementsByTagName("object");
	for (i = 0; i < flashObjects.length; i++) {
		flashObjects[i].style.visibility = "visible";
	}

	var flashEmbeds = document.getElementsByTagName("embed");
	for (i = 0; i < flashEmbeds.length; i++) {
		flashEmbeds[i].style.visibility = "visible";
	}
}

// ---------------------------------------------------
//	TAKEN FROM Lightbox v2.03.2
//	by Lokesh Dhakar - http://www.huddletogether.com
//	4/30/06

function hideFlash(){
	var flashObjects = document.getElementsByTagName("object");
	for (i = 0; i < flashObjects.length; i++) {
		flashObjects[i].style.visibility = "hidden";
	}

	var flashEmbeds = document.getElementsByTagName("embed");
	for (i = 0; i < flashEmbeds.length; i++) {
		flashEmbeds[i].style.visibility = "hidden";
	}

}

// ---------------------------------------------------
//	TAKEN FROM Lightbox v2.03.2
//	by Lokesh Dhakar - http://www.huddletogether.com
//	4/30/06

function showSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "visible";
	}
}

// ---------------------------------------------------
//	TAKEN FROM Lightbox v2.03.2
//	by Lokesh Dhakar - http://www.huddletogether.com
//	4/30/06

function hideSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "hidden";
	}
}


// ---------------------------------------------------
// iecompattest() and Browser-Detection are taken from:
// Floating Top Bar script-Â© Dynamic Drive (www.dynamicdrive.com)
// Sliding routine by Roy Whittle (http://www.javascript-fx.com/)
// This notice must stay intact for legal use.
// Visit http://www.dynamicdrive.com/ for full source code

function iecompattest()
{
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}



function ajax_generic(ref, mode, param)
{
	new Ajax.Updater(ref, '/classic/en/ajax/mode/'+mode+'/', {
		'method': 'post',
		'parameters': param,
		'asynchronous': true,
		'evalScripts': true
	});
}

function PopupNewsletter(theURI)
{
	var theWindow = window.open(theURI, 'newsletter', 'width=850,height=650,status=no,toolbar=no,menubar=no,resizable=yes,scrollbars=yes');
}

function ajax_pager(typ, url)
{
	new Ajax.Updater('pager_'+typ, '/ajax/mode/pager/pagertyp/'+typ+'/'+url, {method: 'get'});
}

function getRealLeft(el)
{
	xPos = el.offsetLeft;
	tempEl = el.offsetParent;
	return xPos;
}

function showSubNav(topnav, subnavid)
{
	hideAllSubNav();

	if(document.getElementById('subnav_'+subnavid))
	{
		document.getElementById('subnav_'+subnavid).style.left = getRealLeft(topnav) + 'px';
		document.getElementById('subnav_'+subnavid).style.display = 'block';
	}
}

function hideSubNav(e, element, subnavid)
{
	var ziel=e.relatedTarget?e.relatedTarget:e.toElement;
	var kinder=element.getElementsByTagName('*');
	for(var i=0;i<kinder.length;i++) { if(kinder[i]==ziel||element==ziel) { return; } }

	document.getElementById('subnav_'+subnavid).style.display = 'none';
}

function hideAllSubNav()
{
	var eCount = document.getElementsByTagName('div').length;
	for(i=0; i<eCount; i++)
	{
		if(document.getElementsByTagName('div')[i].className == 'SubNav')
		{
			document.getElementsByTagName('div')[i].style.display = 'none';
		}
	}
}

function initMemberAction()
{
	document.getElementById('register_member').style.display = 'none';

	document.getElementById('register_member_action').innerHTML = '<span onclick="MemberAction(\'returning_member\');" class="jsClick">Already registered. Click here for the short form.</span>';
	document.getElementById('returning_member_action').innerHTML = '<span onclick="MemberAction(\'register_member\');" class="jsClick">Are not yet a New7Wonders member? Join now!</span>';
}

function MemberAction(displayOne)
{
	document.getElementById('register_member').style.display = 'none';
	document.getElementById('returning_member').style.display = 'none';
	document.getElementById(displayOne).style.display = 'block';
}

function initSlogans()
{
	clearTimeout(myTimeouts[1]);
	myTimeouts[1] = window.setTimeout("runSlogans()", 3600);
}

function runSlogans()
{
	clearTimeout(myTimeouts[1]);

	if(document.getElementById('slogan_'+Slogan[currentSlogan]))
	{
		new Effect.Fade('slogan_'+Slogan[currentSlogan], { duration: 2.0 });
		myTimeouts[1] = window.setTimeout("runSlogansSub()", 1500);
	}
}

function runSlogansSub()
{
	clearTimeout(myTimeouts[1]);

	currentSlogan++;
	if(document.getElementById('slogan_'+Slogan[currentSlogan]))
	{
		// passt
	}
	else
	{
		currentSlogan = 0;
	}

	new Effect.Appear('slogan_'+Slogan[currentSlogan], { duration: 1.5 });
	myTimeouts[1] = window.setTimeout("runSlogans()", 6600);
}


function OverlayOff()
{
	document.getElementById('overlayContent').style.display = 'none';
	document.getElementById('overlay').style.display = 'none';
	document.getElementById('overlayPager').innerHTML = '';
	document.getElementById('overlayData').innerHTML = '';

	showFlash();
	showSelectBoxes();
}

function OverlayOn(ref_id, typ, mode, firstPage)
{
	// Core code from - quirksmode.org
	// modified based on lightbox2

	hideFlash();
	hideSelectBoxes();

	var ns = (navigator.appName.indexOf("Netscape") != -1) || window.opera;
	var pY = ns ? pageYOffset : iecompattest().scrollTop;

	var yScroll;
	if (window.innerHeight && window.scrollMaxY) { yScroll = window.innerHeight + window.scrollMaxY; }
	else if (document.body.scrollHeight > document.body.offsetHeight){ yScroll = document.body.scrollHeight;
	} else { yScroll = document.body.offsetHeight; }

	var windowHeight;
	if (self.innerHeight) {	windowHeight = self.innerHeight; }
	else if (document.documentElement && document.documentElement.clientHeight) { windowHeight = document.documentElement.clientHeight; }
	else if (document.body) { windowHeight = document.body.clientHeight; }	

	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){ pageHeight = windowHeight; }
	else { pageHeight = yScroll; }
	// End

	// hack for IE6: Background with rastered gif
	var nAgt = navigator.userAgent;
	if((verOffset=nAgt.indexOf("MSIE"))!=-1)
	{
		if(parseInt(parseFloat(nAgt.substring(verOffset+5))) <= 6)
		{
			document.getElementById('overlay').style.backgroundColor = 'transparent';
			document.getElementById('overlay').style.backgroundImage = 'url(/static/pix/ie6_pseudotrans.gif)';
		}
	}


	document.getElementById('overlay').style.height = pageHeight+'px';
	document.getElementById('overlay').style.display = 'block';
	document.getElementById('overlayContent').style.top = (pY + 100) + 'px';
	document.getElementById('overlayContent').style.display = 'block';

	if(mode == 'mywonder')
	{
		// typ ist hier nicht relevant
		myWonderPager(ref_id, firstPage);
	}
	else
	{
		FoverlayPager(ref_id, typ, firstPage)
	}
}

function myWonderPager(ref_id, thisPage)
{
	ajax_generic('overlayPager', 'myWonderPager', 'ref_id='+ref_id+'&thisPage='+thisPage);
	ajax_generic('overlayData', 'myWonderData', 'ref_id='+ref_id+'&thisPage='+thisPage);
}

function FoverlayPager(ref_id, typ, page)
{
	var myPager = '';
	var mySrc = ''; var myBreite = 0; var myHoehe = 0;
	var i2 = 0;
	var prevPage = 0;
	var nextPage = 0;
	for(i=0; i<OverlayPager.length; i++)
	{
		if(OverlayPager[i] && OverlayPager[i][1] == ref_id)
		{
			if(OverlayPager[i][2] == typ)
			{
				if(i2 > 0)
				{
					myPager += ' <span class="white">|</span> ';
				}

				if(OverlayPager[i][0] == page)
				{
					mySrc = OverlayPager[i][3];
					myBreite = OverlayPager[i][4];
					myHoehe = OverlayPager[i][5];
					prevPage = page - 1;
					myPager += '<span onclick="FoverlayPager(' + ref_id + ',\'' + typ + '\',' + OverlayPager[i][0] + ');" class="pagetoolNoStyle" style="font-weight: bold; color: #ffffff;">' + OverlayPager[i][0] + '</span>';
				}
				else
				{
					myPager += '<span onclick="FoverlayPager(' + ref_id + ',\'' + typ + '\',' + OverlayPager[i][0] + ');" class="pagetool">' + OverlayPager[i][0] + '</span>';
				}

				if((prevPage > 0 || page == 1) && (prevPage + 2) == OverlayPager[i][0]) { nextPage = OverlayPager[i][0]; }

				i2++;
			}
		}
	}

	if(prevPage > 0) { myPager = '<span class="white">&lt;&lt;</span> <span onclick="FoverlayPager(' + ref_id + ',\'' + typ + '\',' + prevPage + ');" class="pagetool">previous</span> &nbsp; '+myPager; } else { myPager = '<span class="white">&lt;&lt; previous</span> &nbsp; '+myPager; }
	if(nextPage > 0) { myPager = myPager + ' &nbsp; <span onclick="FoverlayPager(' + ref_id + ',\'' + typ + '\',' + nextPage + ');" class="pagetool">next</span> <span class="white">&gt;&gt;</span>'; } else { myPager = myPager+' &nbsp; <span class="white">next &gt;&gt;</span>'; }

	document.getElementById('overlayPager').innerHTML = myPager;
	if(typ == 'bild')
	{
		document.getElementById('overlayData').innerHTML = '<img src="'+mySrc+'" alt="" style="width: '+myBreite+'px; height: '+myHoehe+'px;" />' + document.getElementById('bildunterschrift_' + ref_id + '_' + page).innerHTML;
	}
	else
	{
		document.getElementById('overlayData').innerHTML = '<div id="overlayPlayer'+page+'" style="margin-left: auto; margin-right: auto; position: relative; height: '+myHoehe+'px; width: '+myBreite+'px;"><a href="http://www.macromedia.com/go/getflashplayer" target="_blank">Get the Flash Player</a> to see this video.</div>' + document.getElementById('bildunterschrift_'+ref_id+'_'+page).innerHTML;
		var s1 = new SWFObject("/static/swf/flvplayer.swf","singlePlayer",myBreite,myHoehe,"7");
		s1.addParam("allowfullscreen","true");
		s1.addParam("allowscriptaccess","always");
		s1.addVariable("file",mySrc);
		// FIXME
		s1.addVariable("image","/static/pix/spg_transp.gif");
		//s1.addVariable("image","/file/inline/id/' . $data_run['m_id'] . '/art/220x164/name/pseudopreview.jpg");
		s1.addVariable("width",myBreite);
		s1.addVariable("height",myHoehe);
		s1.write('overlayPlayer'+page);
	}
}

