aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2012-02-24 20:07:57 -0800
committerfriendica <info@friendica.com>2012-02-24 20:07:57 -0800
commitcb9d0993f195841a5d8adcaed4faeb7423f13a14 (patch)
tree503020e43d19930eb18c5e9ee9ced8c8d2ffeacd
parentf5c5da742da1154c26277df7ff86eebea6ffe049 (diff)
downloadvolse-hubzilla-cb9d0993f195841a5d8adcaed4faeb7423f13a14.tar.gz
volse-hubzilla-cb9d0993f195841a5d8adcaed4faeb7423f13a14.tar.bz2
volse-hubzilla-cb9d0993f195841a5d8adcaed4faeb7423f13a14.zip
waitman gobble fix for escaping code blocks in tinymce
-rwxr-xr-xlibrary/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js73
1 files changed, 65 insertions, 8 deletions
diff --git a/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js b/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
index e5f716b29..44d1473a9 100755
--- a/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
+++ b/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
@@ -44,9 +44,35 @@
_dfrn_html2bbcode : function(s) {
s = tinymce.trim(s);
- function rep(re, str) {
- s = s.replace(re, str);
- };
+ function rep(re, str) {
+
+ //modify code to keep stuff intact within [code][/code] blocks
+ //Waitman Gobble NO WARRANTY
+
+
+ var o = new Array();
+ var x = s.split("[code]");
+ var i = 0;
+
+ var si = "";
+ si = x.shift();
+ si = si.replace(re,str);
+ o.push(si);
+
+ for (i = 0; i < x.length; i++) {
+ var no = new Array();
+ var j = x.shift();
+ var g = j.split("[/code]");
+ no.push(g.shift());
+ si = g.shift();
+ si = si.replace(re,str);
+ no.push(si);
+ o.push(no.join("[/code]"));
+ }
+
+ s = o.join("[code]");
+
+ };
@@ -123,11 +149,42 @@
// BBCode -> HTML from DFRN dialect
_dfrn_bbcode2html : function(s) {
s = tinymce.trim(s);
-
- function rep(re, str) {
- s = s.replace(re, str);
- };
-
+
+
+ function rep(re, str) {
+
+ //modify code to keep stuff intact within [code][/code] blocks
+ //Waitman Gobble NO WARRANTY
+
+
+ var o = new Array();
+ var x = s.split("[code]");
+ var i = 0;
+
+ var si = "";
+ si = x.shift();
+ si = si.replace(re,str);
+ o.push(si);
+
+ for (i = 0; i < x.length; i++) {
+ var no = new Array();
+ var j = x.shift();
+ var g = j.split("[/code]");
+ no.push(g.shift());
+ si = g.shift();
+ si = si.replace(re,str);
+ no.push(si);
+ o.push(no.join("[/code]"));
+ }
+
+ s = o.join("[code]");
+
+ };
+
+
+
+
+
// example: [b] to <strong>
rep(/\n/gi,"<br />");
rep(/\[b\]/gi,"<strong>");