src/aria/utils/Bridge.js
function (config, options) {
            if (this._subWindow) {
                if (this._subWindow.closed) {
                    // we probably did not catch correctly the unload event
                    this.close();
                } else {
                    // TODO: log error
                    return;
                }
            }

            var skinPath = config.skinPath;
            if (!skinPath && !(aria.widgets && aria.widgets.AriaSkin)) {
                var frameworkHref = ariaUtilsFrameATLoader.getFrameworkHref();
                var urlMatch = /aria\/aria-?templates-([^\/]+)\.js/.exec(frameworkHref);
                if (urlMatch && urlMatch.length > 1) {
                    skinPath = ariaCoreDownloadMgr.resolveURL("aria/css/atskin-" + urlMatch[1] + ".js", true);
                } else if (/aria\/bootstrap.js/.test(frameworkHref)) {
                    skinPath = ariaCoreDownloadMgr.resolveURL("aria/css/atskin.js", true);
                } else {
                    return;
                }
            }

            // default options
            if (!options) {
                options = "width=1024, height=800";
            }

            // create sub window. Use date to create a new one each time
            this._subWindow = Aria.$frameworkWindow.open("", config.title + ("" + (new Date()).getTime()), options);
            // this is for creating the same window (usefull for debugging)
            //this._subWindow = Aria.$frameworkWindow.open("", config.title, options);

            // The _subWindow can be null if the popup blocker is enabled in the browser
            if (this._subWindow == null) {
                return;
            }

            this._config = config;
            ariaUtilsAriaWindow.attachWindow();
            ariaUtilsAriaWindow.$on({
                "unloadWindow" : this._onMainWindowUnload,
                scope : this
            });

            ariaUtilsFrameATLoader.loadAriaTemplatesInFrame(this._subWindow, {
                fn: this._onFrameLoaded,
                scope: this
            }, {
                crossDomain: true,
                skipSkinCopy: !!skinPath,
                extraScripts: skinPath ? [skinPath] : [],
                keepLoadingIndicator: true,
                onBeforeLoadingAria: {
                    fn: this._registerOnPopupUnload,
                    scope: this
                }
            });
        }
function (config, options) {
            if (this._subWindow) {
                if (this._subWindow.closed) {
                    // we probably did not catch correctly the unload event
                    this.close();
                } else {
                    // TODO: log error
                    return;
                }
            }

            var skinPath = config.skinPath;
            if (!skinPath && !(aria.widgets && aria.widgets.AriaSkin)) {
                var frameworkHref = ariaUtilsFrameATLoader.getFrameworkHref();
                var urlMatch = /aria\/aria-?templates-([^\/]+)\.js/.exec(frameworkHref);
                if (urlMatch && urlMatch.length > 1) {
                    skinPath = ariaCoreDownloadMgr.resolveURL("aria/css/atskin-" + urlMatch[1] + ".js", true);
                } else if (/aria\/bootstrap.js/.test(frameworkHref)) {
                    skinPath = ariaCoreDownloadMgr.resolveURL("aria/css/atskin.js", true);
                } else {
                    return;
                }
            }

            // default options
            if (!options) {
                options = "width=1024, height=800";
            }

            // create sub window. Use date to create a new one each time
            this._subWindow = Aria.$frameworkWindow.open("", config.title + ("" + (new Date()).getTime()), options);
            // this is for creating the same window (usefull for debugging)
            //this._subWindow = Aria.$frameworkWindow.open("", config.title, options);

            // The _subWindow can be null if the popup blocker is enabled in the browser
            if (this._subWindow == null) {
                return;
            }

            this._config = config;
            ariaUtilsAriaWindow.attachWindow();
            ariaUtilsAriaWindow.$on({
                "unloadWindow" : this._onMainWindowUnload,
                scope : this
            });

            ariaUtilsFrameATLoader.loadAriaTemplatesInFrame(this._subWindow, {
                fn: this._onFrameLoaded,
                scope: this
            }, {
                crossDomain: true,
                skipSkinCopy: !!skinPath,
                extraScripts: skinPath ? [skinPath] : [],
                keepLoadingIndicator: true,
                onBeforeLoadingAria: {
                    fn: this._registerOnPopupUnload,
                    scope: this
                }
            });
        }
function ( config , options ) { if ( this . _subWindow ) { if ( this . _subWindow . closed ) { // we probably did not catch correctly the unload event this . close ( ) ; } else { // TODO: log error return ; } } var skinPath = config . skinPath ; if ( ! skinPath && ! ( aria . widgets && aria . widgets . AriaSkin ) ) { var frameworkHref = ariaUtilsFrameATLoader . getFrameworkHref ( ) ; var urlMatch = / aria\/aria-?templates-([^\/]+)\.js / . exec ( frameworkHref ) ; if ( urlMatch && urlMatch . length > 1 ) { skinPath = ariaCoreDownloadMgr . resolveURL ( "aria/css/atskin-" + urlMatch [ 1 ] + ".js" , true ) ; } else if ( / aria\/bootstrap.js / . test ( frameworkHref ) ) { skinPath = ariaCoreDownloadMgr . resolveURL ( "aria/css/atskin.js" , true ) ; } else { return ; } } // default options if ( ! options ) { options = "width=1024, height=800" ; } // create sub window. Use date to create a new one each time this . _subWindow = Aria . $frameworkWindow . open ( "" , config . title + ( "" + ( new Date ( ) ) . getTime ( ) ) , options ) ; // this is for creating the same window (usefull for debugging) //this._subWindow = Aria.$frameworkWindow.open("", config.title, options); // The _subWindow can be null if the popup blocker is enabled in the browser if ( this . _subWindow == null ) { return ; } this . _config = config ; ariaUtilsAriaWindow . attachWindow ( ) ; ariaUtilsAriaWindow . $on ( { "unloadWindow" : this . _onMainWindowUnload , scope : this } ) ; ariaUtilsFrameATLoader . loadAriaTemplatesInFrame ( this . _subWindow , { fn : this . _onFrameLoaded , scope : this } , { crossDomain : true , skipSkinCopy : ! ! skinPath , extraScripts : skinPath ? [ skinPath ] : [ ] , keepLoadingIndicator : true , onBeforeLoadingAria : { fn : this . _registerOnPopupUnload , scope : this } } ) ; }
Create external display with given module controller classpath
@param {Object} config moduleControllerClasspath, displayClasspath, skinPath and title
@param {String} options for opening the subwindow. Default is "width=1024, height=800"
Create external display with given module controller classpath