X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/0214643f72c6aaa8e85eaba2ad27f2ca03ca6401..cca351c564d1bc9eabf6aca2bc13d41218443703:/modules/documentCanvas/transformations.js diff --git a/modules/documentCanvas/transformations.js b/modules/documentCanvas/transformations.js index cd20d2b..4824849 100644 --- a/modules/documentCanvas/transformations.js +++ b/modules/documentCanvas/transformations.js @@ -1,5 +1,7 @@ define(['libs/jquery-1.9.1.min'], function($) { + 'use strict'; + var transformations = {}; transformations.fromXML = { @@ -35,6 +37,20 @@ define(['libs/jquery-1.9.1.min'], function($) { transform(toBlock, 'div'); transform(toInline, 'span'); + toret.find(":not(iframe)").addBack().contents().filter(function() { + return this.nodeType == 3} ).each(function() { + var n = $(this); + var hasText = /\S/g.test(n.text()); + if(!hasText) { + n.remove(); + return; + } + var startSpace = /\s/g.test(n.text().substr(0,1)); + var endSpace = /\s/g.test(n.text().substr(-1)) && n.text().length > 1; + var trimmed = $.trim(n.text()); + n.get(0).data = (startSpace ? ' ' : '') + trimmed + (endSpace ? ' ' : ''); + }); + return toret.children(); }, getMetaData: function(xml) { @@ -54,9 +70,9 @@ define(['libs/jquery-1.9.1.min'], function($) { } transformations.toXML = { - getXML: function(documentDescription) { + getXML: function(body) { - var inner = $(documentDescription.HTMLTree); + var inner = $(body); var toret = $('
'); toret.append(inner); @@ -74,31 +90,14 @@ define(['libs/jquery-1.9.1.min'], function($) { var wlxmlName = split.splice(1).join('-'); var value = wlxmlName === 'class' ? attr.value.replace(/-/g, '.') : attr.value; console.log(name + ': ' + value); - toret.attr(wlxmlName, value); + if(value.length && value.length > 0) + toret.attr(wlxmlName, value); } toret.append(div.contents()); return toret; }); - - var meta = $('