window.flashreq = 8;


// --- GLOBAL VARIABLES -------------------------------------

window.rich = false;
window.richnav = false;
window.richcon = false;

window.flashedit = false;

window.nocache = "?nocache=" + new Date();


// --- GET FLASH VERSION -------------------------------------

var getFlash = deconcept.SWFObjectUtil.getPlayerVersion;


// --- GET QUERY VARIABLES -------------------------------------

function getQuery(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
    if (pair[0] == variable) return pair[1];
  }
}

var qrich = getQuery("rich");
var qrichcon = getQuery("richcon");
var qdbg = getQuery("dbg");
var qgrid = getQuery("grid");
var qedit = getQuery("edit");
var qcookie = getQuery("cookie");


// --- SET/GET COOKIE VARIABLES -------------------------------------

function setCookie(name,value,days) {
	var expires = "";
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(variable) {
	var variable = variable + "=";
	var vars = document.cookie.split(';');
	for (var i=0;i<vars.length;i++) {
		var c = vars[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(variable) == 0) return c.substring(variable.length,c.length);
	}
}

function delCookie(name) {
	setCookie(name,"",-1);
}


if (qrich) setCookie("rich", qrich, 0);
if (qrichcon) setCookie("richcon", qrichcon, 0);
if (qdbg) setCookie("dbg", qdbg, 0);
if (qgrid) setCookie("grid", qgrid, 0);
if (qedit) setCookie("edit", qedit, 0);

var crich = getCookie("rich");
var crichcon = getCookie("richcon");
var cdbg = getCookie("dbg");
var cgrid = getCookie("grid");
var cedit = getCookie("edit");

if (qcookie == "off" || qcookie == "delete" || qcookie == "del") {
	delCookie("rich");
	delCookie("richcon");
	delCookie("dbg");
	delCookie("grid");
	delCookie("edit");
}


// --- SETUP RICH NAVIGATION / CONTENT -------------------------------------

var flashver = getFlash();

if (flashver['major'] >= flashreq) {
	rich = true;
	richnav = true;
	richcon = true;
	if (qrich == "off" || crich == "off") rich = false;
	if (qrichcon == "off" || crichcon == "off") richcon = false;
}


// --- SETUP DEBUGGER -------------------------------------

var dbg = false;
var grid = false;
var gridall = false;

if (qdbg == "on" || cdbg == "on") dbg = true;
if (qgrid == "on" || qgrid == "all" || cgrid == "on" || cgrid == "all") grid = true;
if (qgrid == "all" || cgrid == "all") gridall = true;

window.flashdbg = "";
if (dbg) flashdbg = "on";


function showHTMLguides(obj) {
	$("#"+obj).addClass('FlashGuide');
}

function updateHTMLdebugger(obj, output) {
	var jqobject = "#"+obj+"_dbginput";
	$(jqobject).html(output);
}

function openHTMLdebugger(obj, w,h,x,y) {
	if (dbg) {
		var dbgwin = jQuery('<div id="'+obj+'_dbgoutput" style="width:'+w+'px;height:'+h+'px;left:'+x+'px;top:'+y+'px;position:absolute;z-index:99;background-color:#fff;"><textarea id="'+obj+'_dbginput" readonly="true" wrap="off" value="output" style="width:'+w+'px;height:'+h+'px"/></div>').insertAfter('#FlashAuthor');
 		var jqobject = "#"+obj+"_dbgoutput";
		if (grid) showHTMLguides(obj);
	}
}

if (gridall) {
	$(document).ready(function(){
		$(".FlashNav").addClass('FlashGuide');
		$(".FlashCon").addClass('FlashGuide');
	});
}


// --- CALL FLASH OBJECT -------------------------------------

function flashObject(flashName) {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[flashName] : document[flashName];
}


// --- UPDATE SWF DIV SIZE -------------------------------------

function updateSwfSize(obj,w,h) {
	if (w) {
		document.getElementById(obj).style.width = w + "px";
		document.getElementById(obj+"_swf").style.width = w + "px";
	}
	if (h) {
		document.getElementById(obj).style.height = h + "px";
		document.getElementById(obj+"_swf").style.height = h + "px";
	}
}


// --- GET URL LOCATION -------------------------------------

function getHTMLurl(url) {
	if (qdbg == "on" || cdbg == "on") {
		window.alert("...href='"+unescape(url)+"'");
	} else {
		window.location.href = unescape(url);
	}
}


