// Groovy Flash HTML resources. Copyright 2005 James Gretton - Igloo Web Design . com (unless otherwise stated). All rights reserved.
var HOST = "igloowebdesign";
var FLA = "template";
var htmlWaiting;
var currentPage = checkLoc();
var saveNavPage = "";

// -----------------------------------------------------------------------------
// Globals
// Major version of Flash required
var requiredMajorVersion = 7;
// Minor version of Flash required
var requiredMinorVersion = 0;
// Revision of Flash required
var requiredRevision = 0;
// the version of javascript supported
var jsVersion = 1.0;
// the flash dimensions
var minfx = 500
var minfy = minfx * 550/900;
var fx = '95%';
var fy = '95%';
// -----------------------------------------------------------------------------

window.onload = function(){
	//init();
	//scrollbars();
}
//window.onload = scrollbars;
//window.onresize = scrollbars;


//add onload event to div:
function init(){
	var showFlash = !checkRef();
	if (showFlash) displayWhich("flash");
	else displayWhich("html");
}


//only show scroll bars when necesery ONLY IN FLASH!!!
function scrollbars(force){
	if (!document.getElementsByTagName) return;
	var b = document.getElementsByTagName('body')[0];
	if (!b || !b.style) return;
	if (force || document.body.clientWidth < minfx || document.body.clientHeight < minfy){
		b.style.overflow = 'scroll';
	}else{
		b.style.overflow = 'hidden';		
	}
		b.style.overflow = 'scroll';	
}


//write the flash content via javascript




// Detect Client Browser type
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
jsVersion = 1.1;
// JavaScript helper required to detect Flash Player PlugIn version information
function JSGetSwfVer(i){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
      		var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			descArray = flashDescription.split(" ");
			tempArrayMajor = descArray[2].split(".");
			versionMajor = tempArrayMajor[0];
			versionMinor = tempArrayMajor[1];
			if ( descArray[3] != "" ) {
				tempArrayMinor = descArray[3].split("r");
			} else {
				tempArrayMinor = descArray[4].split("r");
			}
      		versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
            flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
      	} else {
			flashVer = -1;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	// Can't detect in all other cases
	else {
		flashVer = -1;
	}
	return flashVer;
} 
// If called with no parameters this function returns a floating point value 
// which should be the version of the Flash Player or 0.0 
// ex: Flash Player 7r14 returns 7.14
// If called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) 
{
 	reqVer = parseFloat(reqMajorVer + "." + reqRevision);
   	// loop backwards through the versions until we find the newest version	
	for (i=25;i>0;i--) {	
		if (isIE && isWin && !isOpera) {
			versionStr = VBGetSwfVer(i);
		} else {
			versionStr = JSGetSwfVer(i);		
		}
		if (versionStr == -1 ) { 
			return false;
		} else if (versionStr != 0) {
			if(isIE && isWin && !isOpera) {
				tempArray         = versionStr.split(" ");
				tempString        = tempArray[1];
				versionArray      = tempString .split(",");				
			} else {
				versionArray      = versionStr.split(".");
			}
			versionMajor      = versionArray[0];
			versionMinor      = versionArray[1];
			versionRevision   = versionArray[2];
			
			versionString     = versionMajor + "." + versionRevision;   // 7.0r24 == 7.24
			versionNum        = parseFloat(versionString);
        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
			if ( (versionMajor > reqMajorVer) && (versionNum >= reqVer) ) {
				return true;
			} else {
				return ((versionNum >= reqVer && versionMinor >= reqMinorVer) ? true : false );	
			}
		}
	}	
	return (reqVer ? false : 0.0);
}

//function to write the content

function writeFlashContent(pageString){
	var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
	if(hasRightVersion) {  // if we've detected an acceptable version
		var oeTags = '<div id="flashdiv" class="closed" >'
		+ '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'
		+ 'width="'+fx+'" height="'+fy+'"'
		+ 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab" id="template">'
		+ '<param name="movie" value="/'+ FLA +'.swf" /><param name="quality" value="best" /><param name="bgcolor" value="#000000" /><param name="scale" value="showall" /><param name="flashVars" value="'+pageString+'" />'
		+ '<embed src="/'+ FLA +'.swf" bgcolor="#000000" '
		+ 'width="'+fx+'" height="'+fy+'" name="template" align="middle"'
		+ 'play="true" '
		+ 'loop="false" '
		+ 'quality="best" '
		+ 'allowScriptAccess="sameDomain"'
		+ 'scale="showall"'		
		+ 'flashVars="'+pageString+'"'
		+ 'type="application/x-shockwave-flash"'
		+ 'pluginspage="http://www.macromedia.com/go/getflashplayer">'
		+ '</embed>'
		+ '</object>'
		+ '<div id="left_footer_flash"><a href="/htmlonly.html" onclick="displayWhich(\'html\'); return false;">Click here for the text version</a>&nbsp;</div><div id="right_footer_flash">&copy; Igloo Web Design 2006</div>'
		+ '</div>';
		document.write(oeTags);   // embed the flash movie
		scrollbars(); // force scrollbars to disappear imediately
	  }
}

