
var so = new SWFObject('http://partner.finanzprofi.de/flash/FlashCookie.swf', 'flashCookieObject', 1, 1, 9);
so.addParam('allowScriptAccess', 'always');
so.addParam('wmode', 'transparent');
so.write('flashCookie');

var flashCookieLoaded = false;
var flashCookieLoadedHooks = [];

function getFlashCookie() {
	if(navigator.appName.indexOf('Microsoft') != -1) {
		return window['flashCookieObject'];
	} else {
		return document['flashCookieObject'];
	}
}

function flashCookieInit() {
	// Timing-Problematik umgehen. Direkt von body.onload ziehen
	// diese Hooks meistens nicht... 
	setTimeout("executeFlashCookieLoadedHooks();", 250);
}

function executeFlashCookieLoadedHooks() {
	flashCookieLoaded = true;
	
	for(var i=0;i<flashCookieLoadedHooks.length;i++) {			
		try {
			flashCookieLoadedHooks[i]();
		} catch(e) {
			// Nothing
		}
	}
	
	flashCookieLoadedHooks = [];
}

function addFlashCookieLoadedHook(closure) {
	if(typeof(closure) != 'function') {
		return;
	}

	if(flashCookieLoaded) {
		closure();
	} else {
		flashCookieLoadedHooks.push(closure);
	}
}

function setFlashCookieValue(key, value) {
	if(flashCookieLoaded) {
		getFlashCookie().setCookieValue(key, value);
	}
}


function getFlashCookieValue(key) {
	if(flashCookieLoaded) {
		return getFlashCookie().getCookieValue(key);
	} else {
		return '';
	}
}

