success: function (data) {
var readonly = "";
var icon = "fa-edit";
- var text = data[0].data;
+ var text = rspamd.escapeHTML(data[0].data);
if (item.editable === false || rspamd.read_only) {
readonly = " readonly";
icon = "fa-eye";
});
};
+ ui.escapeHTML = function (string) {
+ var htmlEscaper = /[&<>"'/`=]/g;
+ var htmlEscapes = {
+ "&": "&",
+ "<": "<",
+ ">": ">",
+ "\"": """,
+ "'": "'",
+ "/": "/",
+ "`": "`",
+ "=": "="
+ };
+ return String(string).replace(htmlEscaper, function (match) {
+ return htmlEscapes[match];
+ });
+ };
+
ui.preprocess_item = function (rspamd, item) {
- function escapeHTML(string) {
- var htmlEscaper = /[&<>"'/`=]/g;
- var htmlEscapes = {
- "&": "&",
- "<": "<",
- ">": ">",
- "\"": """,
- "'": "'",
- "/": "/",
- "`": "`",
- "=": "="
- };
- return String(string).replace(htmlEscaper, function (match) {
- return htmlEscapes[match];
- });
- }
function escape_HTML_array(arr) {
- arr.forEach(function (d, i) { arr[i] = escapeHTML(d); });
+ arr.forEach(function (d, i) { arr[i] = ui.escapeHTML(d); });
}
for (var prop in item) {
if (!sym.name) {
sym.name = key;
}
- sym.name = escapeHTML(sym.name);
+ sym.name = ui.escapeHTML(sym.name);
if (sym.description) {
- sym.description = escapeHTML(sym.description);
+ sym.description = ui.escapeHTML(sym.description);
}
if (sym.options) {
break;
default:
if (typeof item[prop] === "string") {
- item[prop] = escapeHTML(item[prop]);
+ item[prop] = ui.escapeHTML(item[prop]);
}
}
}