source: Dev/trunk/src/client/dojox/flash/ExpressInstall.as @ 532

Last change on this file since 532 was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 2.3 KB
Line 
1/**
2 * Based on the expressinstall.as class created by Geoff Stearns as part
3 * of the FlashObject library.
4 *
5 * Use this file to invoke the Macromedia Flash Player Express Install functionality
6 * This file is intended for use with the FlashObject embed script. You can download FlashObject
7 * and this file at the following URL: http://blog.deconcept.com/flashobject/
8 *
9 * Usage:
10 *          var ExpressInstall = new ExpressInstall();
11 *         
12 *          // test to see if install is needed:
13 *          if (ExpressInstall.needsUpdate) { // returns true if update is needed
14 *              ExpressInstall.init(); // starts the update
15 *          }
16 *
17 *      NOTE: Your Flash movie must be at least 214px by 137px in order to use ExpressInstall.
18 *
19 */
20
21class ExpressInstall{
22        public var needsUpdate:Boolean;
23        private var updater:MovieClip;
24        private var hold:MovieClip;
25       
26        public function ExpressInstall(){
27                // does the user need to update?
28                this.needsUpdate = (_root.MMplayerType == undefined) ? false : true;   
29        }
30
31        public function init():Void{
32                this.loadUpdater();
33        }
34
35        public function loadUpdater():Void{
36                System.security.allowDomain("fpdownload.macromedia.com");
37
38                // hope that nothing is at a depth of 10000000, you can change this depth if needed, but you want
39                // it to be on top of your content if you have any stuff on the first frame
40                this.updater = _root.createEmptyMovieClip("expressInstallHolder", 10000000);
41
42                // register the callback so we know if they cancel or there is an error
43                var _self = this;
44                this.updater.installStatus = _self.onInstallStatus;
45                this.hold = this.updater.createEmptyMovieClip("hold", 1);
46
47                // can't use movieClipLoader because it has to work in 6.0.65
48                this.updater.onEnterFrame = function():Void {
49                        if(typeof this.hold.startUpdate == 'function'){
50                                _self.initUpdater();
51                                this.onEnterFrame = null;
52                        }
53                }
54
55                var cacheBuster:Number = Math.random();
56
57                this.hold.loadMovie("http://fpdownload.macromedia.com/pub/flashplayer/"
58                                                                                                +"update/current/swf/autoUpdater.swf?"+ cacheBuster);
59        }
60
61        private function initUpdater():Void{
62                this.hold.redirectURL = _root.MMredirectURL;
63                this.hold.MMplayerType = _root.MMplayerType;
64                this.hold.MMdoctitle = _root.MMdoctitle;
65                this.hold.startUpdate();
66        }
67
68        public function onInstallStatus(msg):Void{
69                getURL("javascript:dojox.flash.install._onInstallStatus('"+msg+"')");
70        }
71}
Note: See TracBrowser for help on using the repository browser.