From 70836bb67d4dd8d4b0df9d5714c9770fd64597eb Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Tue, 9 Nov 2021 14:42:35 +0300 Subject: [PATCH 01/62] nodejs: using innerAlert --- web/documentserver-example/nodejs/views/editor.ejs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/web/documentserver-example/nodejs/views/editor.ejs b/web/documentserver-example/nodejs/views/editor.ejs index 0cac3a38..d87c6cb4 100644 --- a/web/documentserver-example/nodejs/views/editor.ejs +++ b/web/documentserver-example/nodejs/views/editor.ejs @@ -139,10 +139,9 @@ }; var onRequestSendNotify = function(event) { // the user is mentioned in a comment - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; var config = {<%- include("config") %>, From 1cd275188bac55166c874db3ddb135f0701d656b Mon Sep 17 00:00:00 2001 From: Oleg Sinizin Date: Tue, 12 Oct 2021 17:55:23 +0300 Subject: [PATCH 02/62] nodejs: onRequestSaveAs event --- web/documentserver-example/nodejs/app.js | 48 +++++++++++++++++++ .../nodejs/views/editor.ejs | 25 +++++++++- 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/web/documentserver-example/nodejs/app.js b/web/documentserver-example/nodejs/app.js index ca0e27a1..710e172b 100644 --- a/web/documentserver-example/nodejs/app.js +++ b/web/documentserver-example/nodejs/app.js @@ -224,6 +224,54 @@ app.post("/upload", function (req, res) { // define a handler for uploading fil }); }); +app.post("/create", function (req, res) { + var title = req.body.title; + var fileUrl = req.body.url; + + try { + docManager.init(storageFolder, req, res); + docManager.storagePath(""); // mkdir if not exist + + var fileName = docManager.getCorrectName(title); + var userAddress = docManager.curUserHostAddress(); + docManager.historyPath(fileName, userAddress, true); + + urllib.request(fileUrl, {method: "GET"},function(err, data) { + if (configServer.get("maxFileSize") < data.length || data.length <= 0) { // check if the file size exceeds the maximum file size + res.writeHead(200, { "Content-Type": "application/json" }); + res.write(JSON.stringify({ "error": "File size is incorrect" })); + res.end(); + return; + } + + const exts = [].concat(configServer.get("viewedDocs"), configServer.get("editedDocs"), configServer.get("convertedDocs")); // all the supported file extensions + const curExt = fileUtility.getFileExtension(fileName); + + if (exts.indexOf(curExt) == -1) { // check if the file extension is supported + res.writeHead(200, { "Content-Type": "application/json" }); // and write the error status and message to the response + res.write(JSON.stringify({ "error": "File type is not supported" })); + res.end(); + return; + } + + fileSystem.writeFileSync(docManager.storagePath(fileName), data); + + res.writeHead(200, { "Content-Type": "application/json" }); + res.write(JSON.stringify({ "file" : fileName })); + res.end(); + + }); + + } catch (e) { + res.status(500); + res.write(JSON.stringify({ + error: 1, + message: e.message + })); + res.end(); + } +}); + app.post("/convert", function (req, res) { // define a handler for converting files var fileName = fileUtility.getFileName(req.body.filename); diff --git a/web/documentserver-example/nodejs/views/editor.ejs b/web/documentserver-example/nodejs/views/editor.ejs index d87c6cb4..472def6b 100644 --- a/web/documentserver-example/nodejs/views/editor.ejs +++ b/web/documentserver-example/nodejs/views/editor.ejs @@ -39,9 +39,11 @@ var docEditor; - var innerAlert = function (message) { + var innerAlert = function (message, inEditor) { if (console && console.log) console.log(message); + if (inEditor && docEditor) + docEditor.showMessage(message); }; var onAppReady = function () { // the application is loaded into the browser @@ -144,6 +146,23 @@ innerAlert("onRequestSendNotify: " + data); }; + var onRequestSaveAs = function (event) { // the user is trying to save file by clicking Save Copy as... button + var title = event.data.title; + var url = event.data.url; + var data = { + title: title, + url: url + } + let xhr = new XMLHttpRequest(); + xhr.open("POST", "create"); + xhr.setRequestHeader( 'Content-Type', 'application/json'); + xhr.send(JSON.stringify(data)); + xhr.onload = function () { + innerAlert(xhr.responseText); + innerAlert(JSON.parse(xhr.responseText).file, true); + } + } + var config = {<%- include("config") %>, events: { "onAppReady": onAppReady, @@ -167,6 +186,10 @@ config.events.onRequestSendNotify = onRequestSendNotify; } + if (config.editorConfig.createUrl) { + config.events.onRequestSaveAs = onRequestSaveAs; + } + var connectEditor = function () { docEditor = new DocsAPI.DocEditor("iframeEditor", config); fixSize(); From 8e60c60e469c6c3424be5f3c65568f722fd27b41 Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Mon, 6 Sep 2021 17:44:59 +0300 Subject: [PATCH 03/62] nodejs: oform --- web/documentserver-example/nodejs/app.js | 16 +++++++++---- .../nodejs/config/default.json | 1 + .../nodejs/helpers/fileUtility.js | 2 +- .../nodejs/helpers/users.js | 12 ++++++---- .../nodejs/views/index.ejs | 23 +++++++++++-------- 5 files changed, 34 insertions(+), 20 deletions(-) diff --git a/web/documentserver-example/nodejs/app.js b/web/documentserver-example/nodejs/app.js index 710e172b..cfb315ce 100644 --- a/web/documentserver-example/nodejs/app.js +++ b/web/documentserver-example/nodejs/app.js @@ -103,6 +103,7 @@ app.get("/", function (req, res) { // define a handler for default page preloaderUrl: siteUrl + configServer.get('preloaderUrl'), convertExts: configServer.get('convertedDocs').join(","), editedExts: configServer.get('editedDocs').join(","), + fillExts: configServer.get("fillDocs").join(","), storedFiles: docManager.getStoredFiles(), params: docManager.getCustomParams(), users: users, @@ -195,7 +196,7 @@ app.post("/upload", function (req, res) { // define a handler for uploading fil return; } - const exts = [].concat(configServer.get('viewedDocs'), configServer.get('editedDocs'), configServer.get('convertedDocs')); // all the supported file extensions + const exts = [].concat(configServer.get('viewedDocs'), configServer.get('editedDocs'), configServer.get('convertedDocs'), configServer.get("fillDocs")); // all the supported file extensions const curExt = fileUtility.getFileExtension(file.name); const documentType = fileUtility.getFileType(file.name); @@ -244,7 +245,7 @@ app.post("/create", function (req, res) { return; } - const exts = [].concat(configServer.get("viewedDocs"), configServer.get("editedDocs"), configServer.get("convertedDocs")); // all the supported file extensions + const exts = [].concat(configServer.get("viewedDocs"), configServer.get("editedDocs"), configServer.get("convertedDocs"), configServer.get("fillDocs")); // all the supported file extensions const curExt = fileUtility.getFileExtension(fileName); if (exts.indexOf(curExt) == -1) { // check if the file extension is supported @@ -734,6 +735,7 @@ app.get("/editor", function (req, res) { // define a handler for editing docume res.redirect(redirectPath); return; } + fileExt = fileUtility.getFileExtension(fileName); var userAddress = docManager.curUserHostAddress(); if (!docManager.existsSync(docManager.storagePath(fileName, userAddress))) { // if the file with a given name doesn't exist @@ -750,8 +752,12 @@ app.get("/editor", function (req, res) { // define a handler for editing docume type = new RegExp(configServer.get("mobileRegEx"), "i").test(req.get('User-Agent')) ? "mobile" : "desktop"; } - var canEdit = configServer.get('editedDocs').indexOf(fileUtility.getFileExtension(fileName)) != -1; // check if this file can be edited - var submitForm = canEdit && (mode == "edit" || mode == "fillForms"); + var canEdit = configServer.get('editedDocs').indexOf(fileExt) != -1; // check if this file can be edited + if ((mode == "edit" || mode == "fillForms") && configServer.get('fillDocs').indexOf(fileExt) != -1) { + mode = "fillForms"; + canEdit = true; + } + var submitForm = mode == "fillForms" && userid == "uid-1"; var countVersion = 1; @@ -775,7 +781,7 @@ app.get("/editor", function (req, res) { // define a handler for editing docume var historyD = { version: i, key: keyVersion, - url: i == countVersion ? url : (docManager.getlocalFileUri(fileName, i, true) + "/prev" + fileUtility.getFileExtension(fileName)), + url: i == countVersion ? url : (docManager.getlocalFileUri(fileName, i, true) + "/prev" + fileExt), }; if (i > 1 && docManager.existsSync(docManager.diffPath(fileName, userAddress, i-1))) { // check if the path to the file with document versions differences exists diff --git a/web/documentserver-example/nodejs/config/default.json b/web/documentserver-example/nodejs/config/default.json index 5bc3f7b5..1fa06edb 100644 --- a/web/documentserver-example/nodejs/config/default.json +++ b/web/documentserver-example/nodejs/config/default.json @@ -24,6 +24,7 @@ "exampleUrl": null, "viewedDocs": [".pdf", ".djvu", ".xps", ".oxps"], "editedDocs": [".docx", ".xlsx", ".csv", ".pptx", ".txt"], + "fillDocs": [".oform"], "convertedDocs": [".docm", ".doc", ".dotx", ".dotm", ".dot", ".odt", ".fodt", ".ott", ".xlsm", ".xls", ".xltx", ".xltm", ".xlt", ".ods", ".fods", ".ots", ".pptm", ".ppt", ".ppsx", ".ppsm", ".pps", ".potx", ".potm", ".pot", ".odp", ".fodp", ".otp", ".rtf", ".mht", ".html", ".htm", ".xml", ".epub", ".fb2"], "storageFolder": "./files", "storagePath": "/files", diff --git a/web/documentserver-example/nodejs/helpers/fileUtility.js b/web/documentserver-example/nodejs/helpers/fileUtility.js index 39dbd9ee..4dd32c48 100644 --- a/web/documentserver-example/nodejs/helpers/fileUtility.js +++ b/web/documentserver-example/nodejs/helpers/fileUtility.js @@ -63,7 +63,7 @@ fileUtility.fileType = { } // the document extension list -fileUtility.documentExts = [".doc", ".docx", ".docm", ".dot", ".dotx", ".dotm", ".odt", ".fodt", ".ott", ".rtf", ".txt", ".html", ".htm", ".mht", ".xml", ".pdf", ".djvu", ".fb2", ".epub", ".xps", ".oxps"]; +fileUtility.documentExts = [".doc", ".docx", ".oform", ".docm", ".dot", ".dotx", ".dotm", ".odt", ".fodt", ".ott", ".rtf", ".txt", ".html", ".htm", ".mht", ".xml", ".pdf", ".djvu", ".fb2", ".epub", ".xps", ".oxps"]; // the spreadsheet extension list fileUtility.spreadsheetExts = [".xls", ".xlsx", ".xlsm", ".xlt", ".xltx", ".xltm", ".ods", ".fods", ".ots", ".csv"]; diff --git a/web/documentserver-example/nodejs/helpers/users.js b/web/documentserver-example/nodejs/helpers/users.js index b04f71ed..d68474a5 100644 --- a/web/documentserver-example/nodejs/helpers/users.js +++ b/web/documentserver-example/nodejs/helpers/users.js @@ -22,7 +22,8 @@ var descr_user_1 = [ "Can review all the changes", "Can perform all actions with comments", "The file favorite state is undefined", - "Can create files from templates using data from the editor" + "Can create files from templates using data from the editor", + "Can submit forms" ]; var descr_user_2 = [ @@ -30,7 +31,8 @@ var descr_user_2 = [ "Can review only his own changes or changes made by users with no group", "Can view comments, edit his own comments and comments left by users with no group. Can remove his own comments only", "This file is marked as favorite", - "Can create new files from the editor" + "Can create new files from the editor", + "Can’t submit forms" ]; var descr_user_3 = [ @@ -41,7 +43,8 @@ var descr_user_3 = [ "Can’t copy data from the file to clipboard", "Can’t download the file", "Can’t print the file", - "Can create new files from the editor" + "Can create new files from the editor", + "Can’t submit forms" ]; var descr_user_0 = [ @@ -51,7 +54,8 @@ var descr_user_0 = [ "Can perform all actions with comments", "The file favorite state is undefined", "Can't mention others in comments", - "Can't create new files from the editor" + "Can't create new files from the editor", + "Can’t submit forms" ]; var users = [ diff --git a/web/documentserver-example/nodejs/views/index.ejs b/web/documentserver-example/nodejs/views/index.ejs index abb8b3b1..be0ba23e 100644 --- a/web/documentserver-example/nodejs/views/index.ejs +++ b/web/documentserver-example/nodejs/views/index.ejs @@ -202,23 +202,26 @@ <% } %> <% if (storedFiles[i].documentType == "word") { %> - - Open in editor for filling in forms - - <% } else { %> - - <% } %> - <% if (storedFiles[i].documentType == "word") { %> - Open in editor without content control modification <% } else { %> - + <% } %> <% if (storedFiles[i].documentType !== "word" && storedFiles[i].documentType !== "cell") {%> - <%}%> + <% } %> + + <% } else if (fillExts.indexOf(storedFiles[i].name.substring(storedFiles[i].name.lastIndexOf('.')).trim().toLowerCase()) !== -1) { %> + + + + + + + + Open in editor for filling in forms + <% } else { %> <% } %> From 94cb70c0db0c384c75fa38fcf0f08985e37abe5b Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Fri, 22 Oct 2021 15:25:46 +0300 Subject: [PATCH 04/62] nodejs: hide submit button --- web/documentserver-example/nodejs/app.js | 2 +- web/documentserver-example/nodejs/helpers/users.js | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/web/documentserver-example/nodejs/app.js b/web/documentserver-example/nodejs/app.js index cfb315ce..962e4d9b 100644 --- a/web/documentserver-example/nodejs/app.js +++ b/web/documentserver-example/nodejs/app.js @@ -757,7 +757,7 @@ app.get("/editor", function (req, res) { // define a handler for editing docume mode = "fillForms"; canEdit = true; } - var submitForm = mode == "fillForms" && userid == "uid-1"; + var submitForm = mode == "fillForms" && userid == "uid-1" && !1; var countVersion = 1; diff --git a/web/documentserver-example/nodejs/helpers/users.js b/web/documentserver-example/nodejs/helpers/users.js index d68474a5..f60961da 100644 --- a/web/documentserver-example/nodejs/helpers/users.js +++ b/web/documentserver-example/nodejs/helpers/users.js @@ -23,7 +23,7 @@ var descr_user_1 = [ "Can perform all actions with comments", "The file favorite state is undefined", "Can create files from templates using data from the editor", - "Can submit forms" + //"Can submit forms" ]; var descr_user_2 = [ @@ -32,7 +32,7 @@ var descr_user_2 = [ "Can view comments, edit his own comments and comments left by users with no group. Can remove his own comments only", "This file is marked as favorite", "Can create new files from the editor", - "Can’t submit forms" + //"Can’t submit forms" ]; var descr_user_3 = [ @@ -44,7 +44,7 @@ var descr_user_3 = [ "Can’t download the file", "Can’t print the file", "Can create new files from the editor", - "Can’t submit forms" + //"Can’t submit forms" ]; var descr_user_0 = [ @@ -55,7 +55,7 @@ var descr_user_0 = [ "The file favorite state is undefined", "Can't mention others in comments", "Can't create new files from the editor", - "Can’t submit forms" + //"Can’t submit forms" ]; var users = [ From a497401b30400998109f4b666bf68758ed50c6d5 Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Mon, 25 Oct 2021 14:06:51 +0300 Subject: [PATCH 05/62] nodejs: revert filling in docx --- web/documentserver-example/nodejs/app.js | 2 +- web/documentserver-example/nodejs/config/default.json | 2 +- web/documentserver-example/nodejs/views/index.ejs | 9 ++++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/web/documentserver-example/nodejs/app.js b/web/documentserver-example/nodejs/app.js index 962e4d9b..e513dbb6 100644 --- a/web/documentserver-example/nodejs/app.js +++ b/web/documentserver-example/nodejs/app.js @@ -753,7 +753,7 @@ app.get("/editor", function (req, res) { // define a handler for editing docume } var canEdit = configServer.get('editedDocs').indexOf(fileExt) != -1; // check if this file can be edited - if ((mode == "edit" || mode == "fillForms") && configServer.get('fillDocs').indexOf(fileExt) != -1) { + if ((!canEdit && mode == "edit" || mode == "fillForms") && configServer.get('fillDocs').indexOf(fileExt) != -1) { mode = "fillForms"; canEdit = true; } diff --git a/web/documentserver-example/nodejs/config/default.json b/web/documentserver-example/nodejs/config/default.json index 1fa06edb..319b4290 100644 --- a/web/documentserver-example/nodejs/config/default.json +++ b/web/documentserver-example/nodejs/config/default.json @@ -24,7 +24,7 @@ "exampleUrl": null, "viewedDocs": [".pdf", ".djvu", ".xps", ".oxps"], "editedDocs": [".docx", ".xlsx", ".csv", ".pptx", ".txt"], - "fillDocs": [".oform"], + "fillDocs": [".docx", ".oform"], "convertedDocs": [".docm", ".doc", ".dotx", ".dotm", ".dot", ".odt", ".fodt", ".ott", ".xlsm", ".xls", ".xltx", ".xltm", ".xlt", ".ods", ".fods", ".ots", ".pptm", ".ppt", ".ppsx", ".ppsm", ".pps", ".potx", ".potm", ".pot", ".odp", ".fodp", ".otp", ".rtf", ".mht", ".html", ".htm", ".xml", ".epub", ".fb2"], "storageFolder": "./files", "storagePath": "/files", diff --git a/web/documentserver-example/nodejs/views/index.ejs b/web/documentserver-example/nodejs/views/index.ejs index be0ba23e..0f48b6a2 100644 --- a/web/documentserver-example/nodejs/views/index.ejs +++ b/web/documentserver-example/nodejs/views/index.ejs @@ -211,7 +211,14 @@ <% if (storedFiles[i].documentType !== "word" && storedFiles[i].documentType !== "cell") {%> <% } %> - + <% if (fillExts.indexOf(storedFiles[i].name.substring(storedFiles[i].name.lastIndexOf('.')).trim().toLowerCase()) !== -1) { %> + + + Open in editor for filling in forms + + <% } else {%> + + <%}%> <% } else if (fillExts.indexOf(storedFiles[i].name.substring(storedFiles[i].name.lastIndexOf('.')).trim().toLowerCase()) !== -1) { %> From 4d852a23cd1891230b6728b948bba9a860aacf33 Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Mon, 25 Oct 2021 14:10:35 +0300 Subject: [PATCH 06/62] nodejs: filling on mobile --- .../nodejs/public/images/mobile-fill-forms.svg | 6 ++++++ web/documentserver-example/nodejs/views/index.ejs | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 web/documentserver-example/nodejs/public/images/mobile-fill-forms.svg diff --git a/web/documentserver-example/nodejs/public/images/mobile-fill-forms.svg b/web/documentserver-example/nodejs/public/images/mobile-fill-forms.svg new file mode 100644 index 00000000..31db5ea7 --- /dev/null +++ b/web/documentserver-example/nodejs/public/images/mobile-fill-forms.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/documentserver-example/nodejs/views/index.ejs b/web/documentserver-example/nodejs/views/index.ejs index 0f48b6a2..eeccd8cd 100644 --- a/web/documentserver-example/nodejs/views/index.ejs +++ b/web/documentserver-example/nodejs/views/index.ejs @@ -221,7 +221,10 @@ <%}%> <% } else if (fillExts.indexOf(storedFiles[i].name.substring(storedFiles[i].name.lastIndexOf('.')).trim().toLowerCase()) !== -1) { %> - + + + Open in editor for filling in forms for mobile devices + From 9bab8edc3c65b0598344aa0c225fce7e0ebb8c55 Mon Sep 17 00:00:00 2001 From: Oleg Sinizin Date: Mon, 15 Nov 2021 11:47:31 +0300 Subject: [PATCH 07/62] using innerAlert in onRequestSendNotify --- .../csharp-mvc/Views/Home/Editor.aspx | 7 +++---- web/documentserver-example/csharp/DocEditor.aspx | 7 +++---- .../java-spring/src/main/resources/templates/editor.html | 9 +++------ .../java/src/main/webapp/editor.jsp | 7 +++---- web/documentserver-example/php/doceditor.php | 7 +++---- web/documentserver-example/python/templates/editor.html | 7 +++---- .../ruby/app/views/home/editor.html.erb | 7 +++---- 7 files changed, 21 insertions(+), 30 deletions(-) diff --git a/web/documentserver-example/csharp-mvc/Views/Home/Editor.aspx b/web/documentserver-example/csharp-mvc/Views/Home/Editor.aspx index 14d4d78b..698f5146 100644 --- a/web/documentserver-example/csharp-mvc/Views/Home/Editor.aspx +++ b/web/documentserver-example/csharp-mvc/Views/Home/Editor.aspx @@ -185,10 +185,9 @@ }; // the user is mentioned in a comment config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; <% } %> diff --git a/web/documentserver-example/csharp/DocEditor.aspx b/web/documentserver-example/csharp/DocEditor.aspx index 858e3d34..2324251c 100644 --- a/web/documentserver-example/csharp/DocEditor.aspx +++ b/web/documentserver-example/csharp/DocEditor.aspx @@ -190,10 +190,9 @@ }; // the user is mentioned in a comment config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; <% } %> diff --git a/web/documentserver-example/java-spring/src/main/resources/templates/editor.html b/web/documentserver-example/java-spring/src/main/resources/templates/editor.html index 3b3f5cfb..0999b526 100755 --- a/web/documentserver-example/java-spring/src/main/resources/templates/editor.html +++ b/web/documentserver-example/java-spring/src/main/resources/templates/editor.html @@ -149,12 +149,9 @@ }); }; config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - var replaceLink =replaceActionLink(location.href, actionLink); - docEditor.setActionLink(replaceLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceLink); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; } diff --git a/web/documentserver-example/java/src/main/webapp/editor.jsp b/web/documentserver-example/java/src/main/webapp/editor.jsp index 709d8537..836bbe7d 100644 --- a/web/documentserver-example/java/src/main/webapp/editor.jsp +++ b/web/documentserver-example/java/src/main/webapp/editor.jsp @@ -168,10 +168,9 @@ }; // the user is mentioned in a comment config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; <% } %> diff --git a/web/documentserver-example/php/doceditor.php b/web/documentserver-example/php/doceditor.php index 8ef3fb92..5a7cec9c 100644 --- a/web/documentserver-example/php/doceditor.php +++ b/web/documentserver-example/php/doceditor.php @@ -472,10 +472,9 @@ }; // the user is mentioned in a comment config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; diff --git a/web/documentserver-example/python/templates/editor.html b/web/documentserver-example/python/templates/editor.html index 90210c47..c0a117fe 100644 --- a/web/documentserver-example/python/templates/editor.html +++ b/web/documentserver-example/python/templates/editor.html @@ -181,10 +181,9 @@ }; // the user is mentioned in a comment config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; {% endif %} diff --git a/web/documentserver-example/ruby/app/views/home/editor.html.erb b/web/documentserver-example/ruby/app/views/home/editor.html.erb index 472a5851..73cf88b5 100644 --- a/web/documentserver-example/ruby/app/views/home/editor.html.erb +++ b/web/documentserver-example/ruby/app/views/home/editor.html.erb @@ -159,10 +159,9 @@ }; // the user is mentioned in a comment config.events['onRequestSendNotify'] = function (event) { - var actionLink = JSON.stringify(event.data.actionLink); - console.log("onRequestSendNotify:"); - console.log(event.data); - console.log("Link to comment: " + replaceActionLink(location.href, actionLink)); + event.data.actionLink = replaceActionLink(location.href, event.data.actionLink); + var data = JSON.stringify(event.data); + innerAlert("onRequestSendNotify: " + data); }; <% end %> From be7a1e8ab26036d647627dc7d74a2fcdddd67b97 Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Mon, 15 Nov 2021 12:15:09 +0300 Subject: [PATCH 08/62] nodejs: opening uploaded form --- .../nodejs/public/javascripts/jscript.js | 3 ++- web/documentserver-example/nodejs/views/index.ejs | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/web/documentserver-example/nodejs/public/javascripts/jscript.js b/web/documentserver-example/nodejs/public/javascripts/jscript.js index b95a025d..d0e5a7dd 100644 --- a/web/documentserver-example/nodejs/public/javascripts/jscript.js +++ b/web/documentserver-example/nodejs/public/javascripts/jscript.js @@ -198,7 +198,8 @@ if (typeof jQuery != "undefined") { var posExt = fileName.lastIndexOf('.'); posExt = 0 <= posExt ? fileName.substring(posExt).trim().toLowerCase() : ''; - if (EditedExtList.indexOf(posExt) != -1) { + if (EditedExtList.indexOf(posExt) != -1 + || FilledExtList.indexOf(posExt) != -1) { jq("#beginEdit").removeClass("disable"); } }; diff --git a/web/documentserver-example/nodejs/views/index.ejs b/web/documentserver-example/nodejs/views/index.ejs index eeccd8cd..f072ccee 100644 --- a/web/documentserver-example/nodejs/views/index.ejs +++ b/web/documentserver-example/nodejs/views/index.ejs @@ -344,6 +344,7 @@ From f44af24267ce57c27645132123d5a8b3c94a1a93 Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Tue, 12 Oct 2021 11:01:29 +0300 Subject: [PATCH 09/62] nodejs: docxf --- web/documentserver-example/nodejs/config/default.json | 2 +- web/documentserver-example/nodejs/public/assets | 2 +- .../nodejs/public/images/file_docxf.svg | 6 ++++++ .../nodejs/public/stylesheets/stylesheet.css | 4 ++++ web/documentserver-example/nodejs/views/index.ejs | 3 +++ 5 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 web/documentserver-example/nodejs/public/images/file_docxf.svg diff --git a/web/documentserver-example/nodejs/config/default.json b/web/documentserver-example/nodejs/config/default.json index 319b4290..ec446cd4 100644 --- a/web/documentserver-example/nodejs/config/default.json +++ b/web/documentserver-example/nodejs/config/default.json @@ -23,7 +23,7 @@ "preloaderUrl": "web-apps/apps/api/documents/cache-scripts.html", "exampleUrl": null, "viewedDocs": [".pdf", ".djvu", ".xps", ".oxps"], - "editedDocs": [".docx", ".xlsx", ".csv", ".pptx", ".txt"], + "editedDocs": [".docx", ".xlsx", ".csv", ".pptx", ".txt", ".docxf"], "fillDocs": [".docx", ".oform"], "convertedDocs": [".docm", ".doc", ".dotx", ".dotm", ".dot", ".odt", ".fodt", ".ott", ".xlsm", ".xls", ".xltx", ".xltm", ".xlt", ".ods", ".fods", ".ots", ".pptm", ".ppt", ".ppsx", ".ppsm", ".pps", ".potx", ".potm", ".pot", ".odp", ".fodp", ".otp", ".rtf", ".mht", ".html", ".htm", ".xml", ".epub", ".fb2"], "storageFolder": "./files", diff --git a/web/documentserver-example/nodejs/public/assets b/web/documentserver-example/nodejs/public/assets index f9fc118e..346236dd 160000 --- a/web/documentserver-example/nodejs/public/assets +++ b/web/documentserver-example/nodejs/public/assets @@ -1 +1 @@ -Subproject commit f9fc118e433ac604f1bc62fc4aa71fa334e97756 +Subproject commit 346236dd127c29febc9119aeb6d55aad5ad190b4 diff --git a/web/documentserver-example/nodejs/public/images/file_docxf.svg b/web/documentserver-example/nodejs/public/images/file_docxf.svg new file mode 100644 index 00000000..984761e6 --- /dev/null +++ b/web/documentserver-example/nodejs/public/images/file_docxf.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/web/documentserver-example/nodejs/public/stylesheets/stylesheet.css b/web/documentserver-example/nodejs/public/stylesheets/stylesheet.css index b4458e9d..f6d6bd2a 100644 --- a/web/documentserver-example/nodejs/public/stylesheets/stylesheet.css +++ b/web/documentserver-example/nodejs/public/stylesheets/stylesheet.css @@ -157,6 +157,10 @@ label .checkbox { background-image: url("../images/file_pptx.svg"); } +.try-editor.form { + background-image: url("../images/file_docxf.svg"); +} + .create-sample { color: #666666; line-height: 24px; diff --git a/web/documentserver-example/nodejs/views/index.ejs b/web/documentserver-example/nodejs/views/index.ejs index f072ccee..67159243 100644 --- a/web/documentserver-example/nodejs/views/index.ejs +++ b/web/documentserver-example/nodejs/views/index.ejs @@ -56,6 +56,9 @@
  • Presentation
  • +
  • + Master form +