ckeditor/samples/old/sample.js
author indvd00m (gotoindvdum[at]gmail[dot]com)
Thu, 15 Dec 2016 18:10:20 +0300
changeset 0 44d330dccc59
permissions -rw-r--r--
Init sample
     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 // Tool scripts for the sample pages.
     7 // This file can be ignored and is not required to make use of CKEditor.
     8 
     9 ( function() {
    10 	CKEDITOR.on( 'instanceReady', function( ev ) {
    11 		// Check for sample compliance.
    12 		var editor = ev.editor,
    13 			meta = CKEDITOR.document.$.getElementsByName( 'ckeditor-sample-required-plugins' ),
    14 			requires = meta.length ? CKEDITOR.dom.element.get( meta[ 0 ] ).getAttribute( 'content' ).split( ',' ) : [],
    15 			missing = [],
    16 			i;
    17 
    18 		if ( requires.length ) {
    19 			for ( i = 0; i < requires.length; i++ ) {
    20 				if ( !editor.plugins[ requires[ i ] ] )
    21 					missing.push( '<code>' + requires[ i ] + '</code>' );
    22 			}
    23 
    24 			if ( missing.length ) {
    25 				var warn = CKEDITOR.dom.element.createFromHtml(
    26 					'<div class="warning">' +
    27 						'<span>To fully experience this demo, the ' + missing.join( ', ' ) + ' plugin' + ( missing.length > 1 ? 's are' : ' is' ) + ' required.</span>' +
    28 					'</div>'
    29 				);
    30 				warn.insertBefore( editor.container );
    31 			}
    32 		}
    33 
    34 		// Set icons.
    35 		var doc = new CKEDITOR.dom.document( document ),
    36 			icons = doc.find( '.button_icon' );
    37 
    38 		for ( i = 0; i < icons.count(); i++ ) {
    39 			var icon = icons.getItem( i ),
    40 				name = icon.getAttribute( 'data-icon' ),
    41 				style = CKEDITOR.skin.getIconStyle( name, ( CKEDITOR.lang.dir == 'rtl' ) );
    42 
    43 			icon.addClass( 'cke_button_icon' );
    44 			icon.addClass( 'cke_button__' + name + '_icon' );
    45 			icon.setAttribute( 'style', style );
    46 			icon.setStyle( 'float', 'none' );
    47 
    48 		}
    49 	} );
    50 } )();