From a6bdccd4eff6dfc8ae293d829895a1d7d801580b Mon Sep 17 00:00:00 2001 From: Book Pauk Date: Thu, 6 Feb 2020 21:04:40 +0700 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=BA=D0=BE=D0=BD=D0=B2=D0=B5=D1=80=D1=82=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=B8=D0=B7=20?= =?UTF-8?q?=D0=B1=D1=83=D1=84=D0=B5=D1=80=D0=B0=20=D0=BE=D0=B1=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Reader/LoaderPage/PasteTextPage/PasteTextPage.vue | 2 +- client/share/utils.js | 9 +++++++++ server/core/Reader/BookConverter/ConvertHtml.js | 6 ++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue b/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue index d255d935..f3383f16 100644 --- a/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue +++ b/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue @@ -70,7 +70,7 @@ class PasteTextPage extends Vue { } loadBuffer() { - this.$emit('load-buffer', {buffer: `${this.bookTitle}${this.$refs.textArea.value}`}); + this.$emit('load-buffer', {buffer: `${utils.escapeXml(this.bookTitle)}${this.$refs.textArea.value}`}); this.close(); } diff --git a/client/share/utils.js b/client/share/utils.js index 1d0357da..a171a42f 100644 --- a/client/share/utils.js +++ b/client/share/utils.js @@ -193,4 +193,13 @@ export function parseQuery(str) { query[first] = [query[first], second]; } return query; +} + +export function escapeXml(str) { + return str.replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, ''') + ; } \ No newline at end of file diff --git a/server/core/Reader/BookConverter/ConvertHtml.js b/server/core/Reader/BookConverter/ConvertHtml.js index 4131436f..8df01185 100644 --- a/server/core/Reader/BookConverter/ConvertHtml.js +++ b/server/core/Reader/BookConverter/ConvertHtml.js @@ -6,6 +6,7 @@ class ConvertHtml extends ConvertBase { check(data, opts) { const {dataType} = opts; + //html? if (dataType && (dataType.ext == 'html' || dataType.ext == 'xml')) return {isText: false}; @@ -14,6 +15,11 @@ class ConvertHtml extends ConvertBase { return {isText: true}; } + //из буфера обмена? + if (data.toString().indexOf('') == 0) { + return {isText: false}; + } + return false; }