tinymce.PluginManager.add('cpHeadlines', function(editor, url) { editor.addShortcut('shift+alt+D', 'Convert to Conclusion', () => { headlineConclusion(); }); editor.addButton('cpHeadlines', { type: 'menubutton', image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAdgAAAHYBTnsmCAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAADBSURBVDiNxdKhbgJREAXQs6RB9g/qKxoMpuEDKorBgCj/0VBdzU+QKjQhddUIPFUIQpO62l2zNUO6IbCvBdGbTDK5M+/OzM3jB5e48UdcVPI7TDDALLgWHtE88n4OHfQxRokCw2h4Ce5Y5LA6UHgPgWlCoGzgGlmsDmvcR/6RsGBb9eALS3TxGdwIbzUeLBID0sgS9R4e9rgCT9hA4+wVzkXqhCvc1tS3qQHP6v/B6ldr/isOnZCjvWs4xcQCryHkG8jzO5TGsR9xAAAAAElFTkSuQmCC', tooltip: 'cPad Headlines', menu: [ { text: 'Headline Counter', onclick: function() { headlineCounters() } }, { text: 'Headline *', onclick: function() { HeadlineChar('*') } }, { text: 'Headline !', onclick: function() { HeadlineChar('!') } }, { text: 'Headline #', onclick: function() { HeadlineChar('#') } }, { text: 'Conclusion', onclick: function() { headlineConclusion() } }, ] }); function headlineCounters() { editor.formatter.register('itemCounter', { block: 'h2', classes: 'item-num', attributes: { 'data-char': '' }, }); try { editor.formatter.remove('itemChar'); } catch (error) { } editor.formatter.apply('itemCounter'); } function HeadlineChar(char) { editor.formatter.register('itemChar', { block: 'h2', classes: 'item-star', attributes: { 'data-char': char }, }); editor.formatter.apply('itemChar'); } function headlineConclusion() { editor.formatter.register('itemConclusion', { block: 'p', classes: 'item-conclusion', attributes: { 'data-title': 'CONCLUSION' } }); try { editor.formatter.remove('itemChar'); } catch (error) { } editor.formatter.apply('itemConclusion'); } });