/** * Based on the expressinstall.as class created by Geoff Stearns as part * of the FlashObject library. * * Use this file to invoke the Macromedia Flash Player Express Install functionality * This file is intended for use with the FlashObject embed script. You can download FlashObject * and this file at the following URL: http://blog.deconcept.com/flashobject/ * * Usage: * var ExpressInstall = new ExpressInstall(); * * // test to see if install is needed: * if (ExpressInstall.needsUpdate) { // returns true if update is needed * ExpressInstall.init(); // starts the update * } * * NOTE: Your Flash movie must be at least 214px by 137px in order to use ExpressInstall. * */ class ExpressInstall { public var needsUpdate:Boolean; private var updater:MovieClip; private var hold:MovieClip; public function ExpressInstall(){ // does the user need to update? this.needsUpdate = (_root.MMplayerType == undefined) ? false : true; } public function init():Void{ this.loadUpdater(); } public function loadUpdater():Void { System.security.allowDomain("fpdownload.macromedia.com"); // hope that nothing is at a depth of 10000000, you can change this depth if needed, but you want // it to be on top of your content if you have any stuff on the first frame this.updater = _root.createEmptyMovieClip("expressInstallHolder", 10000000); // register the callback so we know if they cancel or there is an error var _self = this; this.updater.installStatus = _self.onInstallStatus; this.hold = this.updater.createEmptyMovieClip("hold", 1); // can't use movieClipLoader because it has to work in 6.0.65 this.updater.onEnterFrame = function():Void { if(typeof this.hold.startUpdate == 'function'){ _self.initUpdater(); this.onEnterFrame = null; } } var cacheBuster:Number = Math.random(); this.hold.loadMovie("http://fpdownload.macromedia.com/pub/flashplayer/" +"update/current/swf/autoUpdater.swf?"+ cacheBuster); } private function initUpdater():Void{ this.hold.redirectURL = _root.MMredirectURL; this.hold.MMplayerType = _root.MMplayerType; this.hold.MMdoctitle = _root.MMdoctitle; this.hold.startUpdate(); } public function onInstallStatus(msg):Void{ getURL("javascript:dojox.flash.install._onInstallStatus('"+msg+"')"); } }