summaryrefslogtreecommitdiff
path: root/core/ckeditor_base.js
diff options
context:
space:
mode:
Diffstat (limited to 'core/ckeditor_base.js')
-rw-r--r--core/ckeditor_base.js317
1 files changed, 0 insertions, 317 deletions
diff --git a/core/ckeditor_base.js b/core/ckeditor_base.js
deleted file mode 100644
index 3dd184c..0000000
--- a/core/ckeditor_base.js
+++ /dev/null
@@ -1,317 +0,0 @@
-/**
- * @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.html or http://ckeditor.com/license
- */
-
-/**
- * @fileOverview Contains the first and essential part of the {@link CKEDITOR}
- * object definition.
- */
-
-// #### Compressed Code
-// Must be updated on changes in the script as well as updated in the
-// ckeditor_source.js and ckeditor_basic_source.js files.
-
-// window.CKEDITOR||(window.CKEDITOR=function(){var l=Math.floor(900*Math.random())+100,b=window.CKEDITOR_BASEPATH||"";if(!b)for(var g=document.getElementsByTagName("script"),e=0;e<g.length;e++){var h=g[e].src.match(/(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i);if(h){b=h[1];break}}-1==b.indexOf(":/")&&(b=0===b.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+b:location.href.match(/^[^\?]*\/(?:)/)[0]+b);if(!b)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';var c=function(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",c,!1),j()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",c),j())}catch(a){}},j=function(){for(var a;a=f.shift();)a()},f=[],d={timestamp:"",version:"%VERSION%",revision:"%REV%",rnd:l,_:{pending:[]},status:"unloaded",basePath:b,getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(a){f.push(a);"complete"===document.readyState&&setTimeout(c,1);if(1==f.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",c,!1),window.addEventListener("load",c,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",c);window.attachEvent("onload",c);a=!1;try{a=!window.frameElement}catch(b){}if(document.documentElement.doScroll&&a){var d=function(){try{document.documentElement.doScroll("left")}catch(a){setTimeout(d,1);return}c()};d()}}}},k=window.CKEDITOR_GETURL;if(k){var m=d.getUrl;d.getUrl=function(a){return k.call(d,a)||m.call(d,a)}}return d}());
-
-// The Closure Compiler online service should be used when updating this manually:
-// http://closure-compiler.appspot.com/
-
-// #### Raw code
-// ATTENTION: read the above "Compressed Code" notes when changing this code.
-
-if ( !window.CKEDITOR ) {
- /**
- * This is the API entry point. The entire CKEditor code runs under this object.
- * @class CKEDITOR
- * @singleton
- */
- window.CKEDITOR = (function() {
- var CKEDITOR = {
-
- /**
- * A constant string unique for each release of CKEditor. Its value
- * is used, by default, to build the URL for all resources loaded
- * by the editor code, guaranteeing clean cache results when
- * upgrading.
- *
- * alert( CKEDITOR.timestamp ); // e.g. '87dm'
- */
- timestamp: '', // %REMOVE_LINE%
- /* // %REMOVE_LINE%
- // The production implementation contains a fixed timestamp, unique
- // for each release and generated by the releaser.
- // (Base 36 value of each component of YYMMDDHH - 4 chars total - e.g. 87bm == 08071122)
- timestamp: '%TIMESTAMP%',
- */ // %REMOVE_LINE%
-
- /**
- * Contains the CKEditor version number.
- *
- * alert( CKEDITOR.version ); // e.g. 'CKEditor 3.4.1'
- */
- version: '%VERSION%',
-
- /**
- * Contains the CKEditor revision number.
- * The revision number is incremented automatically, following each
- * modification to the CKEditor source code.
- *
- * alert( CKEDITOR.revision ); // e.g. '3975'
- */
- revision: '%REV%',
-
- /**
- * A 3-digit random integer, valid for the entire life of the CKEDITOR object.
- *
- * alert( CKEDITOR.rnd ); // e.g. 319
- *
- * @property {Number}
- */
- rnd: Math.floor( Math.random() * ( 999 /*Max*/ - 100 /*Min*/ + 1 ) ) + 100 /*Min*/,
-
- /**
- * Private object used to hold core stuff. It should not be used outside of
- * the API code as properties defined here may change at any time
- * without notice.
- *
- * @private
- */
- _: {
- pending: []
- },
-
- /**
- * Indicates the API loading status. The following statuses are available:
- *
- * * **unloaded**: the API is not yet loaded.
- * * **basic_loaded**: the basic API features are available.
- * * **basic_ready**: the basic API is ready to load the full core code.
- * * **loaded**: the API can be fully used.
- *
- * Example:
- *
- * if ( CKEDITOR.status == 'loaded' ) {
- * // The API can now be fully used.
- * doSomething();
- * } else {
- * // Wait for the full core to be loaded and fire its loading.
- * CKEDITOR.on( 'load', doSomething );
- * CKEDITOR.loadFullCore && CKEDITOR.loadFullCore();
- * }
- */
- status: 'unloaded',
-
- /**
- * The full URL for the CKEditor installation directory.
- * It is possible to manually provide the base path by setting a
- * global variable named `CKEDITOR_BASEPATH`. This global variable
- * must be set **before** the editor script loading.
- *
- * alert( CKEDITOR.basePath ); // e.g. 'http://www.example.com/ckeditor/'
- *
- * @property {String}
- */
- basePath: (function() {
- // ATTENTION: fixes to this code must be ported to
- // var basePath in "core/loader.js".
-
- // Find out the editor directory path, based on its <script> tag.
- var path = window.CKEDITOR_BASEPATH || '';
-
- if ( !path ) {
- var scripts = document.getElementsByTagName( 'script' );
-
- for ( var i = 0; i < scripts.length; i++ ) {
- var match = scripts[ i ].src.match( /(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i );
-
- if ( match ) {
- path = match[ 1 ];
- break;
- }
- }
- }
-
- // In IE (only) the script.src string is the raw value entered in the
- // HTML source. Other browsers return the full resolved URL instead.
- if ( path.indexOf( ':/' ) == -1 ) {
- // Absolute path.
- if ( path.indexOf( '/' ) === 0 )
- path = location.href.match( /^.*?:\/\/[^\/]*/ )[ 0 ] + path;
- // Relative path.
- else
- path = location.href.match( /^[^\?]*\/(?:)/ )[ 0 ] + path;
- }
-
- if ( !path )
- throw 'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';
-
- return path;
- })(),
-
- /**
- * Gets the full URL for CKEditor resources. By default, URLs
- * returned by this function contain a querystring parameter ("t")
- * set to the {@link CKEDITOR#timestamp} value.
- *
- * It is possible to provide a custom implementation of this
- * function by setting a global variable named `CKEDITOR_GETURL`.
- * This global variable must be set **before** the editor script
- * loading. If the custom implementation returns nothing (`==null`), the
- * default implementation is used.
- *
- * // e.g. 'http://www.example.com/ckeditor/skins/default/editor.css?t=87dm'
- * alert( CKEDITOR.getUrl( 'skins/default/editor.css' ) );
- *
- * // e.g. 'http://www.example.com/skins/default/editor.css?t=87dm'
- * alert( CKEDITOR.getUrl( '/skins/default/editor.css' ) );
- *
- * // e.g. 'http://www.somesite.com/skins/default/editor.css?t=87dm'
- * alert( CKEDITOR.getUrl( 'http://www.somesite.com/skins/default/editor.css' ) );
- *
- * @param {String} resource The resource whose full URL we want to get.
- * It may be a full, absolute, or relative URL.
- * @returns {String} The full URL.
- */
- getUrl: function( resource ) {
- // If this is not a full or absolute path.
- if ( resource.indexOf( ':/' ) == -1 && resource.indexOf( '/' ) !== 0 )
- resource = this.basePath + resource;
-
- // Add the timestamp, except for directories.
- if ( this.timestamp && resource.charAt( resource.length - 1 ) != '/' && !( /[&?]t=/ ).test( resource ) )
- resource += ( resource.indexOf( '?' ) >= 0 ? '&' : '?' ) + 't=' + this.timestamp;
-
- return resource;
- },
-
- /**
- * Specify a function to execute when the DOM is fully loaded.
- *
- * If called after the DOM has been initialized, the function passed in will
- * be executed immediately.
- *
- * @method
- * @todo
- */
- domReady: (function() {
- // Based on the original jQuery code.
-
- var callbacks = [];
-
- function onReady() {
- try {
- // Cleanup functions for the document ready method
- if ( document.addEventListener ) {
- document.removeEventListener( 'DOMContentLoaded', onReady, false );
- executeCallbacks();
- }
- // Make sure body exists, at least, in case IE gets a little overzealous.
- else if ( document.attachEvent && document.readyState === 'complete' ) {
- document.detachEvent( 'onreadystatechange', onReady );
- executeCallbacks();
- }
- } catch ( er ) {}
- }
-
- function executeCallbacks() {
- var i;
- while ( ( i = callbacks.shift() ) )
- i();
- }
-
- return function( fn ) {
- callbacks.push( fn );
-
- // Catch cases where this is called after the
- // browser event has already occurred.
- if ( document.readyState === 'complete' )
- // Handle it asynchronously to allow scripts the opportunity to delay ready
- setTimeout( onReady, 1 );
-
- // Run below once on demand only.
- if ( callbacks.length != 1 )
- return;
-
- // For IE>8, Firefox, Opera and Webkit.
- if ( document.addEventListener ) {
- // Use the handy event callback
- document.addEventListener( 'DOMContentLoaded', onReady, false );
-
- // A fallback to window.onload, that will always work
- window.addEventListener( 'load', onReady, false );
-
- }
- // If old IE event model is used
- else if ( document.attachEvent ) {
- // ensure firing before onload,
- // maybe late but safe also for iframes
- document.attachEvent( 'onreadystatechange', onReady );
-
- // A fallback to window.onload, that will always work
- window.attachEvent( 'onload', onReady );
-
- // If IE and not a frame
- // continually check to see if the document is ready
- // use the trick by Diego Perini
- // http://javascript.nwbox.com/IEContentLoaded/
- var toplevel = false;
-
- try {
- toplevel = !window.frameElement;
- } catch ( e ) {}
-
- if ( document.documentElement.doScroll && toplevel ) {
- function scrollCheck() {
- try {
- document.documentElement.doScroll( 'left' );
- } catch ( e ) {
- setTimeout( scrollCheck, 1 );
- return;
- }
- onReady();
- }
- scrollCheck();
- }
- }
- };
-
- })()
- };
-
- // Make it possible to override the "url" function with a custom
- // implementation pointing to a global named CKEDITOR_GETURL.
- var newGetUrl = window.CKEDITOR_GETURL;
- if ( newGetUrl ) {
- var originalGetUrl = CKEDITOR.getUrl;
- CKEDITOR.getUrl = function( resource ) {
- return newGetUrl.call( CKEDITOR, resource ) || originalGetUrl.call( CKEDITOR, resource );
- };
- }
-
- return CKEDITOR;
- })();
-}
-
-/**
- * Function called upon loading a custom configuration file that can
- * modify the editor instance configuration ({@link CKEDITOR.editor#config}).
- * It is usually defined inside the custom configuration files that can
- * include developer defined settings.
- *
- * // This is supposed to be placed in the config.js file.
- * CKEDITOR.editorConfig = function( config ) {
- * // Define changes to default configuration here. For example:
- * config.language = 'fr';
- * config.uiColor = '#AADC6E';
- * };
- *
- * @method editorConfig
- * @param {CKEDITOR.config} config A configuration object containing the
- * settings defined for a {@link CKEDITOR.editor} instance up to this
- * function call. Note that not all settings may still be available. See
- * [Configuration Loading Order](http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Setting_Configurations#Configuration_Loading_Order)
- * for details.
- */
-
-// PACKAGER_RENAME( CKEDITOR )