Merge branch 'main' into laura

This commit is contained in:
Yass 2026-02-20 17:01:46 +01:00 committed by GitHub
commit 99aff29504
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
123 changed files with 2357 additions and 13472 deletions

View file

@ -1,5 +1,5 @@
<footer class="footer container-fluid d-flex justify-content-around">
<footer class="footer container-fluid d-flex justify-content-around mt-auto">
<div class="col-3">
<ul>
<li><a href="#">Découvrir</a>

View file

@ -9,7 +9,7 @@
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
<title>Folliow</title>
</head>
<body>
<body class="d-flex flex-column min-vh-100">
<nav class="navbar navbar-expand-lg navbar-light">
<div class="container-fluid">
{* Logo *}
@ -35,7 +35,7 @@
</li>
{if isset($smarty.session.user)}
<li class="nav-item">
<a class="nav-link" href="?ctrl=project&action=project">Ajouter un projet</a>
<a class="nav-link" href="?ctrl=project&action=addedit_project">Ajouter un projet</a>
</li>
{if $smarty.session.user.authorisation_name == "Administrateur"}
<li class="nav-item">
@ -84,4 +84,4 @@
</div>
</div>
</nav>
{include file="views/_partial/messages.tpl"}
{include file="views/_partial/messages.tpl"}

View file

@ -1,69 +1,84 @@
<article class="col-md-3 mb-5 {if isset($smarty.session.user) and $smarty.session.user.user_status == 2} pb-5 {/if}">
<div class="card h-100 shadow-sm article-card">
<article class="col-md-3 mb-5 {if isset($smarty.session.user) and $smarty.session.user.user_status == 2} pb-5 {/if}" style="border-radius: 100px ;">
<div class="card h-100 shadow article-card rounded-4" style="border-width: 2px; overflow: hidden;">
{* IMAGE (80%) *}
<div class="ratio ratio-16x9">
{* IMAGE (partie supérieure - plus grande) *}
<div class="ratio ratio-4x3">
<img src=".{$objProject->getThumbnail()}"
class="w-100 h-100 object-fit-cover"
alt=""
loading="lazy">
class="w-100 h-100 object-fit-cover"
alt=""
loading="lazy">
</div>
<div class="d-flex align-items-start gap-3">
{* PHOTO DE PROFIL *}
<a href="index.php?ctrl=user&action=user&id={$objProject->getUser_id()}"
class="text-decoration-none" >
<img src="{$objProject->getUser_image()|default:'default_avatar.jpg'}"
class="rounded-circle flex-shrink-0 mt-2 ml-5"
style="width: 48px; height: 48px; object-fit: cover;"
alt="Photo de profil">
{* INFOS *}
<div class="flex-grow-1 card-body p-3">
<h3 class="h6 mb-1">{$objProject->getTitle()}</h3>
<small class="text-body-secondary d-block mb-1">
<time>{$objProject->getCreation_date()}</time>
<a href="index.php?ctrl=user&action=user&id={$objProject->getUser_id()}"
class="text-decoration-none"
style="position: relative; z-index: 2;">
{$objProject->getCreatorname()}
</a>
</small>
<a href="index.php?ctrl=project&action=display&id={$objProject->getId()}"
class="stretched-link small">
Lire la suite →
</a>
{if isset($smarty.session.user)}
{if $smarty.session.user.user_id == $objProject->getUser_id()}
<a href="index.php?ctrl=project&action=display&id={$objProject->getId()}"
class="stretched-link small">
Editer
</a>
{/if}
{* CONTENU (photo profil + infos) *}
<div class="card-body p-3 bg-light">
<div class="d-flex align-items-start gap-3">
{* PHOTO DE PROFIL (cercle à gauche - plus grand) *}
<img src="{$objProject->getUser_image()}"
class="rounded-circle flex-shrink-0 border border-2 border-white"
style="width: 64px; height: 64px; object-fit: cover; margin-top: 8px;"
alt="Photo de profil">
{* INFOS À DROITE *}
<div class="flex-grow-1">
<h3 class="h6 fw-bold mb-2 mt-1">{$objProject->getTitle()}</h3>
<p class="small text-muted mb-1">
<i class="bi bi-person"></i>
<a href="index.php?ctrl=user&action=user&id={$objProject->getUser_id()}"
class="text-decoration-none text-muted"
style="position: relative; z-index: 2;">
{$objProject->getCreatorname()}
</a>
</p>
<p class="small text-muted mb-0">
<i class="bi bi-geo-alt"></i> Colmar
</p>
</div>
</div>
<div class="d-flex justify-content-between align-items-center mt-3">
<small class="text-muted">
<i class="bi bi-clock"></i> <time>{$objProject->getCreation_date()}</time>
</small>
{if $objProject->getStatus() != "refusé"}
<a href="index.php?ctrl=project&action=display&id={$objProject->getId()}"
class="btn btn-sm btn-primary">
Voir →
</a>
{/if}
</div>
</div>
</div>
{if isset($smarty.session.user)}
{if $smarty.session.user.user_id == $objProject->getUser_id()}
<a href="index.php?ctrl=project&action=display&id={$objProject->getId()}"
class="btn btn-sm btn-outline-secondary mt-2 w-100"
style="position: relative; z-index: 2;">
Editer
</a>
{/if}
{/if}
</div>
{* BOUTONS EN BAS *}
{if isset($smarty.session.user)
and $smarty.session.user.user_status == 2
and $objProject->getStatus() == "en_attente"}
<div class="card-footer bg-white border-top-0 p-2">
<div class="d-flex gap-2">
<a class="btn btn-sm btn-success flex-fill"
href="?ctrl=project&action=accept&id={$objProject->getId()}"
name="toPublished">Accepter</a>
<a class="btn btn-sm btn-warning flex-fill"
href="?ctrl=project&action=refuse&id={$objProject->getId()}"
name="toRefused">Refuser</a>
<a class="btn btn-sm btn-danger flex-fill"
href="?ctrl=project&action=delete&id={$objProject->getId()}"
name="toDelete">Supprimer</a>
</div>
</div>
{elseif $objProject->getStatus() == "refusé"}
<div class="card-footer bg-white border-top-0 p-2">
<p class="text-danger fw-bold text-center mb-0 small">Portfolio refusé</p>
</div>
{/if}
</div>
{*Controle de l'utilisateur ainsi que du status du projet*}
{if isset($smarty.session.user)
and $smarty.session.user.user_status == 2
and $objProject->getStatus() eq "en_attente"}
<div class="border rounded text-center">
<a class="btn btn-sm m-1 btn-success" href="?ctrl=project&action=accept&id={$objProject->getId()}" name="toPublished">Accepter</a>
<a class="btn btn-sm m-1 btn-warning" href="?ctrl=project&action=refuse&id={$objProject->getId()}" name="toRefused">Refuser</a>
<a class="btn btn-sm m-1 btn-danger" href="?ctrl=project&action=delete&id={$objProject->getId()}" name="toDelete">Supprimer</a>
</div>
{elseif $projectStatus eq "refusé"}
<p class="text-danger fw-bold">Portfolio refusé</p>
{/if}
</article>