silverstripe-framework/thirdparty/tinymce_ssmacron/editor_plugin_src.js

53 lines
1.6 KiB
JavaScript
Raw Normal View History

(function() {
var each = tinymce.each;
// TinyMCE will stop loading if it encounters non-existent external script file
// when included through tiny_mce_gzip.php. Only load the external lang package if it is available.
var availableLangs = ['en', 'mi_NZ'];
if(jQuery.inArray(tinymce.settings.language, availableLangs) != -1) {
tinymce.PluginManager.requireLangPack("ssmacron");
}
/**
* Load via:
* HtmlEditorConfig::get('cms')->enablePlugins(array('ssmacron', '../tinymce_ssmacron'))
* HtmlEditorConfig::get('cms')->insertButtonsAfter ('advcode', 'ssmacron');
*/
tinymce.create('tinymce.plugins.InsertMacron', {
getInfo : function() {
return {
longname : 'Button to insert macrons',
author : 'Hamish Friedlander. Heavily based on charmap that comes with TinyMCE',
authorurl : 'http://www.siverstripe.com/',
infourl : 'http://www.silverstripe.com/',
version : "1.0"
};
},
init : function(ed, url) {
// Register commands
ed.addCommand('mceInsertMacron', function() {
ed.windowManager.open({
file : url + '/macron.htm',
width : 350 + parseInt(ed.getLang('advanced.charmap_delta_width', 0)),
height : 150 + parseInt(ed.getLang('advanced.charmap_delta_height', 0)),
inline : true
}, {
plugin_url : url
});
});
// Register buttons
ed.addButton('ssmacron', {
title : t.editor.translate('insertmacron'),
cmd : 'mceInsertMacron',
image : url + '/img/macron.png'
});
}
});
// Adds the plugin class to the list of available TinyMCE plugins
tinymce.PluginManager.add("ssmacron", tinymce.plugins.InsertMacron);
})();