diff options
author | ewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-03-01 08:00:53 +0000 |
---|---|---|
committer | ewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-03-01 08:00:53 +0000 |
commit | 35be18083c4262c94d58f85609aabfff5a0f9412 (patch) | |
tree | feedddda472660f3aead25f3b8b109c94b5024d6 /mod/tinymce/views/default/js/tinymce.php | |
parent | f68f1d52556f02a85aba9ec8b09ffabbab008446 (diff) | |
download | elgg-35be18083c4262c94d58f85609aabfff5a0f9412.tar.gz elgg-35be18083c4262c94d58f85609aabfff5a0f9412.tar.bz2 |
Refs #2538: Cleaned up custom tinymce code into elgg.tinymce.*.
Refs #2895: TinyMCE makes use of longtext menu
git-svn-id: http://code.elgg.org/elgg/trunk@8533 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/tinymce/views/default/js/tinymce.php')
-rw-r--r-- | mod/tinymce/views/default/js/tinymce.php | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/mod/tinymce/views/default/js/tinymce.php b/mod/tinymce/views/default/js/tinymce.php new file mode 100644 index 000000000..adff52129 --- /dev/null +++ b/mod/tinymce/views/default/js/tinymce.php @@ -0,0 +1,59 @@ +elgg.tinymce.toggleEditor = function(id) { + if (!tinyMCE.get(id)) { + tinyMCE.execCommand('mceAddControl', false, id); + <?php //FIXME This changes all controls on the page!! ?> + $("a.tinymce-toggle-editor").html(elgg.echo('tinymce:remove')); + } else { + tinyMCE.execCommand('mceRemoveControl', false, id); + $("a.tinymce-toggle-editor").html(elgg.echo('tinymce:add')); + } +} + +/** + * TinyMCE initialization script + * + * You can find configuration information here: + * http://tinymce.moxiecode.com/wiki.php/Configuration + */ +elgg.tinymce.init = function() { + tinyMCE.init({ + mode : "specific_textareas", + editor_selector : "elgg-input-longtext", + theme : "advanced", + plugins : "spellchecker,autosave,fullscreen,paste", + relative_urls : false, + remove_script_host : false, + document_base_url : elgg.config.wwwroot, + theme_advanced_buttons1 : "bold,italic,underline,separator,strikethrough,bullist,numlist,undo,redo,link,unlink,image,blockquote,code,pastetext,pasteword,more,fullscreen", + theme_advanced_buttons2 : "", + theme_advanced_buttons3 : "", + theme_advanced_toolbar_location : "top", + theme_advanced_toolbar_align : "left", + theme_advanced_statusbar_location : "bottom", + theme_advanced_resizing : true, + theme_advanced_path : true, + extended_valid_elements : "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name|style],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]", + setup : function(ed) { + //show the number of words + ed.onLoadContent.add(function(ed, o) { + var strip = (tinyMCE.activeEditor.getContent()).replace(/(<([^>]+)>)/ig,""); + var text = " <?php echo elgg_echo('tinymce:word_count'); ?>" + strip.split(' ').length + ' '; + tinymce.DOM.setHTML(tinymce.DOM.get(tinyMCE.activeEditor.id + '_path_row'), text); + }); + + ed.onKeyUp.add(function(ed, e) { + var strip = (tinyMCE.activeEditor.getContent()).replace(/(<([^>]+)>)/ig,""); + var text = " <?php echo elgg_echo('tinymce:word_count'); ?>" + strip.split(' ').length + ' '; + tinymce.DOM.setHTML(tinymce.DOM.get(tinyMCE.activeEditor.id + '_path_row'), text); + }); + }, + content_css: elgg.config.wwwroot + 'mod/tinymce/tinymce_content.css' + }); + + $('.elgg-input-longtext').parents('form').submit(function() { + tinyMCE.triggerSave(); + }); + +}); + +elgg.register_event_handler('init', 'system', elgg.tinymce.init);
\ No newline at end of file |