ytmanager / static / swfobject / expressInstall.as

/*	SWFObject v2.2 <http://code.google.com/p/swfobject/> is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
	Express Install Copyright (c) 2007-2008 Adobe Systems Incorporated and its licensors. All Rights Reserved.
*/

System.security.allowDomain("fpdownload.macromedia.com");

var time = 0;
var timeOut = 5; // in seconds
var delay = 10; // in milliseconds
var int_id = setInterval(checkLoaded, delay);
var old_si = null;
var loaderClip = this.createEmptyMovieClip("loaderClip", 0);
var updateSWF = "http://fpdownload.macromedia.com/pub/flashplayer/update/current/swf/autoUpdater.swf?" + Math.random();
loaderClip.loadMovie(updateSWF);

function checkLoaded(){
	time += delay / 1000;
	if (time > timeOut) {
		// updater did not load in time, abort load and force alternative content
		clearInterval(int_id);
		loaderClip.unloadMovie();
		loadTimeOut();
	}
	else if (loaderClip.startInstall.toString() == "[type Function]") {
		// updater has loaded successfully AND has determined that it can do the express install
		if (old_si == null) {
			old_si = loaderClip.startInstall;
			loaderClip.startInstall = function() {
				clearInterval(int_id);
				old_si();
			}
			loadComplete();
		}
	}	
}

function loadTimeOut() {
	callbackSWFObject();
}

function callbackSWFObject() {
	getURL("javascript:swfobject.expressInstallCallback();");
}

function loadComplete() {
	loaderClip.redirectURL = _level0.MMredirectURL;
	loaderClip.MMplayerType = _level0.MMplayerType;
	loaderClip.MMdoctitle = _level0.MMdoctitle;
	loaderClip.startUpdate();
}

function installStatus(statusValue) {
	switch (statusValue) {
		case "Download.Complete":
			// Installation is complete.
			// In most cases the browser window that this SWF is hosted in will be closed by the installer or otherwise it has to be closed manually by the end user.
			// The Adobe Flash installer will attempt to reopen the browser window and reload the page containing the SWF. 
		break;
		case "Download.Cancelled":
			// The end user chose "NO" when prompted to install the new player.
			// By default the SWFObject callback function is called to force alternative content.
			callbackSWFObject();
		break;
		case "Download.Failed":
			// The end user failed to download the installer due to a network failure.
			// By default the SWFObject callback function is called to force alternative content.
			callbackSWFObject();
		break;
	}
}
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.