a1a3bd1b2b
- Fix recursive CTE: add missing RECURSIVE keyword in move_to_trash and restore_from_trash SQL queries (relation 'descendants' does not exist) - Fix folder deletion: delete descendant files before folder to avoid 'duplicate key violates unique constraint idx_files_unique_name_at_root' - Simplify trash model: only mark the folder as trashed, not child files (implicit trash via parent) - Update trash_items view: filter to show only top-level trashed items - Update schema.sql: change files.folder_id FK from ON DELETE SET NULL to ON DELETE CASCADE - Fix trash view icons: folders and files now show correct visual icons (folder-icon, pdf-icon, etc.) in trash view - Frontend refactoring: extract inline CSS/JS from admin.html and profile.html into dedicated external files - Frontend cleanup: replace all inline style attributes with CSS classes - Frontend cleanup: replace style.display JS - Fix recursive CTE: add missing RECURSIVE keyword in move_to_trash and restore_from_trash SQL queries (relation 'descendants' d
27 lines
596 B
JavaScript
27 lines
596 B
JavaScript
/**
|
|
* OxiCloud - App state container
|
|
* Centralized mutable state for app and cached DOM references.
|
|
*/
|
|
|
|
window.app = {
|
|
currentView: 'grid',
|
|
currentPath: '',
|
|
currentFolder: null,
|
|
contextMenuTargetFolder: null,
|
|
contextMenuTargetFile: null,
|
|
selectedTargetFolderId: '',
|
|
moveDialogMode: 'file',
|
|
isTrashView: false,
|
|
isSharedView: false,
|
|
isFavoritesView: false,
|
|
isRecentView: false,
|
|
currentSection: 'files',
|
|
isSearchMode: false,
|
|
shareDialogItem: null,
|
|
shareDialogItemType: null,
|
|
notificationShareUrl: null
|
|
};
|
|
|
|
window.appElements = {
|
|
};
|