diff --git a/app.php b/app.php
index 35fbfad..9972215 100644
--- a/app.php
+++ b/app.php
@@ -1,99 +1,18 @@
query("SELECT COUNT(*) FROM candidates WHERE status NOT IN ('Hired', 'Rejected')")->fetchColumn();
- $newCandidatesThisWeek = $pdo->query("SELECT COUNT(*) FROM candidates WHERE created_at >= NOW() - INTERVAL 7 DAY")->fetchColumn();
-
- // Assuming tasks with "interview" in the name are interviews
- $interviewsThisWeek = $pdo->query("SELECT COUNT(*) FROM tasks WHERE title LIKE '%interview%' AND due_date >= CURDATE() AND due_date < CURDATE() + INTERVAL 7 DAY")->fetchColumn();
-
- $pendingTasks = $pdo->query("SELECT COUNT(*) FROM tasks WHERE status NOT IN ('Completed')")->fetchColumn();
- $overdueTasksCount = $pdo->query("SELECT COUNT(*) FROM tasks WHERE status NOT IN ('Completed') AND due_date < CURDATE()")->fetchColumn();
-
- $newHiresThisMonth = $pdo->query("SELECT COUNT(*) FROM candidates WHERE status = 'Hired' AND created_at >= NOW() - INTERVAL 1 MONTH")->fetchColumn();
-
- // Recent Activity Feed from workflow_logs
- $recentActivities = $pdo->query("
- SELECT wl.*, w.name as workflow_name, c.name as candidate_name
- FROM workflow_logs wl
- LEFT JOIN workflows w ON wl.workflow_id = w.id
- LEFT JOIN candidates c ON wl.candidate_id = c.id
- ORDER BY wl.executed_at DESC
- LIMIT 10
- ")->fetchAll();
-
- // At-Risk Items
- $overdueTasks = $pdo->query("
- SELECT t.title, t.due_date, c.name as candidate_name
- FROM tasks t
- LEFT JOIN candidates c ON t.assigned_to = c.id
- WHERE t.status != 'Completed' AND t.due_date < CURDATE()
- ORDER BY t.due_date ASC
- ")->fetchAll();
-
- $inactiveCandidates = $pdo->query("
- SELECT name, email, created_at
- FROM candidates
- WHERE status = 'Applied' AND created_at <= NOW() - INTERVAL 7 DAY
- ")->fetchAll();
-
- $incompleteOnboarding = $pdo->query("
- SELECT t.title, c.name as candidate_name, t.due_date
- FROM tasks t
- JOIN candidates c ON t.assigned_to = c.id
- WHERE c.status = 'Hired' AND t.status != 'Completed'
- ")->fetchAll();
-
- $all_candidates = $pdo->query("SELECT * FROM candidates ORDER BY name ASC")->fetchAll();
-
-} catch (PDOException $e) {
- error_log("Dashboard Data Fetch Error: " . $e->getMessage());
- // Initialize variables to prevent errors in the view
- $totalActiveCandidates = $newCandidatesThisWeek = $interviewsThisWeek = $pendingTasks = $overdueTasksCount = $newHiresThisMonth = 0;
- $recentActivities = $overdueTasks = $inactiveCandidates = $incompleteOnboarding = $all_candidates = [];
-}
-
-function time_ago($datetime, $full = false) {
- $now = new DateTime;
- $ago = new DateTime($datetime);
- $diff = $now->diff($ago);
-
- $diff->w = floor($diff->d / 7);
- $diff->d -= $diff->w * 7;
-
- $string = array(
- 'y' => 'year',
- 'm' => 'month',
- 'w' => 'week',
- 'd' => 'day',
- 'h' => 'hour',
- 'i' => 'minute',
- 's' => 'second',
- );
- foreach ($string as $k => &$v) {
- if ($diff->$k) {
- $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? 's' : '');
- } else {
- unset($string[$k]);
- }
- }
-
- if (!$full) $string = array_slice($string, 0, 1);
- return $string ? implode(', ', $string) . ' ago' : 'just now';
-}
+$total_candidates = $pdo->query("SELECT COUNT(*) FROM candidates")->fetchColumn();
+$total_tasks = $pdo->query("SELECT COUNT(*) FROM tasks")->fetchColumn();
+$completed_tasks = $pdo->query("SELECT COUNT(*) FROM tasks WHERE status = 'Completed'")->fetchColumn();
+$completion_rate = ($total_tasks > 0) ? ($completed_tasks / $total_tasks) * 100 : 0;
+// For now, open cases will be a static number
+$open_cases = 12;
?>
@@ -101,322 +20,55 @@ function time_ago($datetime, $full = false) {
-
- Executive Dashboard - FinMox Flow
-
-
-
-
-
-
-
-
-
-
-
+ Dashboard - FinMox
+
-
-
-