Display shared folder error modal for folders containing shared too

This commit is contained in:
DianaXWiki 2026-01-26 15:38:47 +02:00
parent 420c4969c7
commit 53eab89c8a

View File

@ -2166,7 +2166,8 @@ define([
var movedPaths = [];
var sharedF = false;
var draggedSharedFolder = false;
var draggedSharedFolder = false;
var folderContainsSharedFolder = false;
oldPaths.forEach(function (p) {
movedPaths.push(p.path);
if (!sharedF && manager.isInSharedFolder(p.path)) {
@ -2175,11 +2176,17 @@ define([
if (!draggedSharedFolder && p.value && p.value.el && manager.isSharedFolder(p.value.el)) {
draggedSharedFolder = true;
}
if (!folderContainsSharedFolder && p.value && p.value.el && manager.hasSubSharedFolder(p.value.el)) {
folderContainsSharedFolder = true;
}
});
if (draggedSharedFolder && manager.isInSharedFolder(newPath)) {
return void UI.warn(Messages.fo_sharedFolder_move_error);
}
if (manager.isPathIn(newPath, [SHARED_FOLDER])) {
return void UI.warn(Messages.fo_sharedFolder_move_error);
}
if (sharedF && manager.isPathIn(newPath, [TRASH])) {
// TODO create a key here?
// You can't move to YOUR trash documents stored in a shared folder
@ -2187,6 +2194,12 @@ define([
return void UI.warn(Messages.fo_trash_move_error);
//return void deletePaths(null, movedPaths);
}
if (folderContainsSharedFolder) {
var destEl = manager.find(newPath);
if (manager.isInSharedFolder(newPath) || (destEl && manager.hasSubSharedFolder(destEl))) {
return void UI.warn(Messages.fo_sharedFolder_move_error);
}
}
var copy = false;
if (ev.ctrlKey || (ev.metaKey && APP.isMac)) {