PHP Classes

File: public/js/tinymce/src/plugins/help/src/main/js/ui/PluginsTab.js

Recommend this page to a friend!
  Classes of Abed Nego Ragil Putra   GoLavaCMS   public/js/tinymce/src/plugins/help/src/main/js/ui/PluginsTab.js   Download  
File: public/js/tinymce/src/plugins/help/src/main/js/ui/PluginsTab.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: GoLavaCMS
Publish content on Web pages with SEO support
Author: By
Last change:
Date: 6 years ago
Size: 3,451 bytes
 

Contents

Class file image Download
/** * PluginsTab.js * * Released under LGPL License. * Copyright (c) 1999-2017 Ephox Corp. All rights reserved * * License: http://www.tinymce.com/license * Contributing: http://www.tinymce.com/contributing */ define( 'tinymce.plugins.help.ui.PluginsTab', [ 'ephox.katamari.api.Arr', 'ephox.katamari.api.Fun', 'ephox.katamari.api.Obj', 'ephox.katamari.api.Strings', 'tinymce.core.EditorManager', 'tinymce.core.util.I18n', 'tinymce.plugins.help.data.PluginUrls' ], function (Arr, Fun, Obj, Strings, tinymce, I18n, PluginUrls) { var makeLink = Fun.curry(Strings.supplant, '<a href="${url}" target="_blank" rel="noopener">${name}</a>'); var maybeUrlize = function (editor, key) { return Arr.find(PluginUrls.urls, function (x) { return x.key === key; }).fold(function () { var getMetadata = editor.plugins[key].getMetadata; return typeof getMetadata === 'function' ? makeLink(getMetadata()) : key; }, function (x) { return makeLink({ name: x.name, url: 'https://www.tinymce.com/docs/plugins/' + x.key }); }); }; var getPluginKeys = function (editor) { var keys = Obj.keys(editor.plugins); return editor.settings.forced_plugins === undefined ? keys : Arr.filter(keys, Fun.not(Fun.curry(Arr.contains, editor.settings.forced_plugins))); }; var pluginLister = function (editor) { var pluginKeys = getPluginKeys(editor); var pluginLis = Arr.map(pluginKeys, function (key) { return '<li>' + maybeUrlize(editor, key) + '</li>'; }); var count = pluginLis.length; var pluginsString = pluginLis.join(''); return '<p><b>' + I18n.translate(['Plugins installed ({0}):', count ]) + '</b></p>' + '<ul>' + pluginsString + '</ul>'; }; var installedPlugins = function (editor) { return { type: 'container', html: '<div style="overflow-y: auto; overflow-x: hidden; max-height: 230px; height: 230px;" data-mce-tabstop="1" tabindex="-1">' + pluginLister(editor) + '</div>', flex: 1 }; }; var availablePlugins = function () { return { type: 'container', html: '<div style="padding: 10px; background: #e3e7f4; height: 100%;" data-mce-tabstop="1" tabindex="-1">' + '<p><b>' + I18n.translate('Premium plugins:') + '</b></p>' + '<ul>' + '<li>PowerPaste</li>' + '<li>Spell Checker Pro</li>' + '<li>Accessibility Checker</li>' + '<li>Advanced Code Editor</li>' + '<li>Enhanced Media Embed</li>' + '<li>Link Checker</li>' + '</ul><br />' + '<p style="float: right;"><a href="https://www.tinymce.com/pricing/?utm_campaign=editor_referral&utm_medium=help_dialog&utm_source=tinymce" target="_blank">' + I18n.translate('Learn more...') + '</a></p>' + '</div>', flex: 1 }; }; var makeTab = function (editor) { return { title: 'Plugins', type: 'container', style: 'overflow-y: auto; overflow-x: hidden;', layout: 'flex', padding: 10, spacing: 10, items: [ installedPlugins(editor), availablePlugins() ] }; }; return { makeTab: makeTab }; } );