/** 
 * FlashDynamicEmbeder v1.0
 * 3DTomato is (c) 2011 Tomas Hrda www.3dtomato.com
 * This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
 * 
 * Uses code from SWFObject 2.2 <http://code.google.com/p/swfobject/>
 * SWFObject is (c) 2007-2009 Geoff Stearns, Michael Williams, and Bobby van der Sluis
 * 
 */

/**
 * Usage of FlashDynamicEmbeder:
 * 
 * <head> ... <script type="text/javascript" src="swfobject.js"></script>
 * <script type="text/javascript" src="flashDynamicEmbeder.js"></script> ...
 * </head>
 */

// ///////////////////////////////////////////////////////////////////////////////////////////
// VARS
// ///////////////////////////////////////////////////////////////////////////////////////////
/*
 * VAR - GLOBAL
 */
var fl_movie = "/index.swf";
var fl_container = "wrap";
var fl_version = "9.0.0";
var fl_width = "100%";
var fl_height = "100%";
var html_color = "#ffffff";

/*
 * VAR - CSS: DIMENSIONS
 */
var fl_min_width = "480px";
var fl_min_height = "320px";
var fl_min_width_num = 480;
var fl_min_height_num = 320;
var fl_max_width = "1100px";
var fl_max_height = "840px";

/*
 * VAR - CSS: SELECTORS
 */
var css_html_id = "html";
var css_body_id = "body";
var css_object_id = "object";
var css_fl_container_id = "#" + fl_container;
//
var css_html = "height:100%;";
var css_body = "background-color:" + html_color
		+ "; text-align:center; height:100%;";
var css_fl_container = "width:" + fl_width + "; height:" + fl_height
		+ "; min-width:" + fl_min_width + "; min-height:" + fl_min_height
		+ "; max-width:" + fl_max_width + "; max-height:" + fl_max_height + ";";
var css_object = "display:block; position:absolute; top:0px; right:0px; bottom:0px; left:0px; width:50%; height:50%; margin:auto;";

/*
 * VAR - CSS ARRAY
 */
var css_array = new Array();
css_array[0] = [css_html_id, css_html];
css_array[1] = [css_body_id, css_body];
css_array[2] = [css_fl_container_id, css_fl_container];
css_array[3] = [css_object_id, css_object];

/*
 * VAR - SWF
 */
var flashvars = {};
flashvars.__debug = "false";
flashvars.__data_xml = "/Xml/page_content.xml";
flashvars.__css_text = "/Css/text_flash.css";
var params = {};
// params.wmode = "transparent";
params.quality = "high";
// params.bgcolor = "#ff0000"
var attributes = {};

// ///////////////////////////////////////////////////////////////////////////////////////////
// EMBEDING SWF TO THE DOCUMENT
// ///////////////////////////////////////////////////////////////////////////////////////////
swfobject.embedSWF(fl_movie, fl_container, fl_width, fl_height, fl_version,
		false, flashvars, params, attributes);

if (swfobject.hasFlashPlayerVersion(fl_version)) {
	swfobject.addDomLoadEvent(browserFlashSize);
}

// ///////////////////////////////////////////////////////////////////////////////////////////
// SUPPORT FUNCTIONS
// ///////////////////////////////////////////////////////////////////////////////////////////

/**
 * CSS WRITING
 */
function browserFlashSize() {
	for ( var i = 0; i < css_array.length; i++) {
		swfobject.createCSS(css_array[i][0], css_array[i][1]);
	}

	window.onresize = function() {
		var el = document.getElementById(fl_container);
		var size = getViewportSize();
		el.style.width = size[0] < fl_min_width_num ? fl_min_width : fl_width;
		el.style.height = size[1] < fl_min_height_num
				? fl_min_height
				: fl_height;
	};
	window.onresize();
}

/**
 * GET VIEWPORT SIZE
 * 
 * @returns {Array}
 */
function getViewportSize() {
	var size = [0, 0];
	if (typeof window.innerWidth != "undefined") {
		size = [window.innerWidth, window.innerHeight];
	} else if (typeof document.documentElement != "undefined"
			&& typeof document.documentElement.clientWidth != "undefined"
			&& document.documentElement.clientWidth != 0) {
		size = [document.documentElement.clientWidth,
				document.documentElement.clientHeight];
	} else {
		size = [document.getElementsByTagName("body")[0].clientWidth,
				document.getElementsByTagName("body")[0].clientHeight];
	}
	return size;
}

