/wp-content/plugins/tinymce-advanced/mce/emoticons/plugin.js
https://bitbucket.org/carloskikea/helpet · JavaScript · 87 lines · 64 code · 13 blank · 10 comment · 1 complexity · 3cb32fb6da9c8b65dac6e8a695217870 MD5 · raw file
- /**
- * plugin.js (edited for WP)
- *
- * Copyright, Moxiecode Systems AB
- * Released under LGPL License.
- *
- * License: http://www.tinymce.com/license
- * Contributing: http://www.tinymce.com/contributing
- */
- /*global tinymce:true */
- tinymce.PluginManager.add('emoticons', function(editor, url) {
- var emoticons = [{
- smile: ':-)',
- razz: ':-P',
- cool: '8-)',
- wink: ';-)',
- biggrin: ':-D'
- },
- {
- twisted: ':twisted:',
- mrgreen: ':mrgreen:',
- lol: ':lol:',
- rolleyes: ':roll:',
- confused: ':-?'
- },
- {
- cry: ':cry:',
- surprised: ':-o',
- evil: ':evil:',
- neutral: ':-|',
- redface: ':oops:'
- },
- {
- mad: ':-x',
- eek: '8-O',
- sad: ':-(',
- arrow: ':arrow:',
- idea: ':idea:'
- }];
- function getHtml() {
- var emoticonsHtml;
- emoticonsHtml = '<table role="list" class="mce-grid">';
- tinymce.each(emoticons, function( row ) {
- emoticonsHtml += '<tr>';
- tinymce.each( row, function( icon, name ) {
- var emoticonUrl = url + '/img/icon_' + name + '.gif';
- emoticonsHtml += '<td><a href="#" data-mce-alt="' + icon + '" tabindex="-1" ' +
- 'role="option" aria-label="' + icon + '"><img src="' +
- emoticonUrl + '" style="width: 15px; height: 15px; padding: 3px;" role="presentation" alt="' + icon + '" /></a></td>';
- });
- emoticonsHtml += '</tr>';
- });
- emoticonsHtml += '</table>';
- return emoticonsHtml;
- }
- editor.addButton('emoticons', {
- type: 'panelbutton',
- panel: {
- role: 'application',
- autohide: true,
- html: getHtml,
- onclick: function(e) {
- var linkElm = editor.dom.getParent( e.target, 'a' );
- if ( linkElm ) {
- editor.insertContent(
- ' ' + linkElm.getAttribute('data-mce-alt') + ' '
- );
- this.hide();
- }
- }
- },
- tooltip: 'Emoticons'
- });
- });