function writeNonFlashContent(){
	var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
	if(!hasRightVersion) {
		var alternateContent = ''
		+ '<br>For the complete Igloo Experiance you require the latest Macromedia Flash Player. <strong>'
		+ '<a href=http://www.macromedia.com/go/getflash/>Get Flash</a></strong><br>';
		document.write(alternateContent);  // insert non-flash content
	  }
}



// Detection from www.dithered.com
var ua        = navigator.userAgent.toLowerCase(); 
var is_pc_ie  = ( (ua.indexOf('msie') != -1 ) && ( ua.indexOf('win') != -1 ) && ( ua.indexOf('opera') == -1 ) && ( ua.indexOf('webtv') == -1 ) );

// Returns true if refered from url site.
function checkRef(){
	url = HOST;
	if (checkParams()) 
		return true;
	var ref = unescape(document.referrer);
	if (ref != ""){
		var begin = ref.indexOf('/') + 2;
		ref = ref.substring(begin,ref.length);
		var end = ref.indexOf('/');
		if (end < 0) end = ref.length;
		ref = ref.substring(0,end);
		if(ref.indexOf(url) != -1 ){
			return true;
		}else{
			return false;
		}
	}else{
		return false;
	}
}

function checkParams(){
	//Checks for get data on header.
	url = HOST;
	var loc = unescape(document.location.href);
	//check for root of page
	loc.substring(loc.indexOf('?'), loc.length);
	if ( loc.indexOf('disp=html') != -1 ){
		return true;
	}else
		return false;
}

function checkLoc(){
	url = HOST;
	var loc = unescape(document.location.href);
	//check for root of page
	if (loc.indexOf('.html') == -1){
		return "";
	}
	// remove . from domain name
	if (loc.indexOf(url) != -1){
		loc = loc.substring(loc.indexOf(url) + url.length, loc.length);
	}
	// trim down to just file name (without .html)
	loc = loc.substring(loc.lastIndexOf('/') + 1, loc.lastIndexOf('.'));
	//add .html if necessery
	if (loc == ""){
		return "";
	}else{
		return loc + ".html";
	}
}


//Swap between flash and html
function displayWhich(which){
	var h = document.getElementById('htmldiv');	
	var f = document.getElementById('flashdiv');		
	// Display the flash div, and set the page variable
	if (which == 'flash' && f){
		if(h) h.style.display = 'none';
		if(f) f.style.display = 'block';
		if (saveNavPage)
			setFlashVariables(FLA, saveNavPage)
	}
	// Display the html div, changing html page if neccesery.
	if (which == 'html'){
		//Do page change.
		if (checkHtmlWaiting())
		  return;
		if(h) h.style.display = 'block';
		if(f) f.style.display = 'none';
		scrollbars(true);
	}
}

function checkHtmlWaiting(){
	if (!htmlWaiting) return false;
	if (htmlWaiting == currentPage) return false;
	//Otherwise call goto
	gotoHtmlWaiting();
	return true;
}

function gotoHtmlWaiting(){
	location.href = htmlWaiting;
}

function setHtmlWaiting(p){
	htmlWaiting = p;
}

//Mustard's Code
function setFlashVariables(movieid, flashquery){
	var i,values;
	if(is_pc_ie){
		var chunk = flashquery.split("&");
		for(i in chunk){
			values = chunk[i].split("=");
			if (document[movieid])
				document[movieid].SetVariable(values[0],values[1]);
		}
	}else{
		var divcontainer = "flash_setvariables_"+movieid;
		if(!document.getElementById(divcontainer)){
			var divholder = document.createElement("div");
			divholder.id = divcontainer;
			document.body.appendChild(divholder);
		}
		document.getElementById(divcontainer).innerHTML = "";
		var divinfo = "<embed src='/gateway.swf' FlashVars='lc="+movieid+"&fq="+escape(flashquery)+"' width='0' height='0' type='application/x-shockwave-flash'></embed>";
		document.getElementById(divcontainer).innerHTML = divinfo;
	}
	//Save Nav Page
	saveNavPage = flashquery;
}