/** * 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 = ''; tinymce.each(emoticons, function( row ) { emoticonsHtml += ''; tinymce.each( row, function( icon, name ) { var emoticonUrl = url + '/img/icon_' + name + '.gif'; emoticonsHtml += ''; }); emoticonsHtml += ''; }); emoticonsHtml += '
' + icon + '
'; 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' }); });