ckeditor/samples/js/sample.js
changeset 0 44d330dccc59
equal deleted inserted replaced
-1:000000000000 0:44d330dccc59
       
     1 /**
       
     2  * Copyright (c) 2003-2016, CKSource - Frederico Knabben. All rights reserved.
       
     3  * For licensing, see LICENSE.md or http://ckeditor.com/license
       
     4  */
       
     5 
       
     6 /* exported initSample */
       
     7 
       
     8 if ( CKEDITOR.env.ie && CKEDITOR.env.version < 9 )
       
     9 	CKEDITOR.tools.enableHtml5Elements( document );
       
    10 
       
    11 // The trick to keep the editor in the sample quite small
       
    12 // unless user specified own height.
       
    13 CKEDITOR.config.height = 150;
       
    14 CKEDITOR.config.width = 'auto';
       
    15 
       
    16 var initSample = ( function() {
       
    17 	var wysiwygareaAvailable = isWysiwygareaAvailable(),
       
    18 		isBBCodeBuiltIn = !!CKEDITOR.plugins.get( 'bbcode' );
       
    19 
       
    20 	return function() {
       
    21 		var editorElement = CKEDITOR.document.getById( 'editor' );
       
    22 
       
    23 		// :(((
       
    24 		if ( isBBCodeBuiltIn ) {
       
    25 			editorElement.setHtml(
       
    26 				'Hello world!\n\n' +
       
    27 				'I\'m an instance of [url=http://ckeditor.com]CKEditor[/url].'
       
    28 			);
       
    29 		}
       
    30 
       
    31 		// Depending on the wysiwygare plugin availability initialize classic or inline editor.
       
    32 		if ( wysiwygareaAvailable ) {
       
    33 			CKEDITOR.replace( 'editor' );
       
    34 		} else {
       
    35 			editorElement.setAttribute( 'contenteditable', 'true' );
       
    36 			CKEDITOR.inline( 'editor' );
       
    37 
       
    38 			// TODO we can consider displaying some info box that
       
    39 			// without wysiwygarea the classic editor may not work.
       
    40 		}
       
    41 	};
       
    42 
       
    43 	function isWysiwygareaAvailable() {
       
    44 		// If in development mode, then the wysiwygarea must be available.
       
    45 		// Split REV into two strings so builder does not replace it :D.
       
    46 		if ( CKEDITOR.revision == ( '%RE' + 'V%' ) ) {
       
    47 			return true;
       
    48 		}
       
    49 
       
    50 		return !!CKEDITOR.plugins.get( 'wysiwygarea' );
       
    51 	}
       
    52 } )();
       
    53