HOME


Mini Shell 1.0
DIR: /home/islapiiu/sites/faithlinkint/control-panel/plugins/tinymce/plugins/visualblocks/
Upload File :
Current File : /home/islapiiu/sites/faithlinkint/control-panel/plugins/tinymce/plugins/visualblocks/plugin.js
/**
 
 * plugin.js
 
 *
 
 * Released under LGPL License.
 
 * Copyright (c) 1999-2015 Ephox Corp. All rights reserved
 
 *
 
 * License: http://www.tinymce.com/license
 
 * Contributing: http://www.tinymce.com/contributing
 
 */



/*global tinymce:true */



tinymce.PluginManager.add('visualblocks', function (editor, url) {

    var cssId, visualBlocksMenuItem, enabled;



    // We don't support older browsers like IE6/7 and they don't provide prototypes for DOM objects

    if (!window.NodeList) {

        return;

    }



    function toggleActiveState() {

        var self = this;



        self.active(enabled);



        editor.on('VisualBlocks', function () {

            self.active(editor.dom.hasClass(editor.getBody(), 'mce-visualblocks'));

        });

    }



    editor.addCommand('mceVisualBlocks', function () {

        var dom = editor.dom, linkElm;



        if (!cssId) {

            cssId = dom.uniqueId();

            linkElm = dom.create('link', {

                id: cssId,

                rel: 'stylesheet',

                href: url + '/css/visualblocks.css'

            });



            editor.getDoc().getElementsByTagName('head')[0].appendChild(linkElm);

        }



        // Toggle on/off visual blocks while computing previews

        editor.on("PreviewFormats AfterPreviewFormats", function (e) {

            if (enabled) {

                dom.toggleClass(editor.getBody(), 'mce-visualblocks', e.type == "afterpreviewformats");

            }

        });



        dom.toggleClass(editor.getBody(), 'mce-visualblocks');

        enabled = editor.dom.hasClass(editor.getBody(), 'mce-visualblocks');



        if (visualBlocksMenuItem) {

            visualBlocksMenuItem.active(dom.hasClass(editor.getBody(), 'mce-visualblocks'));

        }



        editor.fire('VisualBlocks');

    });



    editor.addButton('visualblocks', {

        title: 'Show blocks',

        cmd: 'mceVisualBlocks',

        onPostRender: toggleActiveState

    });



    editor.addMenuItem('visualblocks', {

        text: 'Show blocks',

        cmd: 'mceVisualBlocks',

        onPostRender: toggleActiveState,

        selectable: true,

        context: 'view',

        prependToContext: true

    });



    editor.on('init', function () {

        if (editor.settings.visualblocks_default_state) {

            editor.execCommand('mceVisualBlocks', false, null, {skip_focus: true});

        }

    });



    editor.on('remove', function () {

        editor.dom.removeClass(editor.getBody(), 'mce-visualblocks');

    });

});