From bd7ff4d9cdb6707be5080dbc80db5b4bce47ff4a Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 9 Nov 2025 19:55:07 -0500 Subject: [PATCH] release(v1.9.1): customizable folder colors + live preview; improved tree persistence; accent button; manual sync script --- CHANGELOG.md | 34 + public/api/folder/getFolderColors.php | 17 + public/api/folder/saveFolderColor.php | 17 + public/css/styles.css | 93 ++- public/index.html | 3 + public/js/fileActions.js | 7 + public/js/folderManager.js | 686 ++++++++++++----- public/js/i18n.js | 8 +- public/js/trashRestoreDelete.js | 3 +- public/js/upload.js | 3 +- resources/light-color-folder.png | Bin 0 -> 420825 bytes scripts/manual-sync.sh | 50 ++ src/controllers/FolderController.php | 1004 +++++++++++++++++++------ src/lib/ACL.php | 390 ++++++---- src/models/FolderMeta.php | 90 +++ 15 files changed, 1830 insertions(+), 575 deletions(-) create mode 100644 public/api/folder/getFolderColors.php create mode 100644 public/api/folder/saveFolderColor.php create mode 100644 resources/light-color-folder.png create mode 100644 scripts/manual-sync.sh create mode 100644 src/models/FolderMeta.php diff --git a/CHANGELOG.md b/CHANGELOG.md index aced9c4..e6ecaa4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,39 @@ # Changelog +## Changes 11/9/2025 (v1.9.1) + +release(v1.9.1): customizable folder colors + live preview; improved tree persistence; accent button; manual sync script + +### Highlights v1.9.1 + +- 🎨 Per-folder colors with live SVG preview and consistent styling in light/dark modes. +- 📄 Folder icons auto-refresh when contents change (no full page reload). +- 🧭 Drag-and-drop breadcrumb fallback for folder→folder moves. +- 🛠️ Safer upgrade helper script to rsync app files without touching data. + +- feat(colors): add per-folder color customization + - New endpoints: GET /api/folder/getFolderColors.php and POST /api/folder/saveFolderColor.php + - AuthZ: reuse canRename for “customize folder”, validate hex, and write atomically to metadata/folder_colors.json. + - Read endpoint filters map by ACL::canRead before returning to the user. + - Frontend: load/apply colors to tree rows; persist on move/rename; API helpers saveFolderColor/getFolderColors. + +- feat(ui): color-picker modal with live SVG folder preview + - Shows preview that updates as you pick; supports Save/Reset; protects against accidental toggle clicks. + +- feat(controls): “Color folder” button in Folder Management card + - New `.btn-color-folder` with accent palette (#008CB4), hover/active/focus states, dark-mode tuning; event wiring gated by caps. + +- i18n: add strings for color UI (color_folder, choose_color, reset_default, save_color, folder_color_saved, folder_color_cleared). + +- ux(tree): make expansion state more predictable across refreshes + - `expandTreePath(path, {force,persist,includeLeaf})` with persistence; keep ancestors expanded; add click-suppression guard. + +- ux(layout): center the folder-actions toolbar; remove left padding hacks; normalize icon sizing. + +- chore(ops): add scripts/manual-sync.sh (safe rsync update path, preserves data dirs and public/.htaccess). + +--- + ## Changes 11/9/2025 (v1.9.0) release(v1.9.0): folder tree UX overhaul, fast ACL-aware counts, and .htaccess hardening diff --git a/public/api/folder/getFolderColors.php b/public/api/folder/getFolderColors.php new file mode 100644 index 0000000..d6c2bea --- /dev/null +++ b/public/api/folder/getFolderColors.php @@ -0,0 +1,17 @@ +getFolderColors(); // echoes JSON + status codes +} catch (Throwable $e) { + error_log('getFolderColors failed: ' . $e->getMessage()); + http_response_code(500); + header('Content-Type: application/json; charset=utf-8'); + echo json_encode(['error' => 'Internal server error']); +} \ No newline at end of file diff --git a/public/api/folder/saveFolderColor.php b/public/api/folder/saveFolderColor.php new file mode 100644 index 0000000..4e14808 --- /dev/null +++ b/public/api/folder/saveFolderColor.php @@ -0,0 +1,17 @@ +saveFolderColor(); // validates method + CSRF, does ACL, echoes JSON +} catch (Throwable $e) { + error_log('saveFolderColor failed: ' . $e->getMessage()); + http_response_code(500); + header('Content-Type: application/json; charset=utf-8'); + echo json_encode(['error' => 'Internal server error']); +} \ No newline at end of file diff --git a/public/css/styles.css b/public/css/styles.css index 43390a8..af86133 100644 --- a/public/css/styles.css +++ b/public/css/styles.css @@ -62,6 +62,51 @@ body { @media (max-width: 600px) { .zones-toggle { left: 85px !important; } } + +/* Optional tokens */ +:root{ + --filr-accent-500:#008CB4; /* base */ + --filr-accent-600:#00789A; /* hover */ + --filr-accent-700:#006882; /* active/border */ + --filr-accent-ring:rgba(0,140,180,.4); +} + +/* Button */ +.btn-color-folder{ + display:inline-flex; align-items:center; gap:6px; + background:var(--filr-accent-500); + border:1px solid var(--filr-accent-700); + color:#fff; /* ensure white text */ +} +.btn-color-folder .material-icons{ + color:currentColor; /* makes icon white too */ +} + +.btn-color-folder:hover, +.btn-color-folder:focus-visible{ + background:var(--filr-accent-600); + border-color:var(--filr-accent-700); +} + +.btn-color-folder:active{ + background:var(--filr-accent-700); +} + +.btn-color-folder:focus-visible{ + outline:2px solid var(--filr-accent-ring); + outline-offset:2px; +} + +/* Dark mode: start slightly deeper so it doesn't glow */ +.dark-mode .btn-color-folder{ + background:var(--filr-accent-600); + border-color:var(--filr-accent-700); + color:#fff; +} +.dark-mode .btn-color-folder:hover, +.dark-mode .btn-color-folder:focus-visible{ + background:var(--filr-accent-700); +} /* =========================================================== HEADER & NAVIGATION =========================================================== */ @@ -801,14 +846,17 @@ body { } #uploadForm { display: none; - }.folder-actions { - display: flex; - flex-wrap: nowrap; - padding-left: 8px; + } + .folder-actions { + display: flex; + justify-content: center; align-items: center; - white-space: nowrap; - padding-top: 10px; - }@media (min-width: 600px) and (max-width: 992px) { + gap: 2px; + flex-wrap: wrap; + white-space: normal; + margin: 0; /* no hacks needed */ + } + @media (min-width: 600px) and (max-width: 992px) { .folder-actions { white-space: nowrap; }} @@ -821,10 +869,8 @@ body { }.folder-actions .material-icons { font-size: 24px; vertical-align: -2px; - }.folder-actions .btn + .btn { - margin-left: 6px; }.folder-actions .btn { - padding: 10px 12px; + font-size: 0.85rem; line-height: 1.1; border-radius: 6px; @@ -834,7 +880,7 @@ body { transition: transform 120ms ease, box-shadow 120ms ease; will-change: transform; }.folder-actions .material-icons { - font-size: 24px; + font-size: 20px; vertical-align: -2px; transition: transform 120ms ease; }.folder-actions .btn:hover, @@ -1152,6 +1198,7 @@ body { width: 5px; }#folderTreeContainer { display: block; + margin-left: 10px; }.folder-option { cursor: pointer; }.folder-option:hover { @@ -1641,6 +1688,7 @@ body { }.custom-folder-card-body { padding-top: 5px !important; padding-right: 0 !important; + padding-left: 0 !important; }#addUserModal, #removeUserModal { z-index: 5000 !important; @@ -2073,17 +2121,6 @@ body { /* ---------- Crisp colors & strokes for the SVG parts ---------- */ -#folderTreeContainer .folder-icon .folder-front, -#folderTreeContainer .folder-icon .folder-back { - fill: currentColor; - stroke: var(--filr-folder-stroke); - stroke-width: 1.1; - vector-effect: non-scaling-stroke; - paint-order: stroke fill; -} - -#folderTreeContainer .folder-icon .folder-front { color: var(--filr-folder-front); } -#folderTreeContainer .folder-icon .folder-back { color: var(--filr-folder-back); } #folderTreeContainer .folder-icon .paper { fill: var(--filr-paper-fill); @@ -2123,3 +2160,15 @@ body { background: rgba(122,179,255,.24); box-shadow: inset 0 0 0 1px rgba(122,179,255,.45); } + +/* variables will be set inline per .folder-option when user colors a folder */ +#folderTreeContainer .folder-icon .folder-front, +#folderTreeContainer .folder-icon .folder-back { + fill: currentColor; + stroke: var(--filr-folder-stroke); + stroke-width: 1.1; + vector-effect: non-scaling-stroke; + paint-order: stroke fill; +} +#folderTreeContainer .folder-icon .folder-front { color: var(--filr-folder-front); } +#folderTreeContainer .folder-icon .folder-back { color: var(--filr-folder-back); } diff --git a/public/index.html b/public/index.html index 763b5ef..738522b 100644 --- a/public/index.html +++ b/public/index.html @@ -252,6 +252,9 @@ + + + + + + `; + document.body.appendChild(modal); + modal.style.display = 'block'; + + // --- live preview wiring + const previewEl = modal.querySelector('#folderColorPreview'); + const inputEl = modal.querySelector('#folderColorInput'); + + function applyPreview(hex) { + if (!hex || typeof hex !== 'string') return; + const front = hex; + const back = lighten(hex, 14); + const stroke = darken(hex, 22); + previewEl.style.setProperty('--filr-folder-front', front); + previewEl.style.setProperty('--filr-folder-back', back); + previewEl.style.setProperty('--filr-folder-stroke', stroke); + } + applyPreview(defaultHex); + inputEl?.addEventListener('input', () => applyPreview(inputEl.value)); + + // --- buttons/close + document.getElementById('closeColorFolderModal')?.addEventListener('click', (e) => { + e.preventDefault(); e.stopPropagation(); + suppressNextToggle(300); + setTimeout(() => expandTreePath(folder, { force: true }), 0); + modal.remove(); + }); + + document.getElementById('resetFolderColorBtn')?.addEventListener('click', async (e) => { + e.preventDefault(); e.stopPropagation(); + try { + await saveFolderColor(folder, ''); // clear + showToast(t('folder_color_cleared')); + } catch (err) { + showToast(err.message || 'Error'); + } finally { + suppressNextToggle(300); + setTimeout(() => expandTreePath(folder, { force: true }), 0); + modal.remove(); + } + }); + + document.getElementById('saveFolderColorBtn')?.addEventListener('click', async (e) => { + e.preventDefault(); e.stopPropagation(); + try { + const hex = String(inputEl.value || '').trim(); + await saveFolderColor(folder, hex); + showToast(t('folder_color_saved')); + } finally { + suppressNextToggle(300); + setTimeout(() => expandTreePath(folder, { force: true }), 0); + modal.remove(); + } + }); +} + /* ---------------------- Check Current User's Folder-Only Permission ----------------------*/ @@ -287,6 +537,20 @@ async function checkUserFolderPermission() { } } +// Invalidate client-side folder "non-empty" caches +function invalidateFolderCaches(folder) { + if (!folder) return; + _folderCountCache.delete(folder); + _nonEmptyCache.delete(folder); + _inflightCounts.delete(folder); +} + +// Public: force a fresh count + icon for a folder row +export function refreshFolderIcon(folder) { + invalidateFolderCaches(folder); + ensureFolderIcon(folder); +} + // ---------------- SVG icons + icon helpers ---------------- const _nonEmptyCache = new Map(); @@ -369,7 +633,9 @@ async function fetchFolderCounts(folder) { if (_folderCountCache.has(folder)) return _folderCountCache.get(folder); if (_inflightCounts.has(folder)) return _inflightCounts.get(folder); - const url = `/api/folder/isEmpty.php?folder=${encodeURIComponent(folder)}`; + // cache-bust query param to avoid any proxy/cdn caching + const url = `/api/folder/isEmpty.php?folder=${encodeURIComponent(folder)}&t=${Date.now()}`; + const p = _runCount(url).then(data => { const result = { folders: Number(data?.folders || 0), @@ -473,15 +739,18 @@ function renderFolderTree(tree, parentPath = "", defaultDisplay = "block") { return html; } -// replace your current expandTreePath with this version function expandTreePath(path, opts = {}) { - const { force = false } = opts; + const { force = false, persist = false, includeLeaf = false } = opts; const state = loadFolderTreeState(); const parts = (path || '').split('/').filter(Boolean); let cumulative = ''; + const lastIndex = includeLeaf ? parts.length - 1 : Math.max(0, parts.length - 2); + parts.forEach((part, i) => { cumulative = i === 0 ? part : `${cumulative}/${part}`; + if (i > lastIndex) return; // skip leaf unless asked + const option = document.querySelector(`.folder-option[data-folder="${CSS.escape(cumulative)}"]`); if (!option) return; @@ -489,12 +758,17 @@ function expandTreePath(path, opts = {}) { const nestedUl = li ? li.querySelector(':scope > ul') : null; if (!nestedUl) return; - // Only expand if caller forces it OR saved state says "block" const shouldExpand = force || state[cumulative] === 'block'; nestedUl.classList.toggle('expanded', shouldExpand); nestedUl.classList.toggle('collapsed', !shouldExpand); li.setAttribute('aria-expanded', String(!!shouldExpand)); + + if (persist && shouldExpand) { + state[cumulative] = 'block'; + } }); + + if (persist) saveFolderTreeState(state); } @@ -514,58 +788,72 @@ function folderDropHandler(event) { event.preventDefault(); event.currentTarget.classList.remove("drop-hover"); const dropFolder = event.currentTarget.getAttribute("data-folder"); + let dragData = null; try { const jsonStr = event.dataTransfer.getData("application/json") || ""; if (jsonStr) dragData = JSON.parse(jsonStr); - } - catch (e) { + } catch (e) { console.error("Invalid drag data", e); return; } - /* FOLDER MOVE FALLBACK */ + + // FOLDER MOVE FALLBACK (folder->folder) if (!dragData) { const plain = (event.dataTransfer && event.dataTransfer.getData("application/x-filerise-folder")) || (event.dataTransfer && event.dataTransfer.getData("text/plain")) || ""; - if (plain) { - const sourceFolder = String(plain).trim(); - if (sourceFolder && sourceFolder !== "root") { - if (dropFolder === sourceFolder || (dropFolder + "/").startsWith(sourceFolder + "/")) { - showToast("Invalid destination.", 4000); - return; - } - fetchWithCsrf("/api/folder/moveFolder.php", { - method: "POST", - headers: { "Content-Type": "application/json" }, - credentials: "include", - body: JSON.stringify({ source: sourceFolder, destination: dropFolder }) - }) - .then(safeJson) - .then(data => { - if (data && !data.error) { - showToast(`Folder moved to ${dropFolder}!`); - if (window.currentFolder && (window.currentFolder === sourceFolder || window.currentFolder.startsWith(sourceFolder + "/"))) { - const base = sourceFolder.split("/").pop(); - const newPath = (dropFolder === "root" ? "" : dropFolder + "/") + base; - window.currentFolder = newPath; - } - return loadFolderTree().then(() => { - try { expandTreePath(window.currentFolder || "root", { persist: false, includeLeaf: false }); } catch (_) { } - loadFileList(window.currentFolder || "root"); - }); - } else { - showToast("Error: " + (data && data.error || "Could not move folder"), 5000); - } - }) - .catch(err => { - console.error("Error moving folder:", err); - showToast("Error moving folder", 5000); - }); - } + const sourceFolder = String(plain || "").trim(); + if (!sourceFolder || sourceFolder === "root") return; + + if (dropFolder === sourceFolder || (dropFolder + "/").startsWith(sourceFolder + "/")) { + showToast("Invalid destination.", 4000); + return; } + + fetchWithCsrf("/api/folder/moveFolder.php", { + method: "POST", + headers: { "Content-Type": "application/json" }, + credentials: "include", + body: JSON.stringify({ source: sourceFolder, destination: dropFolder }) + }) + .then(safeJson) + .then(data => { + if (data && !data.error) { + showToast(`Folder moved to ${dropFolder}!`); + + if (window.currentFolder && + (window.currentFolder === sourceFolder || window.currentFolder.startsWith(sourceFolder + "/"))) { + const base = sourceFolder.split("/").pop(); + const newPath = (dropFolder === "root" ? "" : dropFolder + "/") + base; + + // carry color without await + const oldColor = window.folderColorMap[sourceFolder]; + if (oldColor) { + saveFolderColor(newPath, oldColor) + .then(() => saveFolderColor(sourceFolder, '')) + .catch(() => { }); + } + + window.currentFolder = newPath; + } + + return loadFolderTree().then(() => { + try { expandTreePath(window.currentFolder || "root", { persist: false, includeLeaf: false }); } catch (_) { } + loadFileList(window.currentFolder || "root"); + }); + } else { + showToast("Error: " + (data && data.error || "Could not move folder"), 5000); + } + }) + .catch(err => { + console.error("Error moving folder:", err); + showToast("Error moving folder", 5000); + }); + return; } + // File(s) drop path (unchanged) const filesToMove = dragData.files ? dragData.files : (dragData.fileName ? [dragData.fileName] : []); if (filesToMove.length === 0) return; @@ -584,6 +872,8 @@ function folderDropHandler(event) { if (data.success) { showToast(`File(s) moved successfully to ${dropFolder}!`); loadFileList(dragData.sourceFolder); + refreshFolderIcon(dragData.sourceFolder); + refreshFolderIcon(dropFolder); } else { showToast("Error moving files: " + (data.error || "Unknown error")); } @@ -721,6 +1011,11 @@ export async function loadFolderTree(selectedFolder) { } container.innerHTML = html; + await loadFolderColors(); + try { applyAllFolderColors(container); } catch (e) { + console.warn('applyAllFolderColors failed:', e); + } + const st = loadFolderTreeState(); const rootUl = container.querySelector('#rootRow + ul'); if (rootUl) { @@ -777,7 +1072,7 @@ export async function loadFolderTree(selectedFolder) { // Show ancestors so the current selection is visible, but don't persist if (window.currentFolder && window.currentFolder !== effectiveRoot) { - expandTreePath(window.currentFolder, { persist: false, includeLeaf: false }); + expandTreePath(window.currentFolder, { force: true, persist: true, includeLeaf: false }); } const selectedEl = container.querySelector(`.folder-option[data-folder="${window.currentFolder}"]`); @@ -811,45 +1106,48 @@ export async function loadFolderTree(selectedFolder) { }); }); - // Root toggle - const rootToggle = container.querySelector("#rootRow .folder-toggle"); - if (rootToggle) { - rootToggle.addEventListener("click", function (e) { + // --- One delegated toggle handler (robust) --- + (function bindToggleDelegation() { + const container = document.getElementById('folderTreeContainer'); + if (!container || container._toggleBound) return; + container._toggleBound = true; + + container.addEventListener('click', (e) => { + if (performance.now() < _suppressToggleUntil) { + e.stopPropagation(); + e.preventDefault(); + return; + } + const btn = e.target.closest('button.folder-toggle'); + if (!btn || !container.contains(btn)) return; e.stopPropagation(); - const nestedUl = container.querySelector("#rootRow + ul"); - if (!nestedUl) return; - const state = loadFolderTreeState(); - const expanded = !(nestedUl.classList.contains("expanded")); - nestedUl.classList.toggle("expanded", expanded); - nestedUl.classList.toggle("collapsed", !expanded); + const folderPath = btn.getAttribute('data-folder'); + let siblingUl = null; + let expandedTarget = null; - document.getElementById("rootRow").setAttribute("aria-expanded", String(expanded)); - state[effectiveRoot] = expanded ? "block" : "none"; - saveFolderTreeState(state); - }); - } - - // Other toggles - - container.querySelectorAll("button.folder-toggle").forEach(toggle => { - toggle.addEventListener("click", function (e) { - e.stopPropagation(); - const li = this.closest('li[role="treeitem"]'); - const siblingUl = li ? li.querySelector(':scope > ul') : null; - const folderPath = this.getAttribute("data-folder"); + // Root toggle? + if (btn.closest('#rootRow')) { + siblingUl = container.querySelector('#rootRow + ul'); + expandedTarget = document.getElementById('rootRow'); + } else { + const li = btn.closest('li[role="treeitem"]'); + if (!li) return; + siblingUl = li.querySelector(':scope > ul'); + expandedTarget = li; + } if (!siblingUl) return; + const expanded = !siblingUl.classList.contains('expanded'); + siblingUl.classList.toggle('expanded', expanded); + siblingUl.classList.toggle('collapsed', !expanded); + if (expandedTarget) expandedTarget.setAttribute('aria-expanded', String(expanded)); + const state = loadFolderTreeState(); - const expanded = !(siblingUl.classList.contains("expanded")); - siblingUl.classList.toggle("expanded", expanded); - siblingUl.classList.toggle("collapsed", !expanded); - li.setAttribute("aria-expanded", String(expanded)); - state[folderPath] = expanded ? "block" : "none"; + state[folderPath] = expanded ? 'block' : 'none'; saveFolderTreeState(state); - ensureFolderIcon(folderPath); - }); - }); + }, true); + })(); } catch (error) { console.error("Error loading folder tree:", error); @@ -928,6 +1226,16 @@ if (submitRename) { if (data.success) { showToast("Folder renamed successfully!"); window.currentFolder = newFolderFull; + + // carry color without await + const oldPath = selectedFolder; + const oldColor = window.folderColorMap[oldPath]; + if (oldColor) { + saveFolderColor(newFolderFull, oldColor) + .then(() => saveFolderColor(oldPath, '')) + .catch(() => { }); + } + localStorage.setItem("lastOpenedFolder", newFolderFull); loadFolderList(newFolderFull); } else { @@ -1020,6 +1328,8 @@ if (confirmDelete) { if (data.success) { showToast("Folder deleted successfully!"); window.currentFolder = getParentFolder(selectedFolder); + const parentForIcon = getParentFolder(selectedFolder); +refreshFolderIcon(parentForIcon); localStorage.setItem("lastOpenedFolder", window.currentFolder); loadFolderList(window.currentFolder); } else { @@ -1083,6 +1393,8 @@ if (submitCreate) { .then(data => { if (!data.success) throw new Error(data.error || "Server rejected the request"); showToast("Folder created!"); + const parentForIcon = parent || 'root'; +refreshFolderIcon(parentForIcon); const full = parent ? `${parent}/${folderInput}` : folderInput; window.currentFolder = full; localStorage.setItem("lastOpenedFolder", full); @@ -1101,6 +1413,45 @@ if (submitCreate) { } // ---------- CONTEXT MENU SUPPORT FOR FOLDER MANAGER ---------- +async function folderManagerContextMenuHandler(e) { + const target = e.target.closest(".folder-option, .breadcrumb-link"); + if (!target) return; + + e.preventDefault(); + e.stopPropagation(); + + const folder = target.getAttribute("data-folder"); + if (!folder) return; + + window.currentFolder = folder; + await applyFolderCapabilities(folder); // <-- await ensures fresh caps + + // Visual selection + document.querySelectorAll(".folder-option, .breadcrumb-link") + .forEach(el => el.classList.remove("selected")); + target.classList.add("selected"); + + const canColor = !!(window.currentFolderCaps && window.currentFolderCaps.canRename); + + const menuItems = [ + { + label: t("create_folder"), action: () => { + const modal = document.getElementById("createFolderModal"); + const input = document.getElementById("newFolderName"); + if (modal) modal.style.display = "block"; + if (input) input.focus(); + } + }, + { label: t("move_folder"), action: () => openMoveFolderUI(folder) }, + { label: t("rename_folder"), action: () => openRenameFolderModal() }, + ...(canColor ? [{ label: t("color_folder"), action: () => openColorFolderModal(folder) }] : []), + { label: t("folder_share"), action: () => openFolderShareModal(folder) }, + { label: t("delete_folder"), action: () => openDeleteFolderModal() } + ]; + + showFolderManagerContextMenu(e.pageX, e.pageY, menuItems); +} + export function showFolderManagerContextMenu(x, y, menuItems) { let menu = document.getElementById("folderManagerContextMenu"); if (!menu) { @@ -1112,6 +1463,7 @@ export function showFolderManagerContextMenu(x, y, menuItems) { menu.style.zIndex = "9999"; document.body.appendChild(menu); } + if (document.body.classList.contains("dark-mode")) { menu.style.backgroundColor = "#2c2c2c"; menu.style.border = "1px solid #555"; @@ -1121,18 +1473,16 @@ export function showFolderManagerContextMenu(x, y, menuItems) { menu.style.border = "1px solid #ccc"; menu.style.color = "#000"; } + menu.innerHTML = ""; menuItems.forEach(item => { const menuItem = document.createElement("div"); menuItem.textContent = item.label; menuItem.style.padding = "5px 15px"; menuItem.style.cursor = "pointer"; + menuItem.addEventListener("mouseover", () => { - if (document.body.classList.contains("dark-mode")) { - menuItem.style.backgroundColor = "#444"; - } else { - menuItem.style.backgroundColor = "#f0f0f0"; - } + menuItem.style.backgroundColor = document.body.classList.contains("dark-mode") ? "#444" : "#f0f0f0"; }); menuItem.addEventListener("mouseout", () => { menuItem.style.backgroundColor = ""; @@ -1141,75 +1491,26 @@ export function showFolderManagerContextMenu(x, y, menuItems) { item.action(); hideFolderManagerContextMenu(); }); + menu.appendChild(menuItem); }); - menu.style.left = x + "px"; - menu.style.top = y + "px"; + + menu.style.left = `${x}px`; + menu.style.top = `${y}px`; menu.style.display = "block"; } export function hideFolderManagerContextMenu() { const menu = document.getElementById("folderManagerContextMenu"); - if (menu) { - menu.style.display = "none"; - } -} - -function folderManagerContextMenuHandler(e) { - const target = e.target.closest(".folder-option, .breadcrumb-link"); - if (!target) return; - - e.preventDefault(); - e.stopPropagation(); - - const folder = target.getAttribute("data-folder"); - if (!folder) return; - window.currentFolder = folder; - applyFolderCapabilities(window.currentFolder); - - // Visual selection - document.querySelectorAll(".folder-option, .breadcrumb-link").forEach(el => el.classList.remove("selected")); - target.classList.add("selected"); - - const menuItems = [ - { - label: t("create_folder"), - action: () => { - const modal = document.getElementById("createFolderModal"); - const input = document.getElementById("newFolderName"); - if (modal) modal.style.display = "block"; - if (input) input.focus(); - } - }, - { - label: t("move_folder"), - action: () => { openMoveFolderUI(folder); } - }, - { - label: t("rename_folder"), - action: () => { openRenameFolderModal(); } - }, - { - label: t("folder_share"), - action: () => { openFolderShareModal(folder); } - }, - { - label: t("delete_folder"), - action: () => { openDeleteFolderModal(); } - } - ]; - showFolderManagerContextMenu(e.pageX, e.pageY, menuItems); + if (menu) menu.style.display = "none"; } // Delegate contextmenu so it works with dynamically re-rendered breadcrumbs function bindFolderManagerContextMenu() { const tree = document.getElementById("folderTreeContainer"); if (tree) { - // remove old bound handler if present - if (tree._ctxHandler) { - tree.removeEventListener("contextmenu", tree._ctxHandler, false); - } - tree._ctxHandler = function (e) { + if (tree._ctxHandler) tree.removeEventListener("contextmenu", tree._ctxHandler, false); + tree._ctxHandler = (e) => { const onOption = e.target.closest(".folder-option"); if (!onOption) return; folderManagerContextMenuHandler(e); @@ -1219,10 +1520,8 @@ function bindFolderManagerContextMenu() { const title = document.getElementById("fileListTitle"); if (title) { - if (title._ctxHandler) { - title.removeEventListener("contextmenu", title._ctxHandler, false); - } - title._ctxHandler = function (e) { + if (title._ctxHandler) title.removeEventListener("contextmenu", title._ctxHandler, false); + title._ctxHandler = (e) => { const onCrumb = e.target.closest(".breadcrumb-link"); if (!onCrumb) return; folderManagerContextMenuHandler(e); @@ -1266,6 +1565,22 @@ document.addEventListener("DOMContentLoaded", function () { } }); +document.addEventListener("DOMContentLoaded", function () { + const colorFolderBtn = document.getElementById("colorFolderBtn"); + if (colorFolderBtn) { + colorFolderBtn.addEventListener("click", () => { + const selectedFolder = window.currentFolder || "root"; + if (!selectedFolder || selectedFolder === "root") { + showToast(t('please_select_valid_folder') || "Please select a valid folder."); + return; + } + openColorFolderModal(selectedFolder); + }); + } else { + console.warn("colorFolderBtn element not found in the DOM."); + } +}); + // Initial context menu delegation bind bindFolderManagerContextMenu(); @@ -1309,6 +1624,13 @@ document.addEventListener("DOMContentLoaded", () => { await loadFolderTree(); const base = source.split('/').pop(); const newPath = (destination === 'root' ? '' : destination + '/') + base; + const oldColor = window.folderColorMap[source]; + if (oldColor) { + try { + await saveFolderColor(newPath, oldColor); + await saveFolderColor(source, ''); + } catch (_) { } + } window.currentFolder = newPath; loadFileList(window.currentFolder || 'root'); } else { diff --git a/public/js/i18n.js b/public/js/i18n.js index 3484e48..cfc49a1 100644 --- a/public/js/i18n.js +++ b/public/js/i18n.js @@ -312,7 +312,13 @@ const translations = { "previous": "Previous", "next": "Next", "watched": "Watched", - "reset_progress": "Reset Progress" + "reset_progress": "Reset Progress", + "color_folder": "Color folder", + "choose_color": "Choose a color", + "reset_default": "Reset", + "save_color": "Save", + "folder_color_saved": "Folder color saved.", + "folder_color_cleared": "Folder color reset." }, es: { "please_log_in_to_continue": "Por favor, inicie sesión para continuar.", diff --git a/public/js/trashRestoreDelete.js b/public/js/trashRestoreDelete.js index 1420e89..8b3f16c 100644 --- a/public/js/trashRestoreDelete.js +++ b/public/js/trashRestoreDelete.js @@ -2,7 +2,7 @@ import { sendRequest } from './networkUtils.js?v={{APP_QVER}}'; import { toggleVisibility, showToast } from './domUtils.js?v={{APP_QVER}}'; import { loadFileList } from './fileListView.js?v={{APP_QVER}}'; -import { loadFolderTree } from './folderManager.js?v={{APP_QVER}}'; +import { loadFolderTree, refreshFolderIcon } from './folderManager.js?v={{APP_QVER}}'; import { t } from './i18n.js?v={{APP_QVER}}'; function showConfirm(message, onConfirm) { @@ -89,6 +89,7 @@ export function setupTrashRestoreDelete() { toggleVisibility("restoreFilesModal", false); loadFileList(window.currentFolder); loadFolderTree(window.currentFolder); + refreshFolderIcon(window.currentFolder); }) .catch(err => { console.error("Error restoring files:", err); diff --git a/public/js/upload.js b/public/js/upload.js index 064f66b..6f0edf8 100644 --- a/public/js/upload.js +++ b/public/js/upload.js @@ -3,6 +3,7 @@ import { displayFilePreview } from './filePreview.js?v={{APP_QVER}}'; import { showToast, escapeHTML } from './domUtils.js?v={{APP_QVER}}'; import { loadFolderTree } from './folderManager.js?v={{APP_QVER}}'; import { loadFileList } from './fileListView.js?v={{APP_QVER}}'; +import { refreshFolderIcon } from './folderManager.js?v={{APP_QVER}}'; import { t } from './i18n.js?v={{APP_QVER}}'; /* ----------------------------------------------------- @@ -588,7 +589,7 @@ async function initResumableUpload() { if (removeBtn) removeBtn.style.display = "none"; setTimeout(() => li.remove(), 5000); } - + refreshFolderIcon(window.currentFolder); loadFileList(window.currentFolder); }); diff --git a/resources/light-color-folder.png b/resources/light-color-folder.png new file mode 100644 index 0000000000000000000000000000000000000000..3ebb43203b8d47810aa2d386a87bd8b27f9b5aec GIT binary patch literal 420825 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 z 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
  • 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/dev/null 2>&1; then + cd "$WEBROOT" + composer install --no-dev --optimize-autoloader +fi + +# 6) Reload Apache +systemctl reload apache2 + +echo "âś… FileRise updated to ${VER} (code). Data and public/.htaccess preserved." \ No newline at end of file diff --git a/src/controllers/FolderController.php b/src/controllers/FolderController.php index 2a8ef36..d561301 100644 --- a/src/controllers/FolderController.php +++ b/src/controllers/FolderController.php @@ -5,6 +5,7 @@ require_once __DIR__ . '/../../config/config.php'; require_once PROJECT_ROOT . '/src/models/FolderModel.php'; require_once PROJECT_ROOT . '/src/models/UserModel.php'; require_once PROJECT_ROOT . '/src/lib/ACL.php'; +require_once PROJECT_ROOT . '/src/models/FolderMeta.php'; class FolderController { @@ -77,10 +78,59 @@ class FolderController if (isset($all[$lk])) return (array)$all[$lk]; } } - } catch (\Throwable $e) { /* ignore */ } + } catch (\Throwable $e) { /* ignore */ + } return []; } + private static function migrateFolderColors(string $source, string $target): array + { + // PHP 8 polyfill + if (!function_exists('str_starts_with')) { + function str_starts_with(string $haystack, string $needle): bool + { + return $needle === '' || strncmp($haystack, $needle, strlen($needle)) === 0; + } + } + + $metaDir = rtrim(META_DIR, '/\\'); + $file = $metaDir . '/folder_colors.json'; + + // Read current map (treat unreadable/invalid as empty) + $raw = @file_get_contents($file); + $map = is_string($raw) ? json_decode($raw, true) : []; + if (!is_array($map)) $map = []; + + // Nothing to do fast-path + $prefixSrc = $source; + $prefixNeed = $source . '/'; + $changed = false; + $new = $map; + $movedCount = 0; + + foreach ($map as $key => $hex) { + if ($key === $prefixSrc || str_starts_with($key . '/', $prefixNeed)) { + unset($new[$key]); + $suffix = substr($key, strlen($prefixSrc)); // '' or '/sub/...' + $newKey = ($target === 'root') ? ltrim($suffix, '/\\') : rtrim($target, '/\\') . $suffix; + $new[$newKey] = $hex; + $changed = true; + $movedCount++; + } + } + + if ($changed) { + // Write back (atomic-ish). Ignore failures (don’t block the move). + $json = json_encode($new, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES); + if (is_string($json)) { + @file_put_contents($file, $json, LOCK_EX); + @chmod($file, 0664); + } + } + + return ['changed' => $changed, 'moved' => $movedCount]; + } + private static function getPerms(): array { self::ensureSession(); @@ -158,64 +208,94 @@ class FolderController * Returns null if allowed, or an error string if forbidden. */ // In FolderController.php -private static function enforceFolderScope( - string $folder, - string $username, - array $perms, - string $need = 'read' -): ?string { - // Admins bypass scope - if (self::isAdmin($perms)) return null; + private static function enforceFolderScope( + string $folder, + string $username, + array $perms, + string $need = 'read' + ): ?string { + // Admins bypass scope + if (self::isAdmin($perms)) return null; - // If this account isn't folder-scoped, don't gate here - if (!self::isFolderOnly($perms)) return null; + // If this account isn't folder-scoped, don't gate here + if (!self::isFolderOnly($perms)) return null; - $folder = ACL::normalizeFolder($folder); + $folder = ACL::normalizeFolder($folder); - // If user owns folder or an ancestor, allow - $f = $folder; - while ($f !== '' && strtolower($f) !== 'root') { - if (ACL::isOwner($username, $perms, $f)) return null; - $pos = strrpos($f, '/'); - $f = ($pos === false) ? '' : substr($f, 0, $pos); + // If user owns folder or an ancestor, allow + $f = $folder; + while ($f !== '' && strtolower($f) !== 'root') { + if (ACL::isOwner($username, $perms, $f)) return null; + $pos = strrpos($f, '/'); + $f = ($pos === false) ? '' : substr($f, 0, $pos); + } + + // Normalize aliases so callers can pass either camelCase or snake_case + switch ($need) { + case 'manage': + $ok = ACL::canManage($username, $perms, $folder); + break; + + // legacy: + case 'write': + $ok = ACL::canWrite($username, $perms, $folder); + break; + case 'share': + $ok = ACL::canShare($username, $perms, $folder); + break; + + // read flavors: + case 'read_own': + $ok = ACL::canReadOwn($username, $perms, $folder); + break; + case 'read': + $ok = ACL::canRead($username, $perms, $folder); + break; + + // granular write-ish: + case 'create': + $ok = ACL::canCreate($username, $perms, $folder); + break; + case 'upload': + $ok = ACL::canUpload($username, $perms, $folder); + break; + case 'edit': + $ok = ACL::canEdit($username, $perms, $folder); + break; + case 'rename': + $ok = ACL::canRename($username, $perms, $folder); + break; + case 'copy': + $ok = ACL::canCopy($username, $perms, $folder); + break; + case 'move': + $ok = ACL::canMove($username, $perms, $folder); + break; + case 'delete': + $ok = ACL::canDelete($username, $perms, $folder); + break; + case 'extract': + $ok = ACL::canExtract($username, $perms, $folder); + break; + + // granular share (support both key styles) + case 'shareFile': + case 'share_file': + $ok = ACL::canShareFile($username, $perms, $folder); + break; + case 'shareFolder': + case 'share_folder': + $ok = ACL::canShareFolder($username, $perms, $folder); + break; + + default: + // Default to full read if unknown need was passed + $ok = ACL::canRead($username, $perms, $folder); + } + + return $ok ? null : "Forbidden: folder scope violation."; } - // Normalize aliases so callers can pass either camelCase or snake_case - switch ($need) { - case 'manage': $ok = ACL::canManage($username, $perms, $folder); break; - - // legacy: - case 'write': $ok = ACL::canWrite($username, $perms, $folder); break; - case 'share': $ok = ACL::canShare($username, $perms, $folder); break; - - // read flavors: - case 'read_own': $ok = ACL::canReadOwn($username, $perms, $folder); break; - case 'read': $ok = ACL::canRead($username, $perms, $folder); break; - - // granular write-ish: - case 'create': $ok = ACL::canCreate($username, $perms, $folder); break; - case 'upload': $ok = ACL::canUpload($username, $perms, $folder); break; - case 'edit': $ok = ACL::canEdit($username, $perms, $folder); break; - case 'rename': $ok = ACL::canRename($username, $perms, $folder); break; - case 'copy': $ok = ACL::canCopy($username, $perms, $folder); break; - case 'move': $ok = ACL::canMove($username, $perms, $folder); break; - case 'delete': $ok = ACL::canDelete($username, $perms, $folder); break; - case 'extract': $ok = ACL::canExtract($username, $perms, $folder); break; - - // granular share (support both key styles) - case 'shareFile': - case 'share_file': $ok = ACL::canShareFile($username, $perms, $folder); break; - case 'shareFolder': - case 'share_folder':$ok = ACL::canShareFolder($username, $perms, $folder); break; - - default: - // Default to full read if unknown need was passed - $ok = ACL::canRead($username, $perms, $folder); - } - - return $ok ? null : "Forbidden: folder scope violation."; -} - /** Returns true if caller can ignore ownership (admin or bypassOwnership/default). */ private static function canBypassOwnership(array $perms): bool { @@ -231,92 +311,128 @@ private static function enforceFolderScope( /* -------------------- API: Create Folder -------------------- */ public function createFolder(): void -{ - header('Content-Type: application/json'); - self::requireAuth(); - if ($_SERVER['REQUEST_METHOD'] !== 'POST') { http_response_code(405); echo json_encode(['error' => 'Method not allowed.']); return; } - self::requireCsrf(); - self::requireNotReadOnly(); - - try { - $input = json_decode(file_get_contents('php://input'), true) ?? []; - if (!isset($input['folderName'])) { http_response_code(400); echo json_encode(['error' => 'Folder name not provided.']); return; } - - $folderName = trim((string)$input['folderName']); - $parentIn = isset($input['parent']) ? trim((string)$input['parent']) : 'root'; - - if (!preg_match(REGEX_FOLDER_NAME, $folderName)) { - http_response_code(400); echo json_encode(['error' => 'Invalid folder name.']); return; - } - if ($parentIn !== '' && strcasecmp($parentIn, 'root') !== 0 && !preg_match(REGEX_FOLDER_NAME, $parentIn)) { - http_response_code(400); echo json_encode(['error' => 'Invalid parent folder name.']); return; - } - - $parent = ($parentIn === '' ? 'root' : $parentIn); - - $username = $_SESSION['username'] ?? ''; - $perms = self::getPerms(); - - // Need create on parent OR ownership on parent/ancestor - if (!(ACL::canCreateFolder($username, $perms, $parent) || self::ownsFolderOrAncestor($parent, $username, $perms))) { - http_response_code(403); - echo json_encode(['error' => 'Forbidden: manager/owner required on parent.']); - exit; - } - - // Folder-scope gate for folder-only accounts (need create on parent) - if ($msg = self::enforceFolderScope($parent, $username, $perms, 'manage')) { - http_response_code(403); echo json_encode(['error' => $msg]); return; - } - - $result = FolderModel::createFolder($folderName, $parent, $username); - if (empty($result['success'])) { - http_response_code(400); - echo json_encode($result); + { + header('Content-Type: application/json'); + self::requireAuth(); + if ($_SERVER['REQUEST_METHOD'] !== 'POST') { + http_response_code(405); + echo json_encode(['error' => 'Method not allowed.']); return; } + self::requireCsrf(); + self::requireNotReadOnly(); - echo json_encode($result); - } catch (Throwable $e) { - error_log('createFolder fatal: '.$e->getMessage().' @ '.$e->getFile().':'.$e->getLine()); - http_response_code(500); - echo json_encode(['error' => 'Internal error creating folder.']); + try { + $input = json_decode(file_get_contents('php://input'), true) ?? []; + if (!isset($input['folderName'])) { + http_response_code(400); + echo json_encode(['error' => 'Folder name not provided.']); + return; + } + + $folderName = trim((string)$input['folderName']); + $parentIn = isset($input['parent']) ? trim((string)$input['parent']) : 'root'; + + if (!preg_match(REGEX_FOLDER_NAME, $folderName)) { + http_response_code(400); + echo json_encode(['error' => 'Invalid folder name.']); + return; + } + if ($parentIn !== '' && strcasecmp($parentIn, 'root') !== 0 && !preg_match(REGEX_FOLDER_NAME, $parentIn)) { + http_response_code(400); + echo json_encode(['error' => 'Invalid parent folder name.']); + return; + } + + $parent = ($parentIn === '' ? 'root' : $parentIn); + + $username = $_SESSION['username'] ?? ''; + $perms = self::getPerms(); + + // Need create on parent OR ownership on parent/ancestor + if (!(ACL::canCreateFolder($username, $perms, $parent) || self::ownsFolderOrAncestor($parent, $username, $perms))) { + http_response_code(403); + echo json_encode(['error' => 'Forbidden: manager/owner required on parent.']); + exit; + } + + // Folder-scope gate for folder-only accounts (need create on parent) + if ($msg = self::enforceFolderScope($parent, $username, $perms, 'manage')) { + http_response_code(403); + echo json_encode(['error' => $msg]); + return; + } + + $result = FolderModel::createFolder($folderName, $parent, $username); + if (empty($result['success'])) { + http_response_code(400); + echo json_encode($result); + return; + } + + echo json_encode($result); + } catch (Throwable $e) { + error_log('createFolder fatal: ' . $e->getMessage() . ' @ ' . $e->getFile() . ':' . $e->getLine()); + http_response_code(500); + echo json_encode(['error' => 'Internal error creating folder.']); + } } -} /* -------------------- API: Delete Folder -------------------- */ public function deleteFolder(): void { header('Content-Type: application/json'); self::requireAuth(); - if ($_SERVER['REQUEST_METHOD'] !== 'POST') { http_response_code(405); echo json_encode(["error" => "Method not allowed."]); exit; } + if ($_SERVER['REQUEST_METHOD'] !== 'POST') { + http_response_code(405); + echo json_encode(["error" => "Method not allowed."]); + exit; + } self::requireCsrf(); self::requireNotReadOnly(); $input = json_decode(file_get_contents('php://input'), true); - if (!isset($input['folder'])) { http_response_code(400); echo json_encode(["error" => "Folder name not provided."]); exit; } + if (!isset($input['folder'])) { + http_response_code(400); + echo json_encode(["error" => "Folder name not provided."]); + exit; + } $folder = trim((string)$input['folder']); - if (strcasecmp($folder, 'root') === 0) { http_response_code(400); echo json_encode(["error" => "Cannot delete root folder."]); exit; } - if (!preg_match(REGEX_FOLDER_NAME, $folder)) { http_response_code(400); echo json_encode(["error" => "Invalid folder name."]); exit; } + if (strcasecmp($folder, 'root') === 0) { + http_response_code(400); + echo json_encode(["error" => "Cannot delete root folder."]); + exit; + } + if (!preg_match(REGEX_FOLDER_NAME, $folder)) { + http_response_code(400); + echo json_encode(["error" => "Invalid folder name."]); + exit; + } $username = $_SESSION['username'] ?? ''; $perms = self::getPerms(); // Folder-scope: need manage (owner) OR explicit manage grant if ($msg = self::enforceFolderScope($folder, $username, $perms, 'manage')) { - http_response_code(403); echo json_encode(["error" => $msg]); exit; + http_response_code(403); + echo json_encode(["error" => $msg]); + exit; } // Require either manage permission or ancestor ownership (strong gate) $canManage = ACL::canManage($username, $perms, $folder) || self::ownsFolderOrAncestor($folder, $username, $perms); if (!$canManage) { - http_response_code(403); echo json_encode(["error" => "Forbidden: you lack manage rights for this folder."]); exit; + http_response_code(403); + echo json_encode(["error" => "Forbidden: you lack manage rights for this folder."]); + exit; } // If not bypassing ownership, require ownership (direct or ancestor) as an extra safeguard if (!self::canBypassOwnership($perms) && !self::ownsFolderOrAncestor($folder, $username, $perms)) { - http_response_code(403); echo json_encode(["error" => "Forbidden: you are not the folder owner."]); exit; + http_response_code(403); + echo json_encode(["error" => "Forbidden: you are not the folder owner."]); + exit; } $result = FolderModel::deleteFolder($folder); @@ -329,20 +445,28 @@ private static function enforceFolderScope( { header('Content-Type: application/json'); self::requireAuth(); - if ($_SERVER['REQUEST_METHOD'] !== 'POST') { http_response_code(405); echo json_encode(['error' => 'Method not allowed.']); exit; } + if ($_SERVER['REQUEST_METHOD'] !== 'POST') { + http_response_code(405); + echo json_encode(['error' => 'Method not allowed.']); + exit; + } self::requireCsrf(); self::requireNotReadOnly(); $input = json_decode(file_get_contents('php://input'), true); if (!isset($input['oldFolder']) || !isset($input['newFolder'])) { - http_response_code(400); echo json_encode(['error' => 'Required folder names not provided.']); exit; + http_response_code(400); + echo json_encode(['error' => 'Required folder names not provided.']); + exit; } $oldFolder = trim((string)$input['oldFolder']); $newFolder = trim((string)$input['newFolder']); if (!preg_match(REGEX_FOLDER_NAME, $oldFolder) || !preg_match(REGEX_FOLDER_NAME, $newFolder)) { - http_response_code(400); echo json_encode(['error' => 'Invalid folder name(s).']); exit; + http_response_code(400); + echo json_encode(['error' => 'Invalid folder name(s).']); + exit; } $username = $_SESSION['username'] ?? ''; @@ -350,22 +474,30 @@ private static function enforceFolderScope( // Must be allowed to manage the old folder if ($msg = self::enforceFolderScope($oldFolder, $username, $perms, 'manage')) { - http_response_code(403); echo json_encode(["error" => $msg]); exit; + http_response_code(403); + echo json_encode(["error" => $msg]); + exit; } // For the new folder path, require write scope (we're "creating" a path) if ($msg = self::enforceFolderScope($newFolder, $username, $perms, 'manage')) { - http_response_code(403); echo json_encode(["error" => "New path not allowed: " . $msg]); exit; + http_response_code(403); + echo json_encode(["error" => "New path not allowed: " . $msg]); + exit; } // Strong gates: need manage on old OR ancestor owner; need manage on new parent OR ancestor owner $canManageOld = ACL::canManage($username, $perms, $oldFolder) || self::ownsFolderOrAncestor($oldFolder, $username, $perms); if (!$canManageOld) { - http_response_code(403); echo json_encode(['error' => 'Forbidden: you lack manage rights on the source folder.']); exit; + http_response_code(403); + echo json_encode(['error' => 'Forbidden: you lack manage rights on the source folder.']); + exit; } // If not bypassing ownership, require ownership (direct or ancestor) on the old folder if (!self::canBypassOwnership($perms) && !self::ownsFolderOrAncestor($oldFolder, $username, $perms)) { - http_response_code(403); echo json_encode(['error' => 'Forbidden: you are not the folder owner.']); exit; + http_response_code(403); + echo json_encode(['error' => 'Forbidden: you are not the folder owner.']); + exit; } $result = FolderModel::renameFolder($oldFolder, $newFolder); @@ -404,7 +536,10 @@ private static function enforceFolderScope( // 1) Full list from model $all = FolderModel::getFolderList(); // each row: ["folder","fileCount","metadataFile"] - if (!is_array($all)) { echo json_encode([]); exit; } + if (!is_array($all)) { + echo json_encode([]); + exit; + } // 2) Filter by view rights if (!$isAdmin) { @@ -441,21 +576,79 @@ private static function enforceFolderScope( $page = filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT); if ($page === false || $page < 1) $page = 1; - if (empty($token)) { http_response_code(400); header('Content-Type: application/json'); echo json_encode(["error" => "Missing token."]); exit; } + if (empty($token)) { + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode(["error" => "Missing token."]); + exit; + } $data = FolderModel::getSharedFolderData($token, $providedPass, $page); if (isset($data['needs_password']) && $data['needs_password'] === true) { header("Content-Type: text/html; charset=utf-8"); ?> - -Enter Password - -

    Folder Protected

    This folder is protected by a password. Please enter the password to view its contents.

    -
    - + + + + + + Enter Password + + + + +
    +

    Folder Protected

    +

    This folder is protected by a password. Please enter the password to view its contents.

    +
    +
    + + + + $data['error']]); exit; } + if (isset($data['error'])) { + http_response_code(403); + header('Content-Type: application/json'); + echo json_encode(["error" => $data['error']]); + exit; + } require_once PROJECT_ROOT . '/src/models/AdminModel.php'; $adminConfig = AdminModel::getConfig(); @@ -468,72 +661,222 @@ private static function enforceFolderScope( $totalPages = $data['totalPages']; header("Content-Type: text/html; charset=utf-8"); ?> - - - -Shared Folder: <?php echo htmlspecialchars($folderName, ENT_QUOTES, 'UTF-8'); ?> - - - -

    Shared Folder:

    -
    - - - - - + + + + Shared Folder: <?php echo htmlspecialchars($folderName, ENT_QUOTES, 'UTF-8'); ?> + + + + +
    +

    Shared Folder:

    +
    +
    + +
    + +

    This folder is empty.

    + + + + + + + + + + + + + + + + +
    FilenameSize
    + +
    + + + + +
    +

    Upload File ( max size)

    +
    + +

    +
    +
    + +
    + + + + + + self::requireNotReadOnly(); $in = json_decode(file_get_contents("php://input"), true); - if (!$in || !isset($in['folder'])) { http_response_code(400); echo json_encode(["error" => "Invalid input."]); exit; } + if (!$in || !isset($in['folder'])) { + http_response_code(400); + echo json_encode(["error" => "Invalid input."]); + exit; + } $folder = trim((string)$in['folder']); $value = isset($in['expirationValue']) ? intval($in['expirationValue']) : 60; @@ -555,7 +902,11 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> $password = (string)($in['password'] ?? ''); $allowUpload = intval($in['allowUpload'] ?? 0); - if ($folder !== 'root' && !preg_match(REGEX_FOLDER_NAME, $folder)) { http_response_code(400); echo json_encode(["error" => "Invalid folder name."]); exit; } + if ($folder !== 'root' && !preg_match(REGEX_FOLDER_NAME, $folder)) { + http_response_code(400); + echo json_encode(["error" => "Invalid folder name."]); + exit; + } $username = $_SESSION['username'] ?? ''; $perms = self::getPerms(); @@ -563,30 +914,46 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> // Must have share on this folder OR be ancestor owner if (!(ACL::canShare($username, $perms, $folder) || self::ownsFolderOrAncestor($folder, $username, $perms))) { - http_response_code(403); echo json_encode(["error" => "Sharing is not permitted for your account."]); exit; + http_response_code(403); + echo json_encode(["error" => "Sharing is not permitted for your account."]); + exit; } // Folder-scope: need share capability within scope if ($msg = self::enforceFolderScope($folder, $username, $perms, 'share')) { - http_response_code(403); echo json_encode(["error" => $msg]); exit; + http_response_code(403); + echo json_encode(["error" => $msg]); + exit; } // Ownership requirement unless bypassed (allow ancestor owners) if (!self::canBypassOwnership($perms) && !self::ownsFolderOrAncestor($folder, $username, $perms)) { - http_response_code(403); echo json_encode(["error" => "Forbidden: you are not the owner of this folder."]); exit; + http_response_code(403); + echo json_encode(["error" => "Forbidden: you are not the owner of this folder."]); + exit; } if ($allowUpload === 1 && !empty($perms['disableUpload']) && !$isAdmin) { - http_response_code(403); echo json_encode(["error" => "You cannot enable uploads on shared folders."]); exit; + http_response_code(403); + echo json_encode(["error" => "You cannot enable uploads on shared folders."]); + exit; } if ($value < 1) $value = 1; switch ($unit) { - case 'seconds': $seconds = $value; break; - case 'hours': $seconds = $value * 3600; break; - case 'days': $seconds = $value * 86400; break; + case 'seconds': + $seconds = $value; + break; + case 'hours': + $seconds = $value * 3600; + break; + case 'days': + $seconds = $value * 86400; + break; case 'minutes': - default: $seconds = $value * 60; break; + default: + $seconds = $value * 60; + break; } $seconds = min($seconds, 31536000); @@ -601,13 +968,28 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> $token = filter_input(INPUT_GET, 'token', FILTER_SANITIZE_STRING); $file = filter_input(INPUT_GET, 'file', FILTER_SANITIZE_STRING); - if (empty($token) || empty($file)) { http_response_code(400); header('Content-Type: application/json'); echo json_encode(["error" => "Missing token or file parameter."]); exit; } + if (empty($token) || empty($file)) { + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode(["error" => "Missing token or file parameter."]); + exit; + } $basename = basename($file); - if (!preg_match(REGEX_FILE_NAME, $basename)) { http_response_code(400); header('Content-Type: application/json'); echo json_encode(["error" => "Invalid file name."]); exit; } + if (!preg_match(REGEX_FILE_NAME, $basename)) { + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode(["error" => "Invalid file name."]); + exit; + } $result = FolderModel::getSharedFileInfo($token, $basename); - if (isset($result['error'])) { http_response_code(404); header('Content-Type: application/json'); echo json_encode(["error" => $result['error']]); exit; } + if (isset($result['error'])) { + http_response_code(404); + header('Content-Type: application/json'); + echo json_encode(["error" => $result['error']]); + exit; + } $realFilePath = $result['realFilePath']; $mimeType = $result['mimeType']; @@ -615,7 +997,7 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> header('X-Content-Type-Options: nosniff'); header("Content-Type: " . $mimeType); $ext = strtolower(pathinfo($realFilePath, PATHINFO_EXTENSION)); - if (in_array($ext, ['jpg','jpeg','png','gif','bmp','webp','svg','ico'])) { + if (in_array($ext, ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'svg', 'ico'])) { header('Content-Disposition: inline; filename="' . basename($realFilePath) . '"'); } else { header('Content-Disposition: attachment; filename="' . basename($realFilePath) . '"'); @@ -629,12 +1011,27 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> /* -------------------- API: Upload to Shared Folder -------------------- */ public function uploadToSharedFolder(): void { - if ($_SERVER['REQUEST_METHOD'] !== 'POST') { http_response_code(405); header('Content-Type: application/json'); echo json_encode(["error" => "Method not allowed."]); exit; } + if ($_SERVER['REQUEST_METHOD'] !== 'POST') { + http_response_code(405); + header('Content-Type: application/json'); + echo json_encode(["error" => "Method not allowed."]); + exit; + } - if (empty($_POST['token'])) { http_response_code(400); header('Content-Type: application/json'); echo json_encode(["error" => "Missing share token."]); exit; } + if (empty($_POST['token'])) { + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode(["error" => "Missing share token."]); + exit; + } $token = trim($_POST['token']); - if (!isset($_FILES['fileToUpload'])) { http_response_code(400); header('Content-Type: application/json'); echo json_encode(["error" => "No file was uploaded."]); exit; } + if (!isset($_FILES['fileToUpload'])) { + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode(["error" => "No file was uploaded."]); + exit; + } $fileUpload = $_FILES['fileToUpload']; if (!empty($fileUpload['error']) && $fileUpload['error'] !== UPLOAD_ERR_OK) { @@ -648,11 +1045,19 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> UPLOAD_ERR_EXTENSION => 'A PHP extension stopped the file upload.' ]; $msg = $map[$fileUpload['error']] ?? 'Upload error.'; - http_response_code(400); header('Content-Type: application/json'); echo json_encode(['error' => $msg]); exit; + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode(['error' => $msg]); + exit; } $result = FolderModel::uploadToSharedFolder($token, $fileUpload); - if (isset($result['error'])) { http_response_code(400); header('Content-Type: application/json'); echo json_encode($result); exit; } + if (isset($result['error'])) { + http_response_code(400); + header('Content-Type: application/json'); + echo json_encode($result); + exit; + } $_SESSION['upload_message'] = "File uploaded successfully."; $redirectUrl = "/api/folder/shareFolder.php?token=" . urlencode($token); @@ -692,7 +1097,11 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> self::requireCsrf(); $token = $_POST['token'] ?? ''; - if (!$token) { http_response_code(400); echo json_encode(['success' => false, 'error' => 'No token provided']); return; } + if (!$token) { + http_response_code(400); + echo json_encode(['success' => false, 'error' => 'No token provided']); + return; + } $deleted = FolderModel::deleteShareFolderLink($token); if ($deleted) { @@ -703,78 +1112,207 @@ for ($i = $startPage; $i <= $endPage; $i++): ?> } } + public function getFolderColors(): void + { + header('Content-Type: application/json; charset=utf-8'); + self::requireAuth(); + + $user = $_SESSION['username'] ?? ''; + $perms = $this->loadPerms($user); + + $map = FolderMeta::getMap(); + $out = []; + foreach ($map as $folder => $hex) { + $folder = FolderMeta::normalizeFolder($folder); + if (ACL::canRead($user, $perms, $folder)) $out[$folder] = $hex; + } + echo json_encode($out, JSON_UNESCAPED_SLASHES); + } + + public function saveFolderColor(): void + { + header('Content-Type: application/json; charset=utf-8'); + self::requireAuth(); + if (($_SERVER['REQUEST_METHOD'] ?? 'GET') !== 'POST') { + http_response_code(405); + echo json_encode(['error' => 'Method not allowed']); + return; + } + + // CSRF + $hdr = $_SERVER['HTTP_X_CSRF_TOKEN'] ?? ''; + $tok = $_SESSION['csrf_token'] ?? ''; + if (!$hdr || !$tok || !hash_equals((string)$tok, (string)$hdr)) { + http_response_code(403); + echo json_encode(['error' => 'Invalid CSRF token']); + return; + } + + $user = $_SESSION['username'] ?? ''; + $perms = $this->loadPerms($user); + + $body = json_decode(file_get_contents('php://input') ?: "{}", true) ?: []; + $folder = FolderMeta::normalizeFolder((string)($body['folder'] ?? 'root')); + $color = isset($body['color']) ? (string)$body['color'] : ''; + + // Treat “customize color” as rename-level capability (your convention) + if (!ACL::canRename($user, $perms, $folder)) { + http_response_code(403); + echo json_encode(['error' => 'Forbidden']); + return; + } + + try { + $res = FolderMeta::setColor($folder, $color === '' ? null : $color); + echo json_encode(['success' => true] + $res, JSON_UNESCAPED_SLASHES); + } catch (\InvalidArgumentException $e) { + http_response_code(400); + echo json_encode(['error' => $e->getMessage()]); + } + } + /* -------------------- API: Move Folder -------------------- */ public function moveFolder(): void { header('Content-Type: application/json; charset=utf-8'); self::requireAuth(); - if (($_SERVER['REQUEST_METHOD'] ?? 'GET') !== 'POST') { http_response_code(405); echo json_encode(['error'=>'Method not allowed']); return; } + if (($_SERVER['REQUEST_METHOD'] ?? 'GET') !== 'POST') { + http_response_code(405); + echo json_encode(['error' => 'Method not allowed']); + return; + } // CSRF: accept header or form field $hdr = $_SERVER['HTTP_X_CSRF_TOKEN'] ?? ''; $tok = $_SESSION['csrf_token'] ?? ''; - if (!$hdr || !$tok || !hash_equals((string)$tok, (string)$hdr)) { http_response_code(403); echo json_encode(['error'=>'Invalid CSRF token']); return; } + if (!$hdr || !$tok || !hash_equals((string)$tok, (string)$hdr)) { + http_response_code(403); + echo json_encode(['error' => 'Invalid CSRF token']); + return; + } $raw = file_get_contents('php://input'); $input = json_decode($raw ?: "{}", true); $source = trim((string)($input['source'] ?? '')); $destination = trim((string)($input['destination'] ?? '')); - if ($source === '' || strcasecmp($source,'root')===0) { http_response_code(400); echo json_encode(['error'=>'Invalid source folder']); return; } + if ($source === '' || strcasecmp($source, 'root') === 0) { + http_response_code(400); + echo json_encode(['error' => 'Invalid source folder']); + return; + } if ($destination === '') $destination = 'root'; // basic segment validation - foreach ([$source,$destination] as $f) { - if ($f==='root') continue; - $parts = array_filter(explode('/', trim($f, "/\\ ")), fn($p)=>$p!==''); + foreach ([$source, $destination] as $f) { + if ($f === 'root') continue; + $parts = array_filter(explode('/', trim($f, "/\\ ")), fn($p) => $p !== ''); foreach ($parts as $seg) { - if (!preg_match(REGEX_FOLDER_NAME, $seg)) { http_response_code(400); echo json_encode(['error'=>'Invalid folder segment']); return; } + if (!preg_match(REGEX_FOLDER_NAME, $seg)) { + http_response_code(400); + echo json_encode(['error' => 'Invalid folder segment']); + return; + } } } $srcNorm = trim($source, "/\\ "); - $dstNorm = $destination==='root' ? '' : trim($destination, "/\\ "); + $dstNorm = $destination === 'root' ? '' : trim($destination, "/\\ "); // prevent move into self/descendant - if ($dstNorm !== '' && (strcasecmp($dstNorm,$srcNorm)===0 || strpos($dstNorm.'/', $srcNorm.'/')===0)) { - http_response_code(400); echo json_encode(['error'=>'Destination cannot be the source or its descendant']); return; + if ($dstNorm !== '' && (strcasecmp($dstNorm, $srcNorm) === 0 || strpos($dstNorm . '/', $srcNorm . '/') === 0)) { + http_response_code(400); + echo json_encode(['error' => 'Destination cannot be the source or its descendant']); + return; } $username = $_SESSION['username'] ?? ''; $perms = $this->loadPerms($username); // enforce scopes (source manage-ish, dest write-ish) - if ($msg = self::enforceFolderScope($source, $username, $perms, 'manage')) { http_response_code(403); echo json_encode(['error'=>$msg]); return; } - if ($msg = self::enforceFolderScope($destination, $username, $perms, 'write')) { http_response_code(403); echo json_encode(['error'=>$msg]); return; } + if ($msg = self::enforceFolderScope($source, $username, $perms, 'manage')) { + http_response_code(403); + echo json_encode(['error' => $msg]); + return; + } + if ($msg = self::enforceFolderScope($destination, $username, $perms, 'write')) { + http_response_code(403); + echo json_encode(['error' => $msg]); + return; + } // Check capabilities using ACL helpers $canManageSource = ACL::canManage($username, $perms, $source) || ACL::isOwner($username, $perms, $source); - $canMoveIntoDest = ACL::canMove($username, $perms, $destination) || ($destination==='root' ? self::isAdmin($perms) : ACL::isOwner($username, $perms, $destination)); - if (!$canManageSource) { http_response_code(403); echo json_encode(['error'=>'Forbidden: manage rights required on source']); return; } - if (!$canMoveIntoDest) { http_response_code(403); echo json_encode(['error'=>'Forbidden: move rights required on destination']); return; } + $canMoveIntoDest = ACL::canMove($username, $perms, $destination) || ($destination === 'root' ? self::isAdmin($perms) : ACL::isOwner($username, $perms, $destination)); + if (!$canManageSource) { + http_response_code(403); + echo json_encode(['error' => 'Forbidden: manage rights required on source']); + return; + } + if (!$canMoveIntoDest) { + http_response_code(403); + echo json_encode(['error' => 'Forbidden: move rights required on destination']); + return; + } // Non-admin: enforce same owner between source and destination tree (if any) $isAdmin = self::isAdmin($perms); if (!$isAdmin) { try { $ownerSrc = FolderModel::getOwnerFor($source) ?? ''; - $ownerDst = $destination==='root' ? '' : (FolderModel::getOwnerFor($destination) ?? ''); + $ownerDst = $destination === 'root' ? '' : (FolderModel::getOwnerFor($destination) ?? ''); if ($ownerSrc !== $ownerDst) { - http_response_code(403); echo json_encode(['error'=>'Source and destination must have the same owner']); return; + http_response_code(403); + echo json_encode(['error' => 'Source and destination must have the same owner']); + return; } - } catch (\Throwable $e) { /* ignore – fall through */ } + } catch (\Throwable $e) { /* ignore – fall through */ + } } // Compute final target "destination/basename(source)" - $baseName = basename(str_replace('\\','/', $srcNorm)); - $target = $destination==='root' ? $baseName : rtrim($destination, "/\\ ") . '/' . $baseName; + $baseName = basename(str_replace('\\', '/', $srcNorm)); + $target = $destination === 'root' ? $baseName : rtrim($destination, "/\\ ") . '/' . $baseName; try { $result = FolderModel::renameFolder($source, $target); - echo json_encode($result, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); + + $result = FolderModel::renameFolder($source, $target); + + // migrate ACL subtree (best-effort; never block the move) + $aclStats = []; + try { + $aclStats = ACL::migrateSubtree($source, $target); + } catch (\Throwable $e) { + error_log('moveFolder ACL-migration warning: ' . $e->getMessage()); + } + + // If you already added color migration, just append this too: + $resultArr = is_array($result) ? $result : ['success' => true, 'target' => $target]; + $resultArr['aclMigration'] = $aclStats + ['changed' => false, 'moved' => 0]; + + echo json_encode($resultArr, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); + + // If the move succeeded, migrate folder color mappings server-side + $colorStats = []; + if (is_array($result) && (!isset($result['success']) || $result['success'])) { + try { + $colorStats = self::migrateFolderColors($source, $target); + } catch (\Throwable $e) { + error_log('moveFolder color-migration warning: ' . $e->getMessage()); + } + } + + // merge stats into response (non-breaking) + if (is_array($result)) { + $result['colorMigration'] = $colorStats + ['changed' => false, 'moved' => 0]; + echo json_encode($result, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); + } else { + echo json_encode(['success' => true, 'target' => $target, 'colorMigration' => $colorStats + ['changed' => false, 'moved' => 0]], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); + } } catch (\Throwable $e) { - error_log('moveFolder error: '.$e->getMessage()); + error_log('moveFolder error: ' . $e->getMessage()); http_response_code(500); - echo json_encode(['error'=>'Internal error moving folder']); + echo json_encode(['error' => 'Internal error moving folder']); } } } diff --git a/src/lib/ACL.php b/src/lib/ACL.php index f9032da..b043c58 100644 --- a/src/lib/ACL.php +++ b/src/lib/ACL.php @@ -10,23 +10,38 @@ class ACL private static $path = null; private const BUCKETS = [ - 'owners','read','write','share','read_own', - 'create','upload','edit','rename','copy','move','delete','extract', - 'share_file','share_folder' + 'owners', + 'read', + 'write', + 'share', + 'read_own', + 'create', + 'upload', + 'edit', + 'rename', + 'copy', + 'move', + 'delete', + 'extract', + 'share_file', + 'share_folder' ]; - private static function path(): string { + private static function path(): string + { if (!self::$path) self::$path = rtrim(META_DIR, '/\\') . DIRECTORY_SEPARATOR . 'folder_acl.json'; return self::$path; } - public static function normalizeFolder(string $f): string { + public static function normalizeFolder(string $f): string + { $f = trim(str_replace('\\', '/', $f), "/ \t\r\n"); if ($f === '' || $f === 'root') return 'root'; return $f; } - public static function purgeUser(string $user): bool { + public static function purgeUser(string $user): bool + { $user = (string)$user; $acl = self::$cache ?? self::loadFresh(); $changed = false; @@ -41,49 +56,107 @@ class ACL return $changed ? self::save($acl) : true; } public static function ownsFolderOrAncestor(string $user, array $perms, string $folder): bool -{ - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - if (self::hasGrant($user, $folder, 'owners')) return true; + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + if (self::hasGrant($user, $folder, 'owners')) return true; - $folder = trim($folder, "/\\ "); - if ($folder === '' || $folder === 'root') return false; + $folder = trim($folder, "/\\ "); + if ($folder === '' || $folder === 'root') return false; - $parts = explode('/', $folder); - while (count($parts) > 1) { - array_pop($parts); - $parent = implode('/', $parts); - if (self::hasGrant($user, $parent, 'owners')) return true; + $parts = explode('/', $folder); + while (count($parts) > 1) { + array_pop($parts); + $parent = implode('/', $parts); + if (self::hasGrant($user, $parent, 'owners')) return true; + } + return false; + } + + public static function migrateSubtree(string $source, string $target): array + { + // PHP <8 polyfill + if (!function_exists('str_starts_with')) { + function str_starts_with(string $h, string $n): bool + { + return $n === '' || strncmp($h, $n, strlen($n)) === 0; + } + } + + $src = self::normalizeFolder($source); + $dst = self::normalizeFolder($target); + if ($src === 'root') return ['changed' => false, 'moved' => 0]; + + $file = self::path(); // e.g. META_DIR/folder_acl.json + $raw = @file_get_contents($file); + $map = is_string($raw) ? json_decode($raw, true) : []; + if (!is_array($map)) $map = []; + + $prefix = $src; + $needle = $src . '/'; + + $new = $map; + $changed = false; + $moved = 0; + + foreach ($map as $key => $entry) { + $isMatch = ($key === $prefix) || str_starts_with($key . '/', $needle); + if (!$isMatch) continue; + + unset($new[$key]); + + $suffix = substr($key, strlen($prefix)); // '' or '/sub/...' + $newKey = ($dst === 'root') ? ltrim($suffix, '/\\') : rtrim($dst, '/\\') . $suffix; + + // keep only known buckets (defensive) + if (is_array($entry)) { + $clean = []; + foreach (self::BUCKETS as $b) if (array_key_exists($b, $entry)) $clean[$b] = $entry[$b]; + $entry = $clean ?: $entry; + } + + // overwrite any existing entry at destination path (safer than union) + $new[$newKey] = $entry; + $changed = true; + $moved++; + } + + if ($changed) { + @file_put_contents($file, json_encode($new, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES), LOCK_EX); + @chmod($file, 0664); + self::$cache = $new; // keep in-process cache fresh if you use it + } + + return ['changed' => $changed, 'moved' => $moved]; } - return false; -} /** Re-key explicit ACL entries for an entire subtree: old/... → new/... */ -public static function renameTree(string $oldFolder, string $newFolder): void -{ - $old = self::normalizeFolder($oldFolder); - $new = self::normalizeFolder($newFolder); - if ($old === '' || $old === 'root') return; // nothing to re-key for root + public static function renameTree(string $oldFolder, string $newFolder): void + { + $old = self::normalizeFolder($oldFolder); + $new = self::normalizeFolder($newFolder); + if ($old === '' || $old === 'root') return; // nothing to re-key for root - $acl = self::$cache ?? self::loadFresh(); - if (!isset($acl['folders']) || !is_array($acl['folders'])) return; + $acl = self::$cache ?? self::loadFresh(); + if (!isset($acl['folders']) || !is_array($acl['folders'])) return; - $rebased = []; - foreach ($acl['folders'] as $k => $rec) { - if ($k === $old || strpos($k, $old . '/') === 0) { - $suffix = substr($k, strlen($old)); - $suffix = ltrim((string)$suffix, '/'); - $newKey = $new . ($suffix !== '' ? '/' . $suffix : ''); - $rebased[$newKey] = $rec; - } else { - $rebased[$k] = $rec; + $rebased = []; + foreach ($acl['folders'] as $k => $rec) { + if ($k === $old || strpos($k, $old . '/') === 0) { + $suffix = substr($k, strlen($old)); + $suffix = ltrim((string)$suffix, '/'); + $newKey = $new . ($suffix !== '' ? '/' . $suffix : ''); + $rebased[$newKey] = $rec; + } else { + $rebased[$k] = $rec; + } } + $acl['folders'] = $rebased; + self::save($acl); } - $acl['folders'] = $rebased; - self::save($acl); -} - private static function loadFresh(): array { + private static function loadFresh(): array + { $path = self::path(); if (!is_file($path)) { @mkdir(dirname($path), 0755, true); @@ -94,7 +167,7 @@ public static function renameTree(string $oldFolder, string $newFolder): void 'read' => ['admin'], 'write' => ['admin'], 'share' => ['admin'], - 'read_own'=> [], + 'read_own' => [], 'create' => [], 'upload' => [], 'edit' => [], @@ -130,12 +203,21 @@ public static function renameTree(string $oldFolder, string $newFolder): void $healed = false; foreach ($data['folders'] as $folder => &$rec) { - if (!is_array($rec)) { $rec = []; $healed = true; } + if (!is_array($rec)) { + $rec = []; + $healed = true; + } foreach (self::BUCKETS as $k) { $v = $rec[$k] ?? []; - if (!is_array($v)) { $v = []; $healed = true; } + if (!is_array($v)) { + $v = []; + $healed = true; + } $v = array_values(array_unique(array_map('strval', $v))); - if (($rec[$k] ?? null) !== $v) { $rec[$k] = $v; $healed = true; } + if (($rec[$k] ?? null) !== $v) { + $rec[$k] = $v; + $healed = true; + } } } unset($rec); @@ -145,19 +227,22 @@ public static function renameTree(string $oldFolder, string $newFolder): void return $data; } - private static function save(array $acl): bool { + private static function save(array $acl): bool + { $ok = @file_put_contents(self::path(), json_encode($acl, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES), LOCK_EX) !== false; if ($ok) self::$cache = $acl; return $ok; } - private static function listFor(string $folder, string $key): array { + private static function listFor(string $folder, string $key): array + { $acl = self::$cache ?? self::loadFresh(); $f = $acl['folders'][$folder] ?? null; return is_array($f[$key] ?? null) ? $f[$key] : []; } - public static function ensureFolderRecord(string $folder, string $owner = 'admin'): void { + public static function ensureFolderRecord(string $folder, string $owner = 'admin'): void + { $folder = self::normalizeFolder($folder); $acl = self::$cache ?? self::loadFresh(); if (!isset($acl['folders'][$folder])) { @@ -182,19 +267,23 @@ public static function renameTree(string $oldFolder, string $newFolder): void } } - public static function isAdmin(array $perms = []): bool { + public static function isAdmin(array $perms = []): bool + { if (!empty($_SESSION['isAdmin'])) return true; if (!empty($perms['admin']) || !empty($perms['isAdmin'])) return true; if (isset($perms['role']) && (string)$perms['role'] === '1') return true; if (!empty($_SESSION['role']) && (string)$_SESSION['role'] === '1') return true; - if (defined('DEFAULT_ADMIN_USER') && !empty($_SESSION['username']) - && strcasecmp((string)$_SESSION['username'], (string)DEFAULT_ADMIN_USER) === 0) { + if ( + defined('DEFAULT_ADMIN_USER') && !empty($_SESSION['username']) + && strcasecmp((string)$_SESSION['username'], (string)DEFAULT_ADMIN_USER) === 0 + ) { return true; } return false; } - public static function hasGrant(string $user, string $folder, string $cap): bool { + public static function hasGrant(string $user, string $folder, string $cap): bool + { $folder = self::normalizeFolder($folder); $capKey = ($cap === 'owner') ? 'owners' : $cap; $arr = self::listFor($folder, $capKey); @@ -202,35 +291,41 @@ public static function renameTree(string $oldFolder, string $newFolder): void return false; } - public static function isOwner(string $user, array $perms, string $folder): bool { + public static function isOwner(string $user, array $perms, string $folder): bool + { if (self::isAdmin($perms)) return true; return self::hasGrant($user, $folder, 'owners'); } - public static function canManage(string $user, array $perms, string $folder): bool { + public static function canManage(string $user, array $perms, string $folder): bool + { return self::isOwner($user, $perms, $folder); } - public static function canRead(string $user, array $perms, string $folder): bool { + public static function canRead(string $user, array $perms, string $folder): bool + { $folder = self::normalizeFolder($folder); if (self::isAdmin($perms)) return true; return self::hasGrant($user, $folder, 'owners') || self::hasGrant($user, $folder, 'read'); } - public static function canReadOwn(string $user, array $perms, string $folder): bool { + public static function canReadOwn(string $user, array $perms, string $folder): bool + { if (self::canRead($user, $perms, $folder)) return true; return self::hasGrant($user, $folder, 'read_own'); } - public static function canWrite(string $user, array $perms, string $folder): bool { + public static function canWrite(string $user, array $perms, string $folder): bool + { $folder = self::normalizeFolder($folder); if (self::isAdmin($perms)) return true; return self::hasGrant($user, $folder, 'owners') || self::hasGrant($user, $folder, 'write'); } - public static function canShare(string $user, array $perms, string $folder): bool { + public static function canShare(string $user, array $perms, string $folder): bool + { $folder = self::normalizeFolder($folder); if (self::isAdmin($perms)) return true; return self::hasGrant($user, $folder, 'owners') @@ -238,7 +333,8 @@ public static function renameTree(string $oldFolder, string $newFolder): void } // Legacy-only explicit (to avoid breaking existing callers) - public static function explicit(string $folder): array { + public static function explicit(string $folder): array + { $folder = self::normalizeFolder($folder); $acl = self::$cache ?? self::loadFresh(); $rec = $acl['folders'][$folder] ?? []; @@ -257,7 +353,8 @@ public static function renameTree(string $oldFolder, string $newFolder): void } // New: full explicit including granular - public static function explicitAll(string $folder): array { + public static function explicitAll(string $folder): array + { $folder = self::normalizeFolder($folder); $acl = self::$cache ?? self::loadFresh(); $rec = $acl['folders'][$folder] ?? []; @@ -285,7 +382,8 @@ public static function renameTree(string $oldFolder, string $newFolder): void ]; } - public static function upsert(string $folder, array $owners, array $read, array $write, array $share): bool { + public static function upsert(string $folder, array $owners, array $read, array $write, array $share): bool + { $folder = self::normalizeFolder($folder); $acl = self::$cache ?? self::loadFresh(); $existing = $acl['folders'][$folder] ?? ['read_own' => []]; @@ -314,19 +412,23 @@ public static function renameTree(string $oldFolder, string $newFolder): void return self::save($acl); } - public static function applyUserGrantsAtomic(string $user, array $grants): array { + public static function applyUserGrantsAtomic(string $user, array $grants): array + { $user = (string)$user; $path = self::path(); $fh = @fopen($path, 'c+'); if (!$fh) throw new RuntimeException('Cannot open ACL storage'); - if (!flock($fh, LOCK_EX)) { fclose($fh); throw new RuntimeException('Cannot lock ACL storage'); } + if (!flock($fh, LOCK_EX)) { + fclose($fh); + throw new RuntimeException('Cannot lock ACL storage'); + } try { $raw = stream_get_contents($fh); if ($raw === false) $raw = ''; $acl = json_decode($raw, true); - if (!is_array($acl)) $acl = ['folders'=>[], 'groups'=>[]]; + if (!is_array($acl)) $acl = ['folders' => [], 'groups' => []]; if (!isset($acl['folders']) || !is_array($acl['folders'])) $acl['folders'] = []; if (!isset($acl['groups']) || !is_array($acl['groups'])) $acl['groups'] = []; @@ -335,7 +437,7 @@ public static function renameTree(string $oldFolder, string $newFolder): void foreach ($grants as $folder => $caps) { $ff = self::normalizeFolder((string)$folder); if (!isset($acl['folders'][$ff]) || !is_array($acl['folders'][$ff])) $acl['folders'][$ff] = []; - $rec =& $acl['folders'][$ff]; + $rec = &$acl['folders'][$ff]; foreach (self::BUCKETS as $k) { if (!isset($rec[$k]) || !is_array($rec[$k])) $rec[$k] = []; @@ -365,10 +467,16 @@ public static function renameTree(string $oldFolder, string $newFolder): void $sf = !empty($caps['shareFile']) || !empty($caps['share_file']); $sfo = !empty($caps['shareFolder']) || !empty($caps['share_folder']); - if ($m) { $v = true; $w = true; $u = $c = $ed = $rn = $cp = $dl = $ex = $sf = $sfo = true; } + if ($m) { + $v = true; + $w = true; + $u = $c = $ed = $rn = $cp = $dl = $ex = $sf = $sfo = true; + } if ($u && !$v && !$vo) $vo = true; //if ($s && !$v) $v = true; - if ($w) { $c = $u = $ed = $rn = $cp = $dl = $ex = true; } + if ($w) { + $c = $u = $ed = $rn = $cp = $dl = $ex = true; + } if ($m) $rec['owners'][] = $user; if ($v) $rec['read'][] = $user; @@ -385,7 +493,7 @@ public static function renameTree(string $oldFolder, string $newFolder): void if ($dl) $rec['delete'][] = $user; if ($ex) $rec['extract'][] = $user; if ($sf) $rec['share_file'][] = $user; - if ($sfo)$rec['share_folder'][] = $user; + if ($sfo) $rec['share_folder'][] = $user; foreach (self::BUCKETS as $k) { $rec[$k] = array_values(array_unique(array_map('strval', $rec[$k]))); @@ -409,90 +517,102 @@ public static function renameTree(string $oldFolder, string $newFolder): void } } -// --- Granular write family ----------------------------------------------- + // --- Granular write family ----------------------------------------------- -public static function canCreate(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'create') - || self::hasGrant($user, $folder, 'write'); -} + public static function canCreate(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'create') + || self::hasGrant($user, $folder, 'write'); + } -public static function canCreateFolder(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - // Only owners/managers can create subfolders under $folder - return self::hasGrant($user, $folder, 'owners'); -} + public static function canCreateFolder(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + // Only owners/managers can create subfolders under $folder + return self::hasGrant($user, $folder, 'owners'); + } -public static function canUpload(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'upload') - || self::hasGrant($user, $folder, 'write'); -} + public static function canUpload(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'upload') + || self::hasGrant($user, $folder, 'write'); + } -public static function canEdit(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'edit') - || self::hasGrant($user, $folder, 'write'); -} + public static function canEdit(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'edit') + || self::hasGrant($user, $folder, 'write'); + } -public static function canRename(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'rename') - || self::hasGrant($user, $folder, 'write'); -} + public static function canRename(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'rename') + || self::hasGrant($user, $folder, 'write'); + } -public static function canCopy(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'copy') - || self::hasGrant($user, $folder, 'write'); -} + public static function canCopy(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'copy') + || self::hasGrant($user, $folder, 'write'); + } -public static function canMove(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::ownsFolderOrAncestor($user, $perms, $folder); -} + public static function canMove(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::ownsFolderOrAncestor($user, $perms, $folder); + } -public static function canMoveFolder(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::ownsFolderOrAncestor($user, $perms, $folder); -} + public static function canMoveFolder(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::ownsFolderOrAncestor($user, $perms, $folder); + } -public static function canDelete(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'delete') - || self::hasGrant($user, $folder, 'write'); -} + public static function canDelete(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'delete') + || self::hasGrant($user, $folder, 'write'); + } + + public static function canExtract(string $user, array $perms, string $folder): bool + { + $folder = self::normalizeFolder($folder); + if (self::isAdmin($perms)) return true; + return self::hasGrant($user, $folder, 'owners') + || self::hasGrant($user, $folder, 'extract') + || self::hasGrant($user, $folder, 'write'); + } -public static function canExtract(string $user, array $perms, string $folder): bool { - $folder = self::normalizeFolder($folder); - if (self::isAdmin($perms)) return true; - return self::hasGrant($user, $folder, 'owners') - || self::hasGrant($user, $folder, 'extract') - || self::hasGrant($user, $folder, 'write'); -} - /** Sharing: files use share, folders require share + full-view. */ - public static function canShareFile(string $user, array $perms, string $folder): bool { + public static function canShareFile(string $user, array $perms, string $folder): bool + { $folder = self::normalizeFolder($folder); if (self::isAdmin($perms)) return true; return self::hasGrant($user, $folder, 'owners') || self::hasGrant($user, $folder, 'share'); } - public static function canShareFolder(string $user, array $perms, string $folder): bool { + public static function canShareFolder(string $user, array $perms, string $folder): bool + { $folder = self::normalizeFolder($folder); if (self::isAdmin($perms)) return true; $can = self::hasGrant($user, $folder, 'owners') || self::hasGrant($user, $folder, 'share'); diff --git a/src/models/FolderMeta.php b/src/models/FolderMeta.php new file mode 100644 index 0000000..b2662f4 --- /dev/null +++ b/src/models/FolderMeta.php @@ -0,0 +1,90 @@ +$folder, 'color'=>$map[$folder] ?? null]; + } + + /** Migrate color entries for a whole subtree (used by move/rename) */ + public static function migrateSubtree(string $source, string $target): array { + $src = self::normalizeFolder($source); + $dst = self::normalizeFolder($target); + if ($src === 'root') return ['changed'=>false, 'moved'=>0]; + + $map = self::getMap(); + if (!$map) return ['changed'=>false, 'moved'=>0]; + + $new = $map; + $moved = 0; + + foreach ($map as $key => $hex) { + $isSelf = ($key === $src); + $isSub = str_starts_with($key.'/', $src.'/'); + if (!$isSelf && !$isSub) continue; + + unset($new[$key]); + $suffix = substr($key, strlen($src)); // '' or '/child/...' + $newKey = $dst === 'root' ? ltrim($suffix,'/') : rtrim($dst,'/') . $suffix; + $new[$newKey] = $hex; + $moved++; + } + + if ($moved) self::writeMap($new); + return ['changed'=> (bool)$moved, 'moved'=> $moved]; + } +} \ No newline at end of file