News correction

This commit is contained in:
cbo 2024-03-15 15:46:18 +01:00
parent c40b871fd3
commit a870192546
4 changed files with 10 additions and 8 deletions

View File

@ -42,13 +42,13 @@ $pdo = sqlConnect($sqlDatabaseHost, $sqlDatabaseName, $sqlDatabaseUser, $sqlData
<h1>Actualités récentes</h1> <h1>Actualités récentes</h1>
<div class="articles-list"> <div class="articles-list">
<?php <?php
$sqlRequest = "SELECT articles.ID, articles.title, articles.date, articles.miniature, articles.resume, users.username, users.display_name FROM articles JOIN users ON articles.author = users.ID WHERE articles.classification <= :userAccreditation ORDER BY date DESC LIMIT 3"; $sqlRequest = "SELECT articles.ID, articles.title, articles.date, articles.miniature, articles.resume, users.username, users.display_name, users.certification FROM articles JOIN users ON articles.author = users.ID WHERE articles.classification <= :userAccreditation ORDER BY date DESC LIMIT 3";
$request = $pdo->prepare($sqlRequest); $request = $pdo->prepare($sqlRequest);
$request->bindParam(":userAccreditation", $_SESSION['userAccreditation']); $request->bindParam(":userAccreditation", $_SESSION['userAccreditation']);
$request->execute(); $request->execute();
$result = $request->fetchAll(PDO::FETCH_ASSOC); $result = $request->fetchAll(PDO::FETCH_ASSOC);
if ($result) { if ($result) {
listArticles($result, $rootPageURL); listArticles($result, $rootPageURL, $badges);
} }
?> ?>
</div> </div>

View File

@ -117,7 +117,7 @@ $pdo = sqlConnect($sqlDatabaseHost, $sqlDatabaseName, $sqlDatabaseUser, $sqlData
} else { } else {
$search = isset($_GET['search']) ? "%" . htmlspecialchars($_GET['search']) . "%" : "%%"; $search = isset($_GET['search']) ? "%" . htmlspecialchars($_GET['search']) . "%" : "%%";
$sqlRequest = "SELECT articles.ID, articles.title, articles.date, articles.miniature, articles.resume, users.username, users.display_name FROM articles JOIN users ON articles.author = users.ID WHERE (articles.title LIKE :search OR articles.ID LIKE :search OR users.username LIKE :search) AND (articles.classification <= :userAccreditation OR articles.author = :userID) ORDER BY articles.date DESC"; $sqlRequest = "SELECT articles.ID, articles.title, articles.date, articles.miniature, articles.resume, users.username, users.display_name, users.certification FROM articles JOIN users ON articles.author = users.ID WHERE (articles.title LIKE :search OR articles.ID LIKE :search OR users.username LIKE :search) AND (articles.classification <= :userAccreditation OR articles.author = :userID) ORDER BY articles.date DESC";
$request = $pdo->prepare($sqlRequest); $request = $pdo->prepare($sqlRequest);
$request->bindParam(":search", $search); $request->bindParam(":search", $search);
$request->bindParam(":userAccreditation", $_SESSION['userAccreditation']); $request->bindParam(":userAccreditation", $_SESSION['userAccreditation']);
@ -134,7 +134,7 @@ $pdo = sqlConnect($sqlDatabaseHost, $sqlDatabaseName, $sqlDatabaseUser, $sqlData
if ($result) { if ($result) {
echo('<div class="articles-list">'); echo('<div class="articles-list">');
listArticles($result, $rootPageURL); listArticles($result, $rootPageURL, $badges);
echo('</div>'); echo('</div>');
} else { } else {
echo ('Aucun article trouvé'); echo ('Aucun article trouvé');

View File

@ -129,7 +129,7 @@ if(isset($_GET['u']) && empty($_GET['u']) == false) {
if ($result) { if ($result) {
echo('<div class="articles-list">'); echo('<div class="articles-list">');
listArticles($result, $rootPageURL); listArticles($result, $rootPageURL, $badges);
echo ('</div>'); echo ('</div>');
} else { } else {
echo ($userDisplayName . ' n\'a encore rien publié'); echo ($userDisplayName . ' n\'a encore rien publié');

View File

@ -29,7 +29,7 @@ function userWidget($userPPURL, $userDisplayName, $userName, $userCertification,
} }
function listArticles($result, $rootPageURL) { function listArticles($result, $rootPageURL, $badges) {
foreach($result as $article) { foreach($result as $article) {
@ -39,8 +39,10 @@ function listArticles($result, $rootPageURL) {
$articleTitle = $article['title']; $articleTitle = $article['title'];
$articleResume = $article['resume']; $articleResume = $article['resume'];
$miniatureURL = empty($article['miniature']) ? $rootPageURL . "src/img/empty.jpg" : $article['miniature']; $miniatureURL = empty($article['miniature']) ? $rootPageURL . "src/img/empty.jpg" : $article['miniature'];
if(isset($article['username']) && isset($article['display_name'])) {
$authorLink = ' | <a href="user.php?user=' . $article['username'] . '">' . $article['display_name'] . '</a>'; if(isset($article['username']) && isset($article['display_name']) && isset($article['certification'])) {
$badge = $article['certification'] > 0 ? '<svg class="certification" viewBox="0 0 22 22" aria-label="Compte certifié" role="img"><g>' . $badges[$userCertification] . '</g></svg>' : "";
$authorLink = ' | <a href="user.php?user=' . $article['username'] . '">' . $article['display_name'] . $badge . '</a>';
} else { } else {
$authorLink = ''; $authorLink = '';
} }