From 98ca84b1dc95cb78fa2bcad300ed882745df7e76 Mon Sep 17 00:00:00 2001 From: Alexey Safronov Date: Tue, 1 Feb 2022 18:07:23 +0300 Subject: [PATCH] Web: Socket: Removed support of "create/delete folders" operations (too many issues on client side) --- .../Notify/Signalr/SignalrServiceClient.cs | 24 ------------------- common/ASC.Socket.IO/app/controllers/files.js | 12 +--------- common/ASC.Socket.IO/app/hubs/files.js | 14 ++--------- .../ASC.Files/Client/src/store/FilesStore.js | 16 ------------- .../FileOperations/FileDeleteOperation.cs | 8 +------ .../FileOperations/FileMoveCopyOperation.cs | 21 ---------------- .../ASC.Files/Core/Utils/SocketManager.cs | 12 ---------- .../Server/Helpers/FilesControllerHelper.cs | 3 --- 8 files changed, 4 insertions(+), 106 deletions(-) diff --git a/common/ASC.Core.Common/Notify/Signalr/SignalrServiceClient.cs b/common/ASC.Core.Common/Notify/Signalr/SignalrServiceClient.cs index 8e6b8ca5bc..487e3b21f6 100644 --- a/common/ASC.Core.Common/Notify/Signalr/SignalrServiceClient.cs +++ b/common/ASC.Core.Common/Notify/Signalr/SignalrServiceClient.cs @@ -356,30 +356,6 @@ namespace ASC.Core.Notify.Signalr ProcessError(error); } } - - public void CreateFolder(T folderId, string room, string data) - { - try - { - MakeRequest("create-folder", new { room, folderId, data }); - } - catch (Exception error) - { - ProcessError(error); - } - } - - public void DeleteFolder(T folderId, string room) - { - try - { - MakeRequest("delete-folder", new { room, folderId }); - } - catch (Exception error) - { - ProcessError(error); - } - } public T GetAgent(string numberId, List contactsResponsibles) { diff --git a/common/ASC.Socket.IO/app/controllers/files.js b/common/ASC.Socket.IO/app/controllers/files.js index 3c847a7add..e4f4878491 100644 --- a/common/ASC.Socket.IO/app/controllers/files.js +++ b/common/ASC.Socket.IO/app/controllers/files.js @@ -1,4 +1,4 @@ -module.exports = (files) => { +module.exports = (files) => { const router = require("express").Router(); router.post("/start-edit", (req, res) => { @@ -21,15 +21,5 @@ module.exports = (files) => { res.end(); }); - router.post("/create-folder", (req, res) => { - files.createFolder(req.body); - res.end(); - }); - - router.post("/delete-folder", (req, res) => { - files.deleteFolder(req.body); - res.end(); - }); - return router; }; diff --git a/common/ASC.Socket.IO/app/hubs/files.js b/common/ASC.Socket.IO/app/hubs/files.js index f4d13796af..e93cc3ec42 100644 --- a/common/ASC.Socket.IO/app/hubs/files.js +++ b/common/ASC.Socket.IO/app/hubs/files.js @@ -1,4 +1,4 @@ -module.exports = (io) => { +module.exports = (io) => { const logger = require("../log.js"); const moment = require("moment"); const filesIO = io; //TODO: Restore .of("/files"); @@ -114,15 +114,5 @@ module.exports = (io) => { modifyFolder(room, "delete", fileId, "file"); } - function createFolder({ folderId, room, data } = {}) { - logger.info(`create new folder ${folderId} in room ${room}`); - modifyFolder(room, "create", folderId, "folder", data); - } - - function deleteFolder({ folderId, room } = {}) { - logger.info(`delete folder ${folderId} in room ${room}`); - modifyFolder(room, "delete", folderId, "folder"); - } - - return { startEdit, stopEdit, createFile, deleteFile, createFolder, deleteFolder }; + return { startEdit, stopEdit, createFile, deleteFile }; }; diff --git a/products/ASC.Files/Client/src/store/FilesStore.js b/products/ASC.Files/Client/src/store/FilesStore.js index d9e23f3673..13d9ab3020 100644 --- a/products/ASC.Files/Client/src/store/FilesStore.js +++ b/products/ASC.Files/Client/src/store/FilesStore.js @@ -89,13 +89,6 @@ class FilesStore { const file = JSON.parse(opt?.data); this.setFiles([file, ...this.files]); - } else if (opt?.type == "folder" && opt?.id) { - const foundIndex = this.files.findIndex((x) => x.id === opt?.id); - if (foundIndex > -1) return; - - const folder = JSON.parse(opt?.data); - - this.setFolders([folder, ...this.folders]); } break; case "delete": @@ -108,15 +101,6 @@ class FilesStore { return index !== foundIndex; }) ); - } else if (opt?.type == "folder" && opt?.id) { - const foundIndex = this.folders.findIndex((x) => x.id === opt?.id); - if (foundIndex == -1) return; - - this.setFolders( - this.folders.filter((_, index) => { - return index !== foundIndex; - }) - ); } break; } diff --git a/products/ASC.Files/Core/Services/WCFService/FileOperations/FileDeleteOperation.cs b/products/ASC.Files/Core/Services/WCFService/FileOperations/FileDeleteOperation.cs index ab62a74588..18a8dd4ffc 100644 --- a/products/ASC.Files/Core/Services/WCFService/FileOperations/FileDeleteOperation.cs +++ b/products/ASC.Files/Core/Services/WCFService/FileOperations/FileDeleteOperation.cs @@ -176,11 +176,8 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations if (FolderDao.IsEmpty(folder.ID)) { FolderDao.DeleteFolder(folder.ID); - filesMessageService.Send(folder, _headers, MessageAction.FolderDeleted, folder.Title); + filesMessageService.Send(folder, _headers, MessageAction.FolderDeleted, folder.Title); - var room = documentServiceHelper.GetSocketFolderRoom(folder.RootFolderId); - socketManager.DeleteFolder(folder.ID, room); - ProcessedFolder(folderId); } } @@ -203,9 +200,6 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations FolderDao.MoveFolder(folder.ID, _trashId, CancellationToken); filesMessageService.Send(folder, _headers, MessageAction.FolderMovedToTrash, folder.Title); } - - var room = documentServiceHelper.GetSocketFolderRoom(folder.RootFolderId); - socketManager.DeleteFolder(folder.ID, room); ProcessedFolder(folderId); } diff --git a/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs b/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs index 63d1c94e0c..555f3bc34b 100644 --- a/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs +++ b/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs @@ -238,9 +238,6 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations if (isToFolder) needToMark.Add(newFolder); - - var roomNew = documentServiceHelper.GetSocketFolderRoom(toFolderId); - socketManager.CreateFolder(newFolder.ID, roomNew, newFolder); if (ProcessedFolder(folderId)) { @@ -263,9 +260,6 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations else if (FolderDao.IsEmpty(folder.ID)) { FolderDao.DeleteFolder(folder.ID); - - var room = documentServiceHelper.GetSocketFolderRoom(folder.RootFolderId); - socketManager.DeleteFolder(folder.ID, room); if (ProcessedFolder(folderId)) { @@ -287,9 +281,6 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations if (isToFolder) needToMark.Add(newFolder); - - var roomNew = documentServiceHelper.GetSocketFolderRoom(toFolderId); - socketManager.CreateFolder(newFolder.ID, roomNew, newFolder); if (ProcessedFolder(folderId)) { @@ -322,12 +313,6 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations if (isToFolder) needToMark.Add(newFolder); - - var roomNew = documentServiceHelper.GetSocketFolderRoom(toFolderId); - socketManager.CreateFolder(newFolder.ID, roomNew, newFolder); - - var room = documentServiceHelper.GetSocketFolderRoom(folder.RootFolderId); - socketManager.DeleteFolder(folder.ID, room); if (ProcessedFolder(folderId)) { @@ -365,12 +350,6 @@ namespace ASC.Web.Files.Services.WCFService.FileOperations if (isToFolder) needToMark.Add(newFolder); - - var roomNew = documentServiceHelper.GetSocketFolderRoom(toFolderId); - socketManager.CreateFolder(newFolder.ID, roomNew, newFolder); - - var roomOld = documentServiceHelper.GetSocketFolderRoom(folder.RootFolderId); - socketManager.DeleteFolder(folder.ID, roomOld); if (ProcessedFolder(folderId)) { diff --git a/products/ASC.Files/Core/Utils/SocketManager.cs b/products/ASC.Files/Core/Utils/SocketManager.cs index 2a1ea3469b..fb2f6b7545 100644 --- a/products/ASC.Files/Core/Utils/SocketManager.cs +++ b/products/ASC.Files/Core/Utils/SocketManager.cs @@ -70,18 +70,6 @@ namespace ASC.Web.Files.Utils public void DeleteFile(T fileId, string room) { _signalrServiceClient.DeleteFile(fileId, room); - } - - public void CreateFolder(T folderId, string room, Folder folder) - { - var serializerSettings = new JsonSerializerSettings(); - serializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); - _signalrServiceClient.CreateFolder(folderId, room, JsonConvert.SerializeObject(FolderWrapperHelper.Get(folder), Formatting.None, serializerSettings)); - } - - public void DeleteFolder(T folderId, string room) - { - _signalrServiceClient.DeleteFolder(folderId, room); } } } \ No newline at end of file diff --git a/products/ASC.Files/Server/Helpers/FilesControllerHelper.cs b/products/ASC.Files/Server/Helpers/FilesControllerHelper.cs index e0a379d67e..b55d777451 100644 --- a/products/ASC.Files/Server/Helpers/FilesControllerHelper.cs +++ b/products/ASC.Files/Server/Helpers/FilesControllerHelper.cs @@ -336,9 +336,6 @@ namespace ASC.Files.Helpers { var folder = FileStorageService.CreateNewFolder(folderId, title); - var room = DocumentServiceHelper.GetSocketFolderRoom(folderId); - SocketManager.CreateFolder(folder.ID, room, folder); - return FolderWrapperHelper.Get(folder); }