Sindbad~EG File Manager

Current Path : /home/copmadinaarea/thecopmadinaarea.org/newsfeed/admin/
Upload File :
Current File : /home/copmadinaarea/thecopmadinaarea.org/newsfeed/admin/index.php

<?php
require_once '../config/config.php';
require_admin();

$database = new Database();
$conn = $database->getConnection();
$user = new User($conn);
$news = new News($conn);
$category = new Category($conn);

// Get dashboard statistics
$total_users = $user->getTotalCount();
$total_news = $news->getTotalCount();
$published_news = $news->getTotalCount('published');
$draft_news = $news->getTotalCount('draft');

// Get recent activities from audit log
$audit_query = "SELECT al.*, u.name as user_name 
                FROM audit_logs al 
                LEFT JOIN users u ON al.user_id = u.id 
                ORDER BY al.created_at DESC LIMIT 10";
$audit_stmt = $conn->prepare($audit_query);
$audit_stmt->execute();
$recent_activities = $audit_stmt->fetchAll(PDO::FETCH_ASSOC);

$flash = get_flash_message();
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Admin Dashboard - COP News Portal</title>
    <link rel="stylesheet" href="../assets/css/style.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
</head>
<body>
    <header class="header">
        <nav class="navbar">
            <a href="../dashboard.php" class="logo">
                <i class="fas fa-church"></i>
                COP News Portal
            </a>
            <ul class="nav-links">
                <li><a href="../dashboard.php"><i class="fas fa-tachometer-alt"></i> Dashboard</a></li>
                <li><a href="../news/index.php"><i class="fas fa-newspaper"></i> News</a></li>
                <li><a href="index.php" class="active"><i class="fas fa-cog"></i> Admin</a></li>
                <li><a href="users.php"><i class="fas fa-users"></i> Users</a></li>
                <li><a href="categories.php"><i class="fas fa-tags"></i> Categories</a></li>
                <li><a href="locations.php"><i class="fas fa-map-marker-alt"></i> Locations</a></li>
                <li><a href="audit.php"><i class="fas fa-clipboard-list"></i> Audit Logs</a></li>
                <li><a href="../profile.php"><i class="fas fa-user"></i> Profile</a></li>
                <li><a href="../logout.php"><i class="fas fa-sign-out-alt"></i> Logout</a></li>
            </ul>
        </nav>
    </header>

    <main class="container" style="margin-top: 2rem;">
        <?php if ($flash): ?>
            <div class="alert alert-<?php echo $flash['type']; ?>">
                <i class="fas fa-info-circle"></i> <?php echo $flash['message']; ?>
            </div>
        <?php endif; ?>

        <!-- Admin Header -->
        <div class="card mb-4">
            <div class="card-body">
                <h1>Admin Dashboard</h1>
                <p style="color: var(--primary-grey);">
                    <i class="fas fa-user-shield"></i> 
                    Welcome, <?php echo htmlspecialchars($_SESSION['user_name']); ?> 
                    (<?php echo ucfirst($_SESSION['account_type']); ?>)
                </p>
            </div>
        </div>

        <!-- Statistics Cards -->
        <div class="dashboard-stats">
            <div class="stat-card">
                <div class="stat-number"><?php echo $total_users; ?></div>
                <div class="stat-label">Total Users</div>
            </div>
            <div class="stat-card">
                <div class="stat-number"><?php echo $total_news; ?></div>
                <div class="stat-label">Total Articles</div>
            </div>
            <div class="stat-card">
                <div class="stat-number"><?php echo $published_news; ?></div>
                <div class="stat-label">Published</div>
            </div>
            <div class="stat-card">
                <div class="stat-number"><?php echo $draft_news; ?></div>
                <div class="stat-label">Drafts</div>
            </div>
        </div>

        <!-- Admin Menu -->
        <div class="card mb-4">
            <div class="card-header">
                <h2><i class="fas fa-tools"></i> Admin Tools</h2>
            </div>
            <div class="card-body">
                <div class="grid grid-3">
                    <a href="users.php" class="btn btn-primary">
                        <i class="fas fa-users"></i> Manage Users
                    </a>
                    <a href="categories.php" class="btn btn-primary">
                        <i class="fas fa-tags"></i> Manage Categories
                    </a>
                    <a href="locations.php" class="btn btn-primary">
                        <i class="fas fa-map-marker-alt"></i> Manage Locations
                    </a>
                    <a href="reports.php" class="btn btn-secondary">
                        <i class="fas fa-chart-bar"></i> Reports
                    </a>
                    <a href="audit.php" class="btn btn-secondary">
                        <i class="fas fa-history"></i> Audit Logs
                    </a>
                    <a href="settings.php" class="btn btn-secondary">
                        <i class="fas fa-cog"></i> Settings
                    </a>
                </div>
            </div>
        </div>

        <div class="grid grid-2">
            <!-- Recent Activities -->
            <div class="card">
                <div class="card-header">
                    <h2><i class="fas fa-history"></i> Recent Activities</h2>
                </div>
                <div class="card-body">
                    <?php if (empty($recent_activities)): ?>
                        <p class="text-center" style="color: var(--primary-grey);">No recent activities.</p>
                    <?php else: ?>
                        <?php foreach ($recent_activities as $activity): ?>
                            <div class="activity-item" style="border-bottom: 1px solid var(--light-grey); padding: 1rem 0;">
                                <div class="flex justify-between items-start">
                                    <div>
                                        <strong><?php echo htmlspecialchars($activity['user_name'] ?? 'System'); ?></strong>
                                        <span style="color: var(--primary-grey);">
                                            <?php echo strtolower($activity['action']); ?> 
                                            <?php echo $activity['table_name']; ?>
                                            <?php if ($activity['record_id']): ?>
                                                #<?php echo $activity['record_id']; ?>
                                            <?php endif; ?>
                                        </span>
                                    </div>
                                    <small style="color: var(--primary-grey);">
                                        <?php echo date('M j, g:i A', strtotime($activity['created_at'])); ?>
                                    </small>
                                </div>
                            </div>
                        <?php endforeach; ?>
                        <div class="text-center mt-3">
                            <a href="audit.php" class="btn btn-outline">View All Activities</a>
                        </div>
                    <?php endif; ?>
                </div>
            </div>

            <!-- Quick Actions -->
            <div class="card">
                <div class="card-header">
                    <h2><i class="fas fa-bolt"></i> Quick Actions</h2>
                </div>
                <div class="card-body">
                    <div class="quick-actions">
                        <a href="users.php?action=create" class="quick-action-item">
                            <i class="fas fa-user-plus"></i>
                            <span>Add New User</span>
                        </a>
                        <a href="categories.php?action=create" class="quick-action-item">
                            <i class="fas fa-plus"></i>
                            <span>Add Category</span>
                        </a>
                        <a href="../news/create.php" class="quick-action-item">
                            <i class="fas fa-newspaper"></i>
                            <span>Create News</span>
                        </a>
                        <a href="reports.php" class="quick-action-item">
                            <i class="fas fa-download"></i>
                            <span>Export Reports</span>
                        </a>
                    </div>
                </div>
            </div>
        </div>
    </main>

    <style>
        .active {
            color: var(--primary-blue) !important;
            font-weight: 600;
        }
        .quick-actions {
            display: grid;
            gap: 1rem;
        }
        .quick-action-item {
            display: flex;
            align-items: center;
            gap: 1rem;
            padding: 1rem;
            border: 2px solid var(--light-grey);
            border-radius: 8px;
            text-decoration: none;
            color: var(--dark-grey);
            transition: all 0.3s ease;
        }
        .quick-action-item:hover {
            border-color: var(--primary-blue);
            background: var(--light-blue);
        }
        .quick-action-item i {
            font-size: 1.5rem;
            color: var(--primary-blue);
        }
        .activity-item:last-child {
            border-bottom: none;
        }
    </style>
</body>
</html>

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists