Kategorieseitenpaginator #50

Merged
niklas.ortmann merged 16 commits from KategorieseitenPaginator into dev 2026-07-17 17:36:10 +02:00
Showing only changes of commit f77f09ec6f - Show all commits
+29 -24
View File
@@ -2,54 +2,53 @@
include_once "php/controller/showCategory-controller.php";
?>
<div class="s-res-main-content">
<div class="s-res-header">
<!-- Kategorie-Titel im exakten Stil der Suchergebnisse -->
<h1 class="s-res-main-title">Kategorie: <?php echo (isset($category) && !empty($category)) ? htmlspecialchars($category) : 'Unbekannt'; ?></h1>
<p class="s-res-meta">Beiträge in dieser Kategorie</p>
<div class="cat-view-container">
<div class="cat-view-header">
<!-- Kategorie-Titel sicher ausgeben -->
<h1 class="cat-view-title">Kategorie: <?php echo (isset($category) && !empty($category)) ? htmlspecialchars($category) : 'Unbekannt'; ?></h1>
<p class="cat-view-meta-text">Beiträge in dieser Kategorie</p>
</div>
<!-- Die Artikel-Liste -->
<div class="s-res-list">
<div class="cat-view-list">
<?php if (isset($articles) && !empty($articles)): ?>
<?php foreach ($articles as $article): ?>
<div class="s-res-item">
<div class="s-res-content">
<!-- Titel als klickbarer Link wie im Original -->
<h2 class="s-res-item-title">
<a href="#" class="s-res-link">
<div class="cat-view-item">
<div class="cat-view-content">
<!-- Titel als klickbarer Link -->
<h2 class="cat-view-item-title">
<a href="#" class="cat-view-link">
<?php echo (isset($article) && !empty($article->getTitle())) ? htmlspecialchars($article->getTitle()) : 'Kein Titel'; ?>
</a>
</h2>
<!-- Die fehlende Meta-Zeile für Autor und Likes für das richtige Design -->
<div class="s-res-meta-row">
<p class="s-res-author">
von <span class="s-res-author-name"><?php echo (isset($article) && !empty($article->getAuthor())) ? htmlspecialchars($article->getAuthor()) : 'Anonym'; ?></span>
<!-- Meta-Zeile für Autor und Likes -->
<div class="cat-view-meta-row">
<p class="cat-view-author">
von <span class="cat-view-author-name"><?php echo (isset($article) && !empty($article->getAuthor())) ? htmlspecialchars($article->getAuthor()) : 'Anonym'; ?></span>
</p>
<!-- Likes Anzeige (Falls dein Objekt getLikes() oder getLikeCount() hat) -->
<span class="s-res-likes">
<span class="cat-view-likes">
&#x2764; <?php echo (isset($article) && !empty($article->getLikes())) ? htmlspecialchars($article->getLikes()) : '0'; ?>
</span>
</div>
<!-- Beschreibungstext -->
<p style="margin-top: 0.5rem; color: #4a5568;">
<p style="margin: 0; color: #4a5568;">
<?php echo (isset($article) && !empty($article->getContent())) ? htmlspecialchars($article->getContent()) : 'Kein Inhalt'; ?>
</p>
</div>
<!-- Der originale Pfeil rechts -->
<div class="s-res-arrow">&rarr;</div>
<!-- Interaktiver Pfeil rechts -->
<div class="cat-view-arrow">&rarr;</div>
</div>
<?php endforeach; ?>
<?php else: ?>
<p class="s-res-meta">Keine Artikel in dieser Kategorie gefunden.</p>
<p class="cat-view-meta-text">Keine Artikel in dieser Kategorie gefunden.</p>
<?php endif; ?>
</div>
<!-- Der Paginator -->
<!-- Der Paginator -->
<?php if (isset($totalPages) && $totalPages > 1): ?>
<div class="s-res-pagination-footer">
<div class="cat-view-pagination-footer">
<div></div> <!-- Hält die Buttons auf der rechten Seite -->
<form id="search-form-id" action="index.php" method="GET" style="display: inline;">
@@ -57,21 +56,27 @@ include_once "php/controller/showCategory-controller.php";
<input type="hidden" name="category" value="<?php echo (isset($category) && !empty($category)) ? htmlspecialchars($category) : ''; ?>">
<input type="hidden" id="s-res-page-input" name="page" value="<?php echo (isset($page) && !empty($page)) ? $page : 1; ?>">
<!-- JS benötigt die Klasse 's-res-page-navigation' -->
<div class="s-res-page-navigation">
<?php $currentPage = $page ?? 1; ?>
<!-- Zurück-Button (Nutzt JS-Klasse 's-res-page-btn') -->
<button type="button" class="s-res-page-btn" data-page="<?php echo $currentPage - 1; ?>" <?php echo ($currentPage <= 1) ? 'disabled' : ''; ?>>
&laquo; Zurück
</button>
<!-- Seitenzahlen generieren -->
<?php for ($i = 1; $i <= $totalPages; $i++): ?>
<!-- Der aktive Button erhält zusätzlich die neue Klasse 'cat-active-btn' -->
<button type="button"
class="s-res-page-btn <?php echo ($i === $currentPage) ? 's-res-page-btn-active' : ''; ?>"
class="s-res-page-btn <?php echo ($i === $currentPage) ? 'cat-active-btn' : ''; ?>"
data-page="<?php echo $i; ?>"
<?php echo ($i === $currentPage) ? 'disabled' : ''; ?>>
<?php echo $i; ?>
</button>
<?php endfor; ?>
<!-- Vor-Button -->
<button type="button" class="s-res-page-btn" data-page="<?php echo $currentPage + 1; ?>" <?php echo ($currentPage >= $totalPages) ? 'disabled' : ''; ?>>
Weiter &raquo;
</button>