/* * FCKeditor - The text editor for Internet - http://www.fckeditor.net * Copyright (C) 2003-2009 Frederico Caldeira Knabben * * == BEGIN LICENSE == * * Licensed under the terms of any of the following licenses at your * choice: * * - GNU General Public License Version 2 or later (the "GPL") * http://www.gnu.org/licenses/gpl.html * * - GNU Lesser General Public License Version 2.1 or later (the "LGPL") * http://www.gnu.org/licenses/lgpl.html * * - Mozilla Public License Version 1.1 or later (the "MPL") * http://www.mozilla.org/MPL/MPL-1.1.html * * == END LICENSE == * * This is a utility object which can be used to load specific components of * FCKeditor, including all dependencies. */ var FCK_GENERIC = 1 ; var FCK_GENERIC_SPECIFIC = 2 ; var FCK_SPECIFIC = 3 ; var FCKScriptLoader = new Object() ; FCKScriptLoader.FCKeditorPath = '/fckeditor/' ; FCKScriptLoader._Scripts = new Object() ; FCKScriptLoader._LoadedScripts = new Object() ; FCKScriptLoader._IsIE = (/msie/).test( navigator.userAgent.toLowerCase() ) ; FCKScriptLoader.Load = function( scriptName ) { // Check if the script has already been loaded. if ( scriptName in FCKScriptLoader._LoadedScripts ) return ; FCKScriptLoader._LoadedScripts[ scriptName ] = true ; var oScriptInfo = this._Scripts[ scriptName ] ; if ( !oScriptInfo ) { alert( 'FCKScriptLoader: The script "' + scriptName + '" could not be loaded' ) ; return ; } for ( var i = 0 ; i < oScriptInfo.Dependency.length ; i++ ) { this.Load( oScriptInfo.Dependency[i] ) ; } var sBaseScriptName = oScriptInfo.BasePath + scriptName.toLowerCase() ; if ( oScriptInfo.Compatibility == FCK_GENERIC || oScriptInfo.Compatibility == FCK_GENERIC_SPECIFIC ) this._LoadScript( sBaseScriptName + '.js' ) ; if ( oScriptInfo.Compatibility == FCK_SPECIFIC || oScriptInfo.Compatibility == FCK_GENERIC_SPECIFIC ) { if ( this._IsIE ) this._LoadScript( sBaseScriptName + '_ie.js' ) ; else this._LoadScript( sBaseScriptName + '_gecko.js' ) ; } } FCKScriptLoader._LoadScript = function( scriptPathFromSource ) { document.write( '