[ Mini Kiebo ]
Server: Windows NT AKFAR_SERVER 10.0 build 26200 (Windows 10) AMD64
Path:
D:
/
xampp
/
htdocs
/
repository_afbs
/
[
Home
]
File: index.bak.php
<?php session_start(); require_once 'config/database.php'; $database = new Database(); $db = $database->getConnection(); // Pagination $page = isset($_GET['page']) ? $_GET['page'] : 1; $records_per_page = 10; $offset = ($page - 1) * $records_per_page; // Search functionality $search = isset($_GET['search']) ? $_GET['search'] : ''; $query = "SELECT t.*, u.full_name, u.nim FROM theses t JOIN users u ON t.author_id = u.id WHERE t.status = 'approved'"; if (!empty($search)) { $query .= " AND (t.title LIKE :search OR t.abstract LIKE :search OR t.keywords LIKE :search OR u.full_name LIKE :search)"; } $query .= " ORDER BY t.submitted_at DESC LIMIT :offset, :records_per_page"; $stmt = $db->prepare($query); if (!empty($search)) { $searchParam = "%{$search}%"; $stmt->bindParam(':search', $searchParam); } $stmt->bindParam(':offset', $offset, PDO::PARAM_INT); $stmt->bindParam(':records_per_page', $records_per_page, PDO::PARAM_INT); $stmt->execute(); $theses = $stmt->fetchAll(PDO::FETCH_ASSOC); // Get total records for pagination $count_query = "SELECT COUNT(*) as total FROM theses WHERE status = 'approved'"; if (!empty($search)) { $count_query .= " AND (title LIKE :search OR abstract LIKE :search OR keywords LIKE :search)"; } $count_stmt = $db->prepare($count_query); if (!empty($search)) { $count_stmt->bindParam(':search', $searchParam); } $count_stmt->execute(); $total_records = $count_stmt->fetch(PDO::FETCH_ASSOC)['total']; $total_pages = ceil($total_records / $records_per_page); ?> <!DOCTYPE html> <html lang="id"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Repository AFBS - Akademi Farmasi Bumi Siliwangi</title> <meta name="description" content="Repository digital Akademi Farmasi Bumi Siliwangi"> <meta name="google-site-verification" content="your-google-verification-code"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css"> <style> .hero-section { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 60px 0; margin-bottom: 40px; } .thesis-card { transition: transform 0.3s; margin-bottom: 20px; } .thesis-card:hover { transform: translateY(-5px); box-shadow: 0 4px 15px rgba(0,0,0,0.1); } .stats-box { background: #f8f9fa; border-radius: 10px; padding: 20px; text-align: center; } .btn-download { background: #28a745; color: white; } </style> </head> <body> <!-- Navigation --> <nav class="navbar navbar-expand-lg navbar-dark bg-dark"> <div class="container"> <a class="navbar-brand" href="index.php"> <i class="fas fa-graduation-cap"></i> Repository AFBS </a> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarNav"> <ul class="navbar-nav ms-auto"> <li class="nav-item"> <a class="nav-link" href="index.php">Home</a> </li> <?php if(isset($_SESSION['user_id'])): ?> <li class="nav-item"> <a class="nav-link" href="upload.php">Upload Tugas Akhir</a> </li> <li class="nav-item"> <a class="nav-link" href="my_uploads.php">Uploads Saya</a> </li> <li class="nav-item"> <a class="nav-link" href="logout.php">Logout (<?php echo $_SESSION['full_name']; ?>)</a> </li> <?php else: ?> <li class="nav-item"> <a class="nav-link" href="login.php">Login</a> </li> <li class="nav-item"> <a class="nav-link" href="register.php">Register</a> </li> <?php endif; ?> </ul> </div> </div> </nav> <!-- Hero Section --> <section class="hero-section"> <div class="container text-center"> <h1 class="display-4">Repository Akademi Farmasi Bumi Siliwangi</h1> <p class="lead">Kumpulan Tugas Akhir Mahasiswa Farmasi Terlengkap</p> <div class="row mt-5"> <div class="col-md-4"> <div class="stats-box"> <h3 id="total-theses">0</h3> <p>Total Tugas Akhir</p> </div> </div> <div class="col-md-4"> <div class="stats-box"> <h3 id="total-downloads">0</h3> <p>Total Download</p> </div> </div> <div class="col-md-4"> <div class="stats-box"> <h3 id="total-visitors">0</h3> <p>Pengunjung</p> </div> </div> </div> </div> </section> <!-- Search Section --> <div class="container mb-4"> <form action="index.php" method="GET" class="row g-3"> <div class="col-md-10"> <input type="text" name="search" class="form-control form-control-lg" placeholder="Cari judul, abstrak, penulis, atau kata kunci..." value="<?php echo htmlspecialchars($search); ?>"> </div> <div class="col-md-2"> <button type="submit" class="btn btn-primary btn-lg w-100"> <i class="fas fa-search"></i> Cari </button> </div> </form> </div> <!-- Main Content --> <div class="container mb-5"> <h2 class="mb-4">Tugas Akhir Terbaru</h2> <?php if(count($theses) > 0): ?> <div class="row"> <?php foreach($theses as $thesis): ?> <div class="col-md-6"> <div class="card thesis-card"> <div class="card-body"> <h5 class="card-title"> <a href="detail.php?id=<?php echo $thesis['id']; ?>" class="text-decoration-none"> <?php echo htmlspecialchars($thesis['title']); ?> </a> </h5> <h6 class="card-subtitle mb-2 text-muted"> Oleh: <?php echo htmlspecialchars($thesis['full_name']); ?> (<?php echo $thesis['nim']; ?>) </h6> <p class="card-text"> <?php echo substr(htmlspecialchars($thesis['abstract']), 0, 200); ?>... </p> <div class="d-flex justify-content-between align-items-center"> <div> <span class="badge bg-primary"><?php echo $thesis['year']; ?></span> <span class="badge bg-info"> <i class="fas fa-eye"></i> <?php echo $thesis['views']; ?> </span> <span class="badge bg-success"> <i class="fas fa-download"></i> <?php echo $thesis['downloads']; ?> </span> </div> <div> <?php if(isset($_SESSION['user_id'])): ?> <a href="download.php?id=<?php echo $thesis['id']; ?>" class="btn btn-sm btn-download"> <i class="fas fa-download"></i> Download PDF </a> <?php else: ?> <a href="login.php" class="btn btn-sm btn-secondary"> <i class="fas fa-lock"></i> Login untuk Download </a> <?php endif; ?> </div> </div> <?php if(!empty($thesis['keywords'])): ?> <div class="mt-2"> <small class="text-muted"> Keywords: <?php echo htmlspecialchars($thesis['keywords']); ?> </small> </div> <?php endif; ?> </div> </div> </div> <?php endforeach; ?> </div> <!-- Pagination --> <?php if($total_pages > 1): ?> <nav aria-label="Page navigation" class="mt-4"> <ul class="pagination justify-content-center"> <?php for($i = 1; $i <= $total_pages; $i++): ?> <li class="page-item <?php echo ($i == $page) ? 'active' : ''; ?>"> <a class="page-link" href="?page=<?php echo $i; ?>&search=<?php echo urlencode($search); ?>"> <?php echo $i; ?> </a> </li> <?php endfor; ?> </ul> </nav> <?php endif; ?> <?php else: ?> <div class="alert alert-info"> Belum ada tugas akhir yang tersedia. </div> <?php endif; ?> </div> <!-- Footer --> <footer class="bg-dark text-white py-4"> <div class="container"> <div class="row"> <div class="col-md-6"> <h5>Repository AFBS</h5> <p>Akademi Farmasi Bumi Siliwangi<br> Jl. Cilodong No. 123, Kota Tasikmalaya<br> Email: library@afbs.ac.id</p> </div> <div class="col-md-6 text-end"> <p>© 2024 Akademi Farmasi Bumi Siliwangi.<br> All rights reserved.</p> </div> </div> </div> </footer> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script> <script> // Fetch statistics fetch('get_stats.php') .then(response => response.json()) .then(data => { document.getElementById('total-theses').textContent = data.total_theses; document.getElementById('total-downloads').textContent = data.total_downloads; document.getElementById('total-visitors').textContent = data.total_visitors; }); </script> </body> </html>