X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/2f9c60b76f3ab4e69d794a6bb14388a81ff29eb7..b31136a9f521897ad2552126adfd4d5e2288bb15:/redakcja/static/js/wiki/xslt.js
diff --git a/redakcja/static/js/wiki/xslt.js b/redakcja/static/js/wiki/xslt.js
index 0390fd45..a97322a5 100644
--- a/redakcja/static/js/wiki/xslt.js
+++ b/redakcja/static/js/wiki/xslt.js
@@ -59,12 +59,15 @@ function withThemes(code_block, onError)
function xml2html(options) {
+ ALIEN_REGEX = /([^a-zA-Z0-9Ä
ÄÄÅÅóÅźżÄÄÄÅÅÃÅŹŻ\s<>«»\\*_!,:;?&%."'=#()\/-]+)/g;
+
withStylesheets(function() {
var xml = options.xml.replace(/\/(\s+)/g, '
$1');
- xml = xml.replace(/([^a-zA-Z0-9Ä
ÄÄÅÅóÅźżÄÄÄÅÅÃÅŹŻ\s<>«»\\*_!,:;?%."'=#()\/-]+)/g, '$1');
+// xml = xml.replace(/([^a-zA-Z0-9Ä
ÄÄÅÅóÅźżÄÄÄÅÅÃÅŹŻ\s<>«»\\*_!,:;?&%."'=#()\/-]+)/g, '$1');
var parser = new DOMParser();
var serializer = new XMLSerializer();
var doc = parser.parseFromString(xml, 'text/xml');
+ walk(doc.firstChild, wrapInTag(ALIEN_REGEX, 'alien'))
var error = $('parsererror', doc);
if (error.length == 0) {
@@ -253,7 +256,7 @@ HTMLSerializer.prototype.serialize = function(rootElement, stripOuter)
break;
case TEXT_NODE:
self.result += text_buffer;
- text_buffer = token.node.nodeValue;
+ text_buffer = token.node.nodeValue.replace(/&/g, '&').replace(/