X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/ce8d791a5298e0cb2569034aec4c8b57afac97b2..32d8126a6f487c94f0b63365b50a8ed81bd16f8e:/redakcja/static/js/wiki/xslt.js
diff --git a/redakcja/static/js/wiki/xslt.js b/redakcja/static/js/wiki/xslt.js
index 1327fc6c..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) {
@@ -363,7 +366,9 @@ HTMLSerializer.prototype._serializeElement = function(node) {
};
self.result += ' ' + self._join(nsData.prefix, node.getAttribute('x-attr-name-'+this));
- self.result += '="'+node.getAttribute('x-attr-value-'+this) +'"';
+ var value = node.getAttribute('x-attr-value-'+this);
+ value = value.replace(/&/g, '&').replace(/