summaryrefslogtreecommitdiffstats
path: root/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak')
-rw-r--r--extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css1
-rw-r--r--extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js1
-rw-r--r--extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js74
-rw-r--r--extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gifbin0 -> 325 bytes
-rw-r--r--extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gifbin0 -> 43 bytes
5 files changed, 76 insertions, 0 deletions
diff --git a/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css
new file mode 100644
index 0000000..c949d58
--- /dev/null
+++ b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css
@@ -0,0 +1 @@
+.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../img/pagebreak.gif) no-repeat center top;}
diff --git a/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js
new file mode 100644
index 0000000..177ea95
--- /dev/null
+++ b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js
@@ -0,0 +1 @@
+(function(){tinymce.create('tinymce.plugins.PageBreakPlugin',{init:function(ed,url){var pb='<img src="'+url+'/img/trans.gif" class="mcePageBreak mceItemNoResize" />',cls='mcePageBreak',sep=ed.getParam('pagebreak_separator','<!-- pagebreak -->'),pbRE;pbRE=new RegExp(sep.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,function(a){return'\\'+a;}),'g');ed.addCommand('mcePageBreak',function(){ed.execCommand('mceInsertContent',0,pb);});ed.addButton('pagebreak',{title:'pagebreak.desc',cmd:cls});ed.onInit.add(function(){if(ed.settings.content_css!==false)ed.dom.loadCSS(url+"/css/content.css");if(ed.theme.onResolveName){ed.theme.onResolveName.add(function(th,o){if(o.node.nodeName=='IMG'&&ed.dom.hasClass(o.node,cls))o.name='pagebreak';});}});ed.onClick.add(function(ed,e){e=e.target;if(e.nodeName==='IMG'&&ed.dom.hasClass(e,cls))ed.selection.select(e);});ed.onNodeChange.add(function(ed,cm,n){cm.setActive('pagebreak',n.nodeName==='IMG'&&ed.dom.hasClass(n,cls));});ed.onBeforeSetContent.add(function(ed,o){o.content=o.content.replace(pbRE,pb);});ed.onPostProcess.add(function(ed,o){if(o.get)o.content=o.content.replace(/<img[^>]+>/g,function(im){if(im.indexOf('class="mcePageBreak')!==-1)im=sep;return im;});});},getInfo:function(){return{longname:'PageBreak',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('pagebreak',tinymce.plugins.PageBreakPlugin);})(); \ No newline at end of file
diff --git a/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js
new file mode 100644
index 0000000..16f5748
--- /dev/null
+++ b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js
@@ -0,0 +1,74 @@
+/**
+ * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $
+ *
+ * @author Moxiecode
+ * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved.
+ */
+
+(function() {
+ tinymce.create('tinymce.plugins.PageBreakPlugin', {
+ init : function(ed, url) {
+ var pb = '<img src="' + url + '/img/trans.gif" class="mcePageBreak mceItemNoResize" />', cls = 'mcePageBreak', sep = ed.getParam('pagebreak_separator', '<!-- pagebreak -->'), pbRE;
+
+ pbRE = new RegExp(sep.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g, function(a) {return '\\' + a;}), 'g');
+
+ // Register commands
+ ed.addCommand('mcePageBreak', function() {
+ ed.execCommand('mceInsertContent', 0, pb);
+ });
+
+ // Register buttons
+ ed.addButton('pagebreak', {title : 'pagebreak.desc', cmd : cls});
+
+ ed.onInit.add(function() {
+ if (ed.settings.content_css !== false)
+ ed.dom.loadCSS(url + "/css/content.css");
+
+ if (ed.theme.onResolveName) {
+ ed.theme.onResolveName.add(function(th, o) {
+ if (o.node.nodeName == 'IMG' && ed.dom.hasClass(o.node, cls))
+ o.name = 'pagebreak';
+ });
+ }
+ });
+
+ ed.onClick.add(function(ed, e) {
+ e = e.target;
+
+ if (e.nodeName === 'IMG' && ed.dom.hasClass(e, cls))
+ ed.selection.select(e);
+ });
+
+ ed.onNodeChange.add(function(ed, cm, n) {
+ cm.setActive('pagebreak', n.nodeName === 'IMG' && ed.dom.hasClass(n, cls));
+ });
+
+ ed.onBeforeSetContent.add(function(ed, o) {
+ o.content = o.content.replace(pbRE, pb);
+ });
+
+ ed.onPostProcess.add(function(ed, o) {
+ if (o.get)
+ o.content = o.content.replace(/<img[^>]+>/g, function(im) {
+ if (im.indexOf('class="mcePageBreak') !== -1)
+ im = sep;
+
+ return im;
+ });
+ });
+ },
+
+ getInfo : function() {
+ return {
+ longname : 'PageBreak',
+ author : 'Moxiecode Systems AB',
+ authorurl : 'http://tinymce.moxiecode.com',
+ infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak',
+ version : tinymce.majorVersion + "." + tinymce.minorVersion
+ };
+ }
+ });
+
+ // Register plugin
+ tinymce.PluginManager.add('pagebreak', tinymce.plugins.PageBreakPlugin);
+})(); \ No newline at end of file
diff --git a/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif
new file mode 100644
index 0000000..acdf408
--- /dev/null
+++ b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif
Binary files differ
diff --git a/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif
new file mode 100644
index 0000000..3884865
--- /dev/null
+++ b/extensions/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif
Binary files differ