var WebsiteBuilder = {
	
	init: function() 
	{
		var t = document.getElementsByTagName("script");
		var scriptURL = t[ t.length - 1 ].src;
		WebsiteBuilder.baseURL = scriptURL.substring(0, scriptURL.length - 29);

  		WebsiteBuilder.require('swfobject/swfobject.js');
  		WebsiteBuilder.require('swfaddress/swfaddress.js');
  		
  		WebsiteBuilder.promoCode = null;
  		WebsiteBuilder.campaign = null;
  		WebsiteBuilder.unlockCode = null;
	},
	
	require: function(script) 
	{
		document.write('<script type="text/javascript" src="'+ WebsiteBuilder.baseURL + '/javascript/' + script +'"><\/script>');
  	},

  	load: function(marketId, containerName) 
  	{
  		var so = new SWFObject(
  				WebsiteBuilder.baseURL + "/flash/websitecreator.swf",
  				"websitecreator",           
				"100%",
				"910",
				"9.0.0",              
				"#E5E5E5"
		);

		so.useExpressInstall(WebsiteBuilder.baseURL + '/flash/expressinstall.swf');
		so.addParam("allowScriptAccess", "always");
		so.addParam("wmode", "transparent");
		so.addVariable("market", marketId);
		so.addVariable("url", escape(WebsiteBuilder.baseURL));
		so.write(containerName);
	},
  	
  	setPromoCode: function(promoCode) 
  	{
		WebsiteBuilder.promoCode = promoCode;
	}, 

  	setCampaign: function(campaign) 
  	{
		WebsiteBuilder.campaign = campaign;
	}, 

	setUnlockCode: function(unlockCode) 
  	{
		WebsiteBuilder.unlockCode = unlockCode;
	}, 
	
	getURLParams: function() 
	{
		var params = '', separator = '?';
		if (WebsiteBuilder.promoCode) {
			params += separator + 'promo=' + WebsiteBuilder.promoCode;
			separator = '&';
		}
		if (WebsiteBuilder.campaign) {
			params += separator + 'ref=' + WebsiteBuilder.campaign;
			separator = '&';
		}
		if (WebsiteBuilder.unlockCode) {
			params += separator + 'unlock=' + WebsiteBuilder.unlockCode;
			separator = '&';
		}
		return params;
	}
	
}

// Initialize 
WebsiteBuilder.init();

function resizePage(page, height) 
{
	if (document.getElementById('flexDiv').style.height != height) {
		scroll(0,0);
	}

	var flexHeight;
	if (height == "") {
		switch (page)
		{
			case 'crea': flexHeight = '1028px'; break;
			case 'view': flexHeight = '1260px'; break;
			case 'light': flexHeight = '1280px'; break;
			default: flexHeight = '910px'; break;
		}
	} else {
		if (parseInt(height) < 700) { height = 700 + 'px';}
		flexHeight = height;
	}
	document.getElementById('flexDiv').style.height = flexHeight;
	document.getElementById('websitecreator').style.height = flexHeight;
}

function redirectTo(url) 
{
	var anchorSection = null, 
		pos = url.indexOf('#');
	if (pos != -1) {
		anchorSection = url.substr(pos);
		url = url.substr(0, pos);
	}

	url = url + WebsiteBuilder.getURLParams() + anchorSection;
	document.location = url;
}

function changeMarket() {
	document['websitecreator'].changeMarket();
}

function restoreMarketsCombo() {
	document['websitecreator'].restoreMarketsCombo();
}