var osObject;

function initColorcubeFlashOS()
{
	osObject = initColorcubeOS();
}

function flashInitOrkut(containerId, id, movie, w, h, lang)
{
	var url = gadgets.io.getProxyUrl(movie);
	//gadgets.flash.embedCachedFlash(url, containerId, 9, {width:w, height:h, id:id, allowScriptAccess:"always", allowNetworking:"all", flashvars:"flashId="+ id +"&locale=" + lang});
	gadgets.flash.embedFlash(movie, containerId, 9, {width:w, height:h, id:id, allowScriptAccess:"always", allowNetworking:"all", flashvars:"flashId="+ id +"&locale="+ lang});
}

function flashInitMySpace(containerId, id, movie, w, h, lang)
{
	var code = '<object id="'+ id +'" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" data="'+ movie +'" width="'+ w +'" height="'+ h +'">';
	code += '<param name="movie" value="'+ movie +'" />';
	code += '<param name="allowScriptAccess" value="always" />';
	code += '<param name="allowNetworking" value="all" />';
	code += '<param name="flashvars" value="flashId='+ id +'&locale='+ lang +'" />';
	code += '<embed name="'+ id +'" src="'+ movie +'" width="'+ w +'" height="'+ h +'" flashvars="flashId='+ id +'&locale='+ lang +'" ';
	code += 'type="application/x-shockwave-flash" allowScriptAccess="always" allowNetworking="all"/>';
	code += '</object>';
	var container = document.getElementById(containerId);
	container.innerHTML = code;
}

function flashCallback(flashId, callback, result)
{
	if (document[flashId] && callback)
		window.setTimeout(function(){eval("document[flashId]." + callback + "(result)")}, 100);
}

function getViewerHasApp(flashId, callback) {
	osObject.getViewerHasApp(loadComplete);
	function loadComplete(result) {
		flashCallback(flashId, callback, result);
	}
}

function getViewerOwnerRelation(flashId, callback) {
	osObject.getViewerOwnerRelation(loadComplete);
	function loadComplete(relation) {
		flashCallback(flashId, callback, relation);
	}
}

function getOwnerFriends(flashId, callback) {
	osObject.getOwnerFriends(loadComplete);
	function loadComplete(object) {
		flashCallback(flashId, callback, object);
	}
}

function getOwnerData(flashId, callback) {
	osObject.getOwnerData(loadComplete);
	function loadComplete(object) {
		flashCallback(flashId, callback, object);
	}
}

function createActivity(flashId, title, content, icon, media, callback) {
	osObject.createActivity(title, content, icon, media, loadComplete);
	function loadComplete(result) {
		flashCallback(flashId, callback, result);
	}
}

function requestServer(flashId, url, callback, postdata) {
	osObject.requestServer(url, loadComplete, postdata);
	function loadComplete(response) {
		flashCallback(flashId, callback, response.text);
	}
}
