# Changelog ## Changes 4/27/2025 1.2.7 - **Select-All** checkbox now correctly toggles all `.file-checkbox` inputs - Updated `toggleAllCheckboxes(masterCheckbox)` to call `updateRowHighlight()` on each row so selections get the `.row-selected` highlight - **Master checkbox sync** in toolbar - Enhanced `updateFileActionButtons()` to set the header checkbox to checked, unchecked, or indeterminate based on how many files are selected - Fixed Pagination controls & Items-per-page dropdown - Fixed `#advancedSearchToggle` in both `renderFileTable()` and `renderGalleryView()` - **Shared folder gallery view logic** - Introduced new `public/js/sharedFolderView.js` containing all DOMContentLoaded wiring, `toggleViewMode()`, gallery rendering, and event listeners - Embedded a non-executing JSON payload in `shareFolder.php` - **`FolderController::shareFolder()` / `shareFolder.php`** - Removed all inline `onclick="…"` attributes and inline `` to export `$token` and `$files` - Added `` to load the external view logic - **Styling updates** - Added `.toggle-btn` CSS for blue header-style toggle button and applied it in JS - Added `.pagination a:hover { background-color: #0056b3; }` to match button hover - Tweaked `body` padding and `header h1` margins to reduce whitespace above header - Refactored `sharedFolderView.js:renderGalleryView()` to eliminate `innerHTML` usage; now uses `document.createElement` and `textContent` so filenames and URLs are fully escaped and CSP-safe --- ## Changes 4/26/2025 1.2.6 **Apache / Dockerfile (CSP)** - Enabled Apache’s `mod_headers` in the Dockerfile (`a2enmod headers ssl deflate expires proxy proxy_fcgi rewrite`) - Added a strong `Content-Security-Policy` header in the vhost configs to lock down allowed sources for scripts, styles, fonts, images, and connections **index.html & CDN Includes** - Applied Subresource Integrity (`integrity` + `crossorigin="anonymous"`) to all static CDN assets (Bootstrap CSS, CodeMirror CSS/JS, Resumable.js, DOMPurify, Fuse.js) - Omitted SRI on Google Fonts & Material Icons links (dynamic per-browser CSS) - Removed all inline `