1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
elgg.provide('elgg.tinymce');
/**
* Toggles the tinymce editor
*
* @param {Object} event
* @return void
*/
elgg.tinymce.toggleEditor = function(event) {
event.preventDefault();
var target = $(this).attr('href');
var id = $(target).attr('id');
if (!tinyMCE.get(id)) {
tinyMCE.execCommand('mceAddControl', false, id);
$(this).html(elgg.echo('tinymce:remove'));
} else {
tinyMCE.execCommand('mceRemoveControl', false, id);
$(this).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-toggle-editor').live('click', elgg.tinymce.toggleEditor);
$('.elgg-input-longtext').parents('form').submit(function() {
tinyMCE.triggerSave();
});
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.register_event_handler('init', 'system', elgg.tinymce.init);
|