Remove editor dependency on ECMAScript 6

It seems that ES6 is not available on Qt 5.5.
This commit is contained in:
Marcio Mazza 2016-12-19 12:58:59 -02:00
parent 7e34dc47dd
commit a1f29c2bd2

View file

@ -313,11 +313,11 @@ var filterHTML = function(html) {
var allowedTags = {}; var allowedTags = {};
for (let tag of [ var TAGS_WITHOUT_ATTRS = ["H1", "H2", "H3", "P", "DIV", "BR", "LI", "UL",
"H1", "H2", "H3", "P", "DIV", "BR", "LI", "UL", "OL", "OL", "B", "I", "U", "BLOCKQUOTE", "CODE", "EM",
"B", "I", "U", "BLOCKQUOTE", "CODE", "EM", "STRONG", "STRONG", "PRE", "SUB", "SUP", "TABLE"];
"PRE", "SUB", "SUP", "TABLE"]) { for (var i = 0; i < TAGS_WITHOUT_ATTRS.length; i++) {
allowedTags[tag] = {"attrs": []}; allowedTags[TAGS_WITHOUT_ATTRS[i]] = {"attrs": []};
} }
allowedTags["A"] = {"attrs": ["HREF"]}; allowedTags["A"] = {"attrs": ["HREF"]};
@ -336,10 +336,10 @@ var filterNode = function(node) {
// elements due to node modifications otherwise // elements due to node modifications otherwise
var nodes = []; var nodes = [];
for (let i=0; i<node.childNodes.length; i++) { for (var i = 0; i < node.childNodes.length; i++) {
nodes.push(node.childNodes[i]); nodes.push(node.childNodes[i]);
} }
for (let i=0; i<nodes.length; i++) { for (var i = 0; i < nodes.length; i++) {
filterNode(nodes[i]); filterNode(nodes[i]);
} }
@ -347,20 +347,20 @@ var filterNode = function(node) {
return; return;
} }
const tag = allowedTags[node.tagName]; var tag = allowedTags[node.tagName];
if (!tag) { if (!tag) {
node.outerHTML = node.innerHTML; node.outerHTML = node.innerHTML;
} else { } else {
// allowed, filter out attributes // allowed, filter out attributes
var toRemove = []; var toRemove = [];
for (let i = 0; i < node.attributes.length; i++) { for (var i = 0; i < node.attributes.length; i++) {
let attr = node.attributes[i]; var attr = node.attributes[i];
let attrName = attr.name.toUpperCase(); var attrName = attr.name.toUpperCase();
if (tag.attrs.indexOf(attrName) == -1) { if (tag.attrs.indexOf(attrName) == -1) {
toRemove.push(attr) toRemove.push(attr);
} }
} }
for (let i = 0; i < toRemove.length; i++) { for (var i = 0; i < toRemove.length; i++) {
node.removeAttributeNode(toRemove[i]); node.removeAttributeNode(toRemove[i]);
} }
} }