From 6d6da98b180b0f95fbe8743b8e89be03f903cc49 Mon Sep 17 00:00:00 2001 From: kamiljarmusik Date: Mon, 14 Aug 2023 22:09:35 +0200 Subject: [PATCH 001/221] #2116 XSS Vulnerabilities in 2.8 - fix dataSourceList.jsp, dataPointEdit.jsp, dataPointDetails.jsp, users.jsp, editMeta.jsp, eventTextRenderer.jsp, pointName.jsp, pointProperties.jsp, textRenderer.jsp; added function: removeScriptTag in common.js; added method: DataPointEditDwr.removeScriptTag; --- WebContent/WEB-INF/jsp/dataPointDetails.jsp | 6 +- WebContent/WEB-INF/jsp/dataPointEdit.jsp | 2 +- .../WEB-INF/jsp/dataSourceEdit/editMeta.jsp | 2 +- WebContent/WEB-INF/jsp/dataSourceList.jsp | 6 +- .../jsp/pointEdit/eventTextRenderer.jsp | 16 ++--- .../WEB-INF/jsp/pointEdit/pointName.jsp | 2 +- .../WEB-INF/jsp/pointEdit/pointProperties.jsp | 2 +- .../WEB-INF/jsp/pointEdit/textRenderer.jsp | 26 ++++---- WebContent/WEB-INF/jsp/users.jsp | 8 +-- WebContent/resources/common.js | 4 ++ .../mango/web/dwr/DataPointEditDwr.java | 62 ++++++++++--------- 11 files changed, 72 insertions(+), 64 deletions(-) diff --git a/WebContent/WEB-INF/jsp/dataPointDetails.jsp b/WebContent/WEB-INF/jsp/dataPointDetails.jsp index aa4900086a..659d1fd047 100644 --- a/WebContent/WEB-INF/jsp/dataPointDetails.jsp +++ b/WebContent/WEB-INF/jsp/dataPointDetails.jsp @@ -167,7 +167,7 @@ - ${point.extendedName} + @@ -192,7 +192,7 @@ - ${point.name} + Alt"> - ${view.name} + diff --git a/WebContent/WEB-INF/jsp/dataPointEdit.jsp b/WebContent/WEB-INF/jsp/dataPointEdit.jsp index 6c075105b2..43b3c739aa 100644 --- a/WebContent/WEB-INF/jsp/dataPointEdit.jsp +++ b/WebContent/WEB-INF/jsp/dataPointEdit.jsp @@ -890,7 +890,7 @@ diff --git a/WebContent/WEB-INF/jsp/dataSourceEdit/editMeta.jsp b/WebContent/WEB-INF/jsp/dataSourceEdit/editMeta.jsp index 886caa1186..9d47303391 100644 --- a/WebContent/WEB-INF/jsp/dataSourceEdit/editMeta.jsp +++ b/WebContent/WEB-INF/jsp/dataSourceEdit/editMeta.jsp @@ -28,7 +28,7 @@ pointsArray[pointsArray.length] = { id : ${dp.id}, - name : '${sst:quotEncode(dp.extendedName)}', + name : '', type : '' }; diff --git a/WebContent/WEB-INF/jsp/dataSourceList.jsp b/WebContent/WEB-INF/jsp/dataSourceList.jsp index 6c6f9f4ff9..4ba5e06470 100644 --- a/WebContent/WEB-INF/jsp/dataSourceList.jsp +++ b/WebContent/WEB-INF/jsp/dataSourceList.jsp @@ -130,7 +130,7 @@ - ${listParent.parent.name} + @@ -146,7 +146,7 @@ - ${listParent.parent.state.describe} + - ${point.name} + / diff --git a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp index 97cc43601d..80995416c1 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp @@ -120,19 +120,19 @@ // Figure out which fields to populate with data. - $set("eventTextRendererBinaryZero", "${form.eventTextRenderer.zeroLabel}"); - $set("eventTextRendererBinaryOne", "${form.eventTextRenderer.oneLabel}"); + $set("eventTextRendererBinaryZero", removeScriptTag("${form.eventTextRenderer.zeroLabel}")); + $set("eventTextRendererBinaryOne", removeScriptTag("${form.eventTextRenderer.oneLabel}")); - eventTextRendererEditor.addMultistateEventValue("${msValue.key}", "${msValue.text}"); + eventTextRendererEditor.addMultistateEventValue("${msValue.key}", removeScriptTag("${msValue.text}")); - eventTextRendererEditor.addRangeEventValue("${rgValue.from}", "${rgValue.to}", "${rgValue.text}"); + eventTextRendererEditor.addRangeEventValue("${rgValue.from}", "${rgValue.to}", removeScriptTag("${rgValue.text}")); @@ -197,9 +197,9 @@ var theValue = new this.MultistateEventValue(); theValue.key = theNumericKey; if (text) - theValue.text = text; + theValue.text = removeScriptTag(text); else - theValue.text = $get("eventTextRendererMultistateText"); + theValue.text = removeScriptTag($get("eventTextRendererMultistateText")); multistateEventValues[multistateEventValues.length] = theValue; this.sortMultistateEventValues(); this.refreshMultistateEventList(); @@ -269,9 +269,9 @@ theValue.from = theFrom; theValue.to = theTo; if (text) - theValue.text = text; + theValue.text = removeScriptTag(text); else - theValue.text = $get("eventTextRendererRangeText"); + theValue.text = removeScriptTag($get("eventTextRendererRangeText")); rangeEventValues[rangeEventValues.length] = theValue; this.sortRangeEventValues(); this.refreshRangeList(); diff --git a/WebContent/WEB-INF/jsp/pointEdit/pointName.jsp b/WebContent/WEB-INF/jsp/pointEdit/pointName.jsp index eefd6480ed..6713f9141a 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/pointName.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/pointName.jsp @@ -70,7 +70,7 @@ - ${point.extendedName} + diff --git a/WebContent/WEB-INF/jsp/pointEdit/pointProperties.jsp b/WebContent/WEB-INF/jsp/pointEdit/pointProperties.jsp index 0229afbb55..e4fa2bc449 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/pointProperties.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/pointProperties.jsp @@ -40,7 +40,7 @@ - ${dataSource.name} + diff --git a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp index 81c88cf3c0..78e60e1956 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp @@ -185,34 +185,34 @@ // Figure out which fields to populate with data. - $set("textRendererAnalogFormat", "${form.textRenderer.format}"); - $set("textRendererAnalogSuffix", "${form.textRenderer.suffix}"); + $set("textRendererAnalogFormat", removeScriptTag("${form.textRenderer.format}")); + $set("textRendererAnalogSuffix", removeScriptTag("${form.textRenderer.suffix}")); - $set("textRendererBinaryZero", "${form.textRenderer.zeroLabel}"); + $set("textRendererBinaryZero", removeScriptTag("${form.textRenderer.zeroLabel}")); textRendererEditor.handlerBinaryZeroColour("${form.textRenderer.zeroColour}"); - $set("textRendererBinaryOne", "${form.textRenderer.oneLabel}"); + $set("textRendererBinaryOne", removeScriptTag("${form.textRenderer.oneLabel}")); textRendererEditor.handlerBinaryOneColour("${form.textRenderer.oneColour}"); - textRendererEditor.addMultistateValue("${msValue.key}", "${msValue.text}", "${msValue.colour}"); + textRendererEditor.addMultistateValue("${msValue.key}", removeScriptTag("${msValue.text}"), "${msValue.colour}"); - $set("textRendererPlainSuffix", "${form.textRenderer.suffix}"); + $set("textRendererPlainSuffix", removeScriptTag("${form.textRenderer.suffix}")); - $set("textRendererRangeFormat", "${form.textRenderer.format}"); + $set("textRendererRangeFormat", removeScriptTag("${form.textRenderer.format}")); - textRendererEditor.addRangeValue("${rgValue.from}", "${rgValue.to}", "${rgValue.text}", + textRendererEditor.addRangeValue("${rgValue.from}", "${rgValue.to}", removeScriptTag("${rgValue.text}"), "${rgValue.colour}"); - $set("textRendererTimeFormat", "${form.textRenderer.format}"); + $set("textRendererTimeFormat", removeScriptTag("${form.textRenderer.format}")); $set("textRendererTimeConversionExponent", "${form.textRenderer.conversionExponent}"); @@ -289,9 +289,9 @@ var theValue = new this.MultistateValue(); theValue.key = theNumericKey; if (text) - theValue.text = text; + theValue.text = removeScriptTag(text); else - theValue.text = $get("textRendererMultistateText"); + theValue.text = removeScriptTag($get("textRendererMultistateText")); if (colour) theValue.colour = colour; else @@ -367,9 +367,9 @@ theValue.from = theFrom; theValue.to = theTo; if (text) - theValue.text = text; + theValue.text = removeScriptTag(text); else - theValue.text = $get("textRendererRangeText"); + theValue.text = removeScriptTag($get("textRendererRangeText")); if (colour) theValue.colour = colour; else diff --git a/WebContent/WEB-INF/jsp/users.jsp b/WebContent/WEB-INF/jsp/users.jsp index 5469791503..fe7a1da197 100644 --- a/WebContent/WEB-INF/jsp/users.jsp +++ b/WebContent/WEB-INF/jsp/users.jsp @@ -55,7 +55,7 @@ for (k=0; k; usersProfileHtml += ""; } $("usersProfilesList").innerHTML = usersProfileHtml; @@ -66,14 +66,14 @@ for (i=0; i'; - dshtml += '
'; + dshtml += '
'; dshtml += '
'; if (dataSources[i].points.length > 0) { dshtml += ''; for (j=0; j'; + dshtml += ''; dshtml += ' diff --git a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp index 80995416c1..7625869ca9 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp @@ -120,19 +120,19 @@ // Figure out which fields to populate with data. - $set("eventTextRendererBinaryZero", removeScriptTag("${form.eventTextRenderer.zeroLabel}")); - $set("eventTextRendererBinaryOne", removeScriptTag("${form.eventTextRenderer.oneLabel}")); + $set("eventTextRendererBinaryZero", ''); + $set("eventTextRendererBinaryOne", ''); - eventTextRendererEditor.addMultistateEventValue("${msValue.key}", removeScriptTag("${msValue.text}")); + eventTextRendererEditor.addMultistateEventValue("${msValue.key}", "${msValue.text}"); - eventTextRendererEditor.addRangeEventValue("${rgValue.from}", "${rgValue.to}", removeScriptTag("${rgValue.text}")); + eventTextRendererEditor.addRangeEventValue("${rgValue.from}", "${rgValue.to}", "${rgValue.text}"); @@ -197,9 +197,12 @@ var theValue = new this.MultistateEventValue(); theValue.key = theNumericKey; if (text) - theValue.text = removeScriptTag(text); - else - theValue.text = removeScriptTag($get("eventTextRendererMultistateText")); + theValue.text = text; + else { + var spanNode = document.createElement("span"); + spanNode.textContent = $get("eventTextRendererMultistateText"); + theValue.text = spanNode.innerHTML; + } multistateEventValues[multistateEventValues.length] = theValue; this.sortMultistateEventValues(); this.refreshMultistateEventList(); @@ -269,9 +272,12 @@ theValue.from = theFrom; theValue.to = theTo; if (text) - theValue.text = removeScriptTag(text); - else - theValue.text = removeScriptTag($get("eventTextRendererRangeText")); + theValue.text = text; + else { + var spanNode = document.createElement("span"); + spanNode.textContent = $get("eventTextRendererRangeText"); + theValue.text = spanNode.innerHTML; + } rangeEventValues[rangeEventValues.length] = theValue; this.sortRangeEventValues(); this.refreshRangeList(); diff --git a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp index 78e60e1956..bfcf5e73f0 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp @@ -185,34 +185,34 @@ // Figure out which fields to populate with data. - $set("textRendererAnalogFormat", removeScriptTag("${form.textRenderer.format}")); - $set("textRendererAnalogSuffix", removeScriptTag("${form.textRenderer.suffix}")); + $set("textRendererAnalogFormat", ''); + $set("textRendererAnalogSuffix", ''); - $set("textRendererBinaryZero", removeScriptTag("${form.textRenderer.zeroLabel}")); + $set("textRendererBinaryZero", ''); textRendererEditor.handlerBinaryZeroColour("${form.textRenderer.zeroColour}"); - $set("textRendererBinaryOne", removeScriptTag("${form.textRenderer.oneLabel}")); + $set("textRendererBinaryOne", ''); textRendererEditor.handlerBinaryOneColour("${form.textRenderer.oneColour}"); - textRendererEditor.addMultistateValue("${msValue.key}", removeScriptTag("${msValue.text}"), "${msValue.colour}"); + textRendererEditor.addMultistateValue("${msValue.key}", "${msValue.text}", "${msValue.colour}"); - $set("textRendererPlainSuffix", removeScriptTag("${form.textRenderer.suffix}")); + $set("textRendererPlainSuffix", ''); - $set("textRendererRangeFormat", removeScriptTag("${form.textRenderer.format}")); + $set("textRendererRangeFormat", ''); - textRendererEditor.addRangeValue("${rgValue.from}", "${rgValue.to}", removeScriptTag("${rgValue.text}"), + textRendererEditor.addRangeValue("${rgValue.from}", "${rgValue.to}", "${rgValue.text}", "${rgValue.colour}"); - $set("textRendererTimeFormat", removeScriptTag("${form.textRenderer.format}")); + $set("textRendererTimeFormat", ''); $set("textRendererTimeConversionExponent", "${form.textRenderer.conversionExponent}"); @@ -289,9 +289,12 @@ var theValue = new this.MultistateValue(); theValue.key = theNumericKey; if (text) - theValue.text = removeScriptTag(text); - else - theValue.text = removeScriptTag($get("textRendererMultistateText")); + theValue.text = text; + else { + var spanNode = document.createElement("span"); + spanNode.textContent = $get("textRendererMultistateText"); + theValue.text = spanNode.innerHTML; + } if (colour) theValue.colour = colour; else @@ -367,9 +370,12 @@ theValue.from = theFrom; theValue.to = theTo; if (text) - theValue.text = removeScriptTag(text); - else - theValue.text = removeScriptTag($get("textRendererRangeText")); + theValue.text = text; + else { + var spanNode = document.createElement("span"); + spanNode.textContent = $get("textRendererRangeText"); + theValue.text = spanNode.innerHTML; + } if (colour) theValue.colour = colour; else diff --git a/WebContent/WEB-INF/jsp/watchList.jsp b/WebContent/WEB-INF/jsp/watchList.jsp index 5b6dd8b054..ddf8429545 100644 --- a/WebContent/WEB-INF/jsp/watchList.jsp +++ b/WebContent/WEB-INF/jsp/watchList.jsp @@ -152,8 +152,11 @@ } function addPoint(point, parent) { + var spanNode = document.createElement("span"); + spanNode.id = 'ph'+ point.key +'Name'; + spanNode.textContent = point.value; var pointNode = dojo.widget.createWidget("TreeNode", { - title: " "+ point.value +" "+ + title: " " + spanNode.innerHTML + "", object: point }); @@ -344,7 +347,7 @@ show("p"+ pointId +"Delete"); } - $("p"+ pointId +"Name").innerHTML = pointNames[pointId]; + $("p"+ pointId +"Name").textContent = pointNames[pointId]; // Disable the element in the point list. togglePointTreeIcon(pointId, false); diff --git a/WebContent/resources/common.js b/WebContent/resources/common.js index d51518f70f..86ac2c135c 100644 --- a/WebContent/resources/common.js +++ b/WebContent/resources/common.js @@ -1095,8 +1095,4 @@ function updateChartComparatorComponent(idPrefix, width, height) { } -function removeScriptTag(text) { - return text.replace("", ""); - } } From f6165d5589a737b085933055112e10fe20c0589c Mon Sep 17 00:00:00 2001 From: kamiljarmusik Date: Thu, 17 Aug 2023 10:07:59 +0200 Subject: [PATCH 003/221] #2116 XSS Vulnerabilities in 2.8 - refactoring: added function convertToText to common.js --- WebContent/WEB-INF/jsp/dataSourceEdit.jsp | 22 +++++++++---------- .../jsp/pointEdit/eventTextRenderer.jsp | 8 ++----- .../WEB-INF/jsp/pointEdit/textRenderer.jsp | 8 ++----- WebContent/resources/common.js | 6 +++++ 4 files changed, 20 insertions(+), 24 deletions(-) diff --git a/WebContent/WEB-INF/jsp/dataSourceEdit.jsp b/WebContent/WEB-INF/jsp/dataSourceEdit.jsp index c8ef7e51ca..edb999974a 100644 --- a/WebContent/WEB-INF/jsp/dataSourceEdit.jsp +++ b/WebContent/WEB-INF/jsp/dataSourceEdit.jsp @@ -96,12 +96,7 @@ } function initCB(response) { - for(var i=0;i"); @@ -340,6 +330,14 @@ stopImageFader($("enableAllImg")); writePointList(points); } + + function escapePoints(points) { + for(var i=0; i < points.length; i++) { + var point = points[i]; + point.name = convertToText(point.name); + point.xid = convertToText(point.xid); + } + }
'+ +''; dshtml += ''; dshtml += ' '; @@ -323,7 +323,7 @@ function updateUser(response) { var user = response.data ? response.data.user : response.user; - $("u"+ user.id +"Username").innerHTML = user.username; + $("u"+ user.id +"Username").textContent = user.username; setUserImg(user.admin, user.disabled, $("u"+ user.id +"Img")); } diff --git a/WebContent/resources/common.js b/WebContent/resources/common.js index 86ac2c135c..d51518f70f 100644 --- a/WebContent/resources/common.js +++ b/WebContent/resources/common.js @@ -1095,4 +1095,8 @@ function updateChartComparatorComponent(idPrefix, width, height) { } +function removeScriptTag(text) { + return text.replace("", ""); + } } From 76d73ae166b9d21da94ad51b3155805272368743 Mon Sep 17 00:00:00 2001 From: kamiljarmusik Date: Thu, 17 Aug 2023 09:32:47 +0200 Subject: [PATCH 002/221] #2116 XSS Vulnerabilities in 2.8 - revert DataPointEditDwr.java, common.js; corrected: attractor point list - editVirtual.jsp, eventTextRenderer.jsp, textRenderer.jsp, dataSourceEdit.jsp, watchList.jsp --- WebContent/WEB-INF/jsp/dataSourceEdit.jsp | 12 ++++ .../jsp/dataSourceEdit/editVirtual.jsp | 2 +- .../jsp/pointEdit/eventTextRenderer.jsp | 26 +++++--- .../WEB-INF/jsp/pointEdit/textRenderer.jsp | 36 ++++++----- WebContent/WEB-INF/jsp/watchList.jsp | 7 ++- WebContent/resources/common.js | 4 -- .../mango/web/dwr/DataPointEditDwr.java | 62 +++++++++---------- 7 files changed, 84 insertions(+), 65 deletions(-) diff --git a/WebContent/WEB-INF/jsp/dataSourceEdit.jsp b/WebContent/WEB-INF/jsp/dataSourceEdit.jsp index 56a51ef478..c8ef7e51ca 100644 --- a/WebContent/WEB-INF/jsp/dataSourceEdit.jsp +++ b/WebContent/WEB-INF/jsp/dataSourceEdit.jsp @@ -96,6 +96,12 @@ } function initCB(response) { + for(var i=0;i"); diff --git a/WebContent/WEB-INF/jsp/dataSourceEdit/editVirtual.jsp b/WebContent/WEB-INF/jsp/dataSourceEdit/editVirtual.jsp index 050e48d693..fe51d1f736 100644 --- a/WebContent/WEB-INF/jsp/dataSourceEdit/editVirtual.jsp +++ b/WebContent/WEB-INF/jsp/dataSourceEdit/editVirtual.jsp @@ -398,7 +398,7 @@
diff --git a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp index 7625869ca9..1cbd4ffedc 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp @@ -199,9 +199,7 @@ if (text) theValue.text = text; else { - var spanNode = document.createElement("span"); - spanNode.textContent = $get("eventTextRendererMultistateText"); - theValue.text = spanNode.innerHTML; + theValue.text = convertToText($get("eventTextRendererMultistateText")); } multistateEventValues[multistateEventValues.length] = theValue; this.sortMultistateEventValues(); @@ -274,9 +272,7 @@ if (text) theValue.text = text; else { - var spanNode = document.createElement("span"); - spanNode.textContent = $get("eventTextRendererRangeText"); - theValue.text = spanNode.innerHTML; + theValue.text = convertToText($get("eventTextRendererRangeText")); } rangeEventValues[rangeEventValues.length] = theValue; this.sortRangeEventValues(); diff --git a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp index bfcf5e73f0..a3bc7408af 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp @@ -291,9 +291,7 @@ if (text) theValue.text = text; else { - var spanNode = document.createElement("span"); - spanNode.textContent = $get("textRendererMultistateText"); - theValue.text = spanNode.innerHTML; + theValue.text = convertToText($get("textRendererMultistateText")); } if (colour) theValue.colour = colour; @@ -372,9 +370,7 @@ if (text) theValue.text = text; else { - var spanNode = document.createElement("span"); - spanNode.textContent = $get("textRendererRangeText"); - theValue.text = spanNode.innerHTML; + theValue.text = convertToText($get("textRendererRangeText")); } if (colour) theValue.colour = colour; diff --git a/WebContent/resources/common.js b/WebContent/resources/common.js index 86ac2c135c..2b5719a7e4 100644 --- a/WebContent/resources/common.js +++ b/WebContent/resources/common.js @@ -1095,4 +1095,10 @@ function updateChartComparatorComponent(idPrefix, width, height) { } +function convertToText(content) { + var node = document.createElement("span"); + node.textContent = content; + return node.innerHTML; +} + From e1295c4f5395fa4c099dd92884700fc56aa9520e Mon Sep 17 00:00:00 2001 From: kamiljarmusik Date: Thu, 17 Aug 2023 20:29:34 +0200 Subject: [PATCH 004/221] #2116 XSS Vulnerabilities in 2.8 - corrected --- WebContent/WEB-INF/jsp/dataSourceEdit.jsp | 3 +-- .../jsp/pointEdit/eventTextRenderer.jsp | 6 ++--- .../WEB-INF/jsp/pointEdit/textRenderer.jsp | 24 +++++++------------ 3 files changed, 11 insertions(+), 22 deletions(-) diff --git a/WebContent/WEB-INF/jsp/dataSourceEdit.jsp b/WebContent/WEB-INF/jsp/dataSourceEdit.jsp index edb999974a..abc91b0d35 100644 --- a/WebContent/WEB-INF/jsp/dataSourceEdit.jsp +++ b/WebContent/WEB-INF/jsp/dataSourceEdit.jsp @@ -96,7 +96,6 @@ } function initCB(response) { - escapePoints(response.data.points); writePointList(response.data.points); writeAlarms(response.data.alarms); @@ -178,6 +177,7 @@ if (currentPoint) stopImageFader("editImg"+ currentPoint.id); + escapePoints(points); dwr.util.removeAllRows("pointsList"); dwr.util.addRows("pointsList", points, pointListColumnFunctions, pointListOptions); } @@ -264,7 +264,6 @@ if (response.hasMessages) showDwrMessages(response.messages); else { - escapePoints(response.data.points); writePointList(response.data.points); editPoint(response.data.id); showMessage("pointMessage", ""); diff --git a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp index 1cbd4ffedc..7006605c68 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/eventTextRenderer.jsp @@ -42,7 +42,7 @@ @@ -52,7 +52,7 @@ @@ -120,8 +120,6 @@ // Figure out which fields to populate with data. - $set("eventTextRendererBinaryZero", ''); - $set("eventTextRendererBinaryOne", ''); diff --git a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp index a3bc7408af..2e10ced398 100644 --- a/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp +++ b/WebContent/WEB-INF/jsp/pointEdit/textRenderer.jsp @@ -40,13 +40,13 @@ - + @@ -55,7 +55,7 @@
- +
"/>
- +
"/>
- + "/>
"/>