prepare($stats_query); $stats_stmt->execute([$user['role']]); $stats = $stats_stmt->fetch(); // Get all projects $projects_stmt = $pdo->query("SELECT * FROM projects ORDER BY name"); $projects = $projects_stmt->fetchAll(); // Get all users $users_stmt = $pdo->query("SELECT * FROM users ORDER BY name"); $users = $users_stmt->fetchAll(); // Get all packages $packages_stmt = $pdo->query("SELECT * FROM packages ORDER BY name"); $packages = $packages_stmt->fetchAll(); // Get folders $folders_query = " SELECT f.*, p.name as project_name FROM folders f LEFT JOIN projects p ON f.project_id = p.id WHERE f.restricted = 0 OR ? IN ('ADMIN', 'OWNER') ORDER BY f.project_id, f.parent_id, f.name "; $folders_stmt = $pdo->prepare($folders_query); $folders_stmt->execute([$user['role']]); $folders = $folders_stmt->fetchAll(); // Get documents with filters $search = $_GET['search'] ?? ''; $project_filter = $_GET['project'] ?? ''; $folder_filter = $_GET['folder'] ?? ''; $doc_query = " SELECT d.*, u1.name as uploaded_by_name, u2.name as issued_to_name, u3.name as issued_from_name, f.name as folder_name, p.name as project_name FROM documents d LEFT JOIN users u1 ON d.uploaded_by = u1.id LEFT JOIN users u2 ON d.issued_to = u2.id LEFT JOIN users u3 ON d.issued_from = u3.id LEFT JOIN folders f ON d.folder_id = f.id LEFT JOIN projects p ON d.project_id = p.id WHERE (f.restricted = 0 OR ? IN ('ADMIN', 'OWNER')) "; $params = [$user['role']]; if ($search) { $doc_query .= " AND (d.name LIKE ? OR d.doc_id LIKE ? OR d.standard_number LIKE ? OR d.subject LIKE ?)"; $search_param = "%$search%"; $params[] = $search_param; $params[] = $search_param; $params[] = $search_param; $params[] = $search_param; } if ($project_filter) { $doc_query .= " AND p.name = ?"; $params[] = $project_filter; } if ($folder_filter) { $doc_query .= " AND d.folder_id = ?"; $params[] = $folder_filter; } $doc_query .= " ORDER BY d.upload_date DESC"; $doc_stmt = $pdo->prepare($doc_query); $doc_stmt->execute($params); $documents = $doc_stmt->fetchAll(); ?>
Document Management System
Total Documents
Draft
Pending
Approved
Manage users and their access levels
Permission | Viewer | Editor | Admin | Owner |
---|---|---|---|---|