Ajout des boutons de Modération dans la page projet

This commit is contained in:
GuillaumeH-Cci 2026-02-13 15:39:29 +01:00
parent 7be3bac167
commit 0579eddf81
23 changed files with 281 additions and 226 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
/templates_c/
/templates_c/**

View file

@ -116,18 +116,19 @@
$objImage->hydrate($arrDetImage); $objImage->hydrate($arrDetImage);
$arrImageToDisplay[] = $objImage; $arrImageToDisplay[] = $objImage;
} }
//Variable data //Variable data
$_SESSION['title'] = $_POST['titleProject']??""; $_SESSION['title'] = $_POST['titleProject']??"";
$_SESSION['description'] = $_POST['descProject']??""; $_SESSION['description'] = $_POST['descProject']??"";
$_SESSION['content'] = $_POST['textProject']??""; $_SESSION['content'] = $_POST['textProject']??"";
$_SESSION['thumbnail'] = $_FILES['imageThumbnail']['name']??""; $_SESSION['thumbnail'] = $_FILES['imageThumbnail']['name']??"";
$_SESSION['status'] = 'en_attente'; $_SESSION['status'] = 'en_attente';
$_SESSION['user_id'] = $_SESSION['user']['user_id'];
$objProject = new Project(); $objProject = new Project();
/** /**
* Créer par Besnik le GOAT et Guillaume * Créer par Besnik le GOAT et l'autre GOAT de Guillaume
* *
* @return bool pour savoir si le fichier existe, * @return bool pour savoir si le fichier existe,
* puis déplace vers le fichier uploads avec les images projet des utilisateurs * puis déplace vers le fichier uploads avec les images projet des utilisateurs
@ -137,20 +138,23 @@
$strDest = ""; $strDest = "";
if ((count($_FILES) > 0) && ($_FILES['imageProject']['error'] != 4)){ if ((count($_FILES) > 0) && ($_FILES['imageProject']['error'] != 4)){
$strDest = 'uploads/projects/'.$_FILES['imageProject']['name']; $strDest = 'uploads/projects/'.$_FILES['imageProject']['name'];
var_dump($strDest);
move_uploaded_file($_FILES['imageProject']['tmp_name'], $strDest); move_uploaded_file($_FILES['imageProject']['tmp_name'], $strDest);
} }
} }
/** En cas d'appuis sur le bouton d'envoie ou celui de remettre a plus tard /** En cas d'appuis sur le bouton d'envoie ou celui de remettre a plus tard
* 1. Changement de status ou pas * 1. Changement de status
* 2. Hydratation avec les informations récupéré de l'utilisateur * 2. Hydratation avec les informations récupéré de l'utilisateur
* 3. Envoie des données à la BDD * 3. Envoie des données à la BDD
*/ */
if (isset($_POST['sendMessage'])) { if (isset($_POST['sendMessage'])) {
$_SESSION['status'] = 'publié';
$objProject->hydrate($_SESSION); $objProject->hydrate($_SESSION);
$objProject->setThumbnail($strDest); $objProject->setThumbnail($strDest);
var_dump($strDest);
var_dump($objProject);
$objProjectModel->insert($objProject); $objProjectModel->insert($objProject);
} else if (isset($_POST['toContinue'])) { } else if (isset($_POST['toContinue'])) {
$objProject->hydrate($_SESSION); $objProject->hydrate($_SESSION);
$objProject->setThumbnail($strDest); $objProject->setThumbnail($strDest);
@ -159,7 +163,6 @@
var_dump($_SESSION); var_dump($_SESSION);
var_dump($objProject); var_dump($objProject);
$this->_arrData['arrProjectToDiplay'] = $arrProjectToDisplay; $this->_arrData['arrProjectToDiplay'] = $arrProjectToDisplay;
$this->_arrData['arrImageToDiplay'] = $arrImageToDisplay; $this->_arrData['arrImageToDiplay'] = $arrImageToDisplay;
@ -221,6 +224,7 @@
$objMail->SMTPDebug = 0; $objMail->SMTPDebug = 0;
$objMail->SMTPAuth = TRUE; $objMail->SMTPAuth = TRUE;
$objMail->SMTPSecure = "tls"; $objMail->SMTPSecure = "tls";
$objMail->Port = 587; $objMail->Port = 587;

View file

@ -157,7 +157,7 @@ class Project extends Entity{
* Récupération de l'utilisateur * Récupération de l'utilisateur
* @return int id de l'utilisateur * @return int id de l'utilisateur
*/ */
public function getUser(){ public function getUser_id(){
return $this->_user; return $this->_user;
} }
@ -165,7 +165,7 @@ class Project extends Entity{
* Mise à jour de l'utilisateur * Mise à jour de l'utilisateur
* @param int id de l'utilisateur * @param int id de l'utilisateur
*/ */
public function setUser($user){ public function setUser_id($user){
$this->_user = $user; $this->_user = $user;
} }

View file

@ -112,7 +112,7 @@
users.user_image, users.user_image,
category.category_name category.category_name
FROM project FROM project
INNER JOIN users ON users.user_id = project.project_user INNER JOIN users ON users.user_id = project.project_user_id
LEFT JOIN category ON category.category_id = project.project_category LEFT JOIN category ON category.category_id = project.project_category
WHERE project.project_id = :id"; WHERE project.project_id = :id";

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 16:50:16 /* Smarty version 5.7.0, created on 2026-02-11 20:36:23
from 'file:views/home.tpl' */ from 'file:views/home.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb3489df022_21637833', 'unifunc' => 'content_698ce8475ca6c5_70769879',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -21,20 +21,20 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'file:views/_partial/preview.tpl' => 1, 'file:views/_partial/preview.tpl' => 1,
), ),
))) { ))) {
function content_698cb3489df022_21637833 (\Smarty\Template $_smarty_tpl) { function content_698ce8475ca6c5_70769879 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_625675898698cb3489daba8_53798441', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1240817329698ce8475c5f82_37934128', "content");
?> ?>
<?php $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); <?php $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_625675898698cb3489daba8_53798441 extends \Smarty\Runtime\Block class Block_1240817329698ce8475c5f82_37934128 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 17:20:34 /* Smarty version 5.7.0, created on 2026-02-11 20:36:30
from 'file:views/layout.tpl' */ from 'file:views/layout.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cba62b4e137_64473486', 'unifunc' => 'content_698ce84e84dcc1_11117501',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -22,21 +22,21 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'file:views/_partial/footer.tpl' => 1, 'file:views/_partial/footer.tpl' => 1,
), ),
))) { ))) {
function content_698cba62b4e137_64473486 (\Smarty\Template $_smarty_tpl) { function content_698ce84e84dcc1_11117501 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, false); $_smarty_tpl->getInheritance()->init($_smarty_tpl, false);
$_smarty_tpl->renderSubTemplate("file:views/_partial/header.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir); $_smarty_tpl->renderSubTemplate("file:views/_partial/header.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1102964570698cba62b4c8c6_53649331', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_2114043754698ce84e84c177_54195501', "content");
?> ?>
<?php $_smarty_tpl->renderSubTemplate("file:views/_partial/footer.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir); <?php $_smarty_tpl->renderSubTemplate("file:views/_partial/footer.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_1102964570698cba62b4c8c6_53649331 extends \Smarty\Runtime\Block class Block_2114043754698ce84e84c177_54195501 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-10 15:07:18 /* Smarty version 5.7.0, created on 2026-02-09 15:03:02
from 'file:views/_partial/header.tpl' */ from 'file:views/_partial/header.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698b49a6a94424_69678291', 'unifunc' => 'content_6989f726978651_30802796',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -20,7 +20,7 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698b49a6a94424_69678291 (\Smarty\Template $_smarty_tpl) { function content_6989f726978651_30802796 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views\\_partial'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views\\_partial';
?><!DOCTYPE html> ?><!DOCTYPE html>
<html lang="fr"> <html lang="fr">

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 17:20:34 /* Smarty version 5.7.0, created on 2026-02-11 20:36:30
from 'file:views/_partial/footer.tpl' */ from 'file:views/_partial/footer.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cba62c7aed8_62552440', 'unifunc' => 'content_698ce84e9b1e51_40033913',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -20,7 +20,7 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698cba62c7aed8_62552440 (\Smarty\Template $_smarty_tpl) { function content_698ce84e9b1e51_40033913 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views\\_partial'; $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
?> ?>
<footer class="footer container-fluid d-flex justify-content-around"> <footer class="footer container-fluid d-flex justify-content-around">

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-10 14:04:32 /* Smarty version 5.7.0, created on 2026-02-09 15:03:02
from 'file:views/_partial/preview.tpl' */ from 'file:views/_partial/preview.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698b3af030ae20_50383766', 'unifunc' => 'content_6989f7269f97f7_68511256',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'3848b4db17319a951391d803dc4119c46e490c52' => '3848b4db17319a951391d803dc4119c46e490c52' =>
array ( array (
0 => 'views/_partial/preview.tpl', 0 => 'views/_partial/preview.tpl',
1 => 1770721040, 1 => 1770646177,
2 => 'file', 2 => 'file',
), ),
), ),
@ -20,7 +20,7 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698b3af030ae20_50383766 (\Smarty\Template $_smarty_tpl) { function content_6989f7269f97f7_68511256 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views\\_partial'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views\\_partial';
?> ?>

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 16:45:24 /* Smarty version 5.7.0, created on 2026-02-11 20:35:30
from 'file:views/project_display.tpl' */ from 'file:views/project_display.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb22434fee2_91445718', 'unifunc' => 'content_698ce812246388_58459261',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'4c2b74d2d77abca5363ffd92e8bc3a455c22b1bd' => '4c2b74d2d77abca5363ffd92e8bc3a455c22b1bd' =>
array ( array (
0 => 'views/project_display.tpl', 0 => 'views/project_display.tpl',
1 => 1770828198, 1 => 1770842115,
2 => 'file', 2 => 'file',
), ),
), ),
@ -20,18 +20,18 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698cb22434fee2_91445718 (\Smarty\Template $_smarty_tpl) { function content_698ce812246388_58459261 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1025150471698cb224342408_37694456', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1262370430698ce812236879_45885506', "content");
$_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_1025150471698cb224342408_37694456 extends \Smarty\Runtime\Block class Block_1262370430698ce812236879_45885506 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
@ -100,7 +100,7 @@ $_smarty_current_dir = 'D:\\projetphp\\views';
<!-- Sidebar : informations du créateur --> <!-- Sidebar : informations du créateur -->
<div class="col-lg-4"> <div class="col-lg-4">
<div class="card text-center shadow-sm p-4"> <div class="card text-center shadow-sm p-4">
<a href="index.php?ctrl=user&action=user&id=<?php echo $_smarty_tpl->getValue('objProject')->getUser();?> <a href="index.php?ctrl=user&action=user&id=<?php echo $_smarty_tpl->getValue('objProject')->getUser_id();?>
" class="text-decoration-none text-dark"> " class="text-decoration-none text-dark">
<img src="<?php echo $_smarty_tpl->getValue('objProject')->getUser_image();?> <img src="<?php echo $_smarty_tpl->getValue('objProject')->getUser_image();?>
" "

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 17:15:22 /* Smarty version 5.7.0, created on 2026-02-11 20:36:23
from 'file:views/_partial/preview.tpl' */ from 'file:views/_partial/preview.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb92a3aa989_86517927', 'unifunc' => 'content_698ce8478dbef1_65073741',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'67e1ae3a210fc2d1bf8782993687bad91a1cf0f6' => '67e1ae3a210fc2d1bf8782993687bad91a1cf0f6' =>
array ( array (
0 => 'views/_partial/preview.tpl', 0 => 'views/_partial/preview.tpl',
1 => 1770828147, 1 => 1770841277,
2 => 'file', 2 => 'file',
), ),
), ),
@ -20,12 +20,12 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698cb92a3aa989_86517927 (\Smarty\Template $_smarty_tpl) { function content_698ce8478dbef1_65073741 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views\\_partial'; $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
?> ?>
<article class="col-md-3 mb-4"> <article class="col-md-3 mb-5 <?php if ((true && (true && null !== ($_SESSION['user'] ?? null))) && $_SESSION['user']['user_status'] == 2) {?> pb-5 <?php }?>">
<div class="card h-100 shadow-sm article-card"> <div class="card h-100 shadow-sm article-card">
<div class="ratio ratio-16x9"> <div class="ratio ratio-16x9">
@ -52,7 +52,7 @@ $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
<time><?php echo $_smarty_tpl->getValue('objProject')->getCreation_date();?> <time><?php echo $_smarty_tpl->getValue('objProject')->getCreation_date();?>
</time> </time>
<a href="index.php?ctrl=user&action=user&id=<?php echo $_smarty_tpl->getValue('objProject')->getUser();?> <a href="index.php?ctrl=user&action=user&id=<?php echo $_smarty_tpl->getValue('objProject')->getUser_id();?>
" "
class="text-decoration-none" class="text-decoration-none"
style="position: relative; z-index: 2;"> style="position: relative; z-index: 2;">
@ -67,7 +67,7 @@ $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
Lire la suite Lire la suite
</a> </a>
<?php if ((true && (true && null !== ($_SESSION['user'] ?? null)))) {?> <?php if ((true && (true && null !== ($_SESSION['user'] ?? null)))) {?>
<?php if ($_SESSION['user']['user_id'] == $_smarty_tpl->getValue('objProject')->getUser()) {?> <?php if ($_SESSION['user']['user_id'] == $_smarty_tpl->getValue('objProject')->getUser_id()) {?>
<a href="index.php?ctrl=project&action=display&id=<?php echo $_smarty_tpl->getValue('objProject')->getId();?> <a href="index.php?ctrl=project&action=display&id=<?php echo $_smarty_tpl->getValue('objProject')->getId();?>
" "
class="stretched-link small"> class="stretched-link small">

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-10 15:07:18 /* Smarty version 5.7.0, created on 2026-02-09 15:03:02
from 'file:views/layout.tpl' */ from 'file:views/layout.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698b49a6a1f282_93718699', 'unifunc' => 'content_6989f726914163_83904848',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -22,21 +22,21 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'file:views/_partial/footer.tpl' => 1, 'file:views/_partial/footer.tpl' => 1,
), ),
))) { ))) {
function content_698b49a6a1f282_93718699 (\Smarty\Template $_smarty_tpl) { function content_6989f726914163_83904848 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, false); $_smarty_tpl->getInheritance()->init($_smarty_tpl, false);
$_smarty_tpl->renderSubTemplate("file:views/_partial/header.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir); $_smarty_tpl->renderSubTemplate("file:views/_partial/header.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1448432322698b49a6a1df69_22260225', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_14089017836989f726912e95_86271581', "content");
?> ?>
<?php $_smarty_tpl->renderSubTemplate("file:views/_partial/footer.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir); <?php $_smarty_tpl->renderSubTemplate("file:views/_partial/footer.tpl", $_smarty_tpl->cache_id, $_smarty_tpl->compile_id, 0, $_smarty_tpl->cache_lifetime, array(), (int) 0, $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_1448432322698b49a6a1df69_22260225 extends \Smarty\Runtime\Block class Block_14089017836989f726912e95_86271581 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 17:15:22 /* Smarty version 5.7.0, created on 2026-02-11 20:35:23
from 'file:views/search.tpl' */ from 'file:views/search.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb92a0876d1_70933700', 'unifunc' => 'content_698ce80be447b2_73034229',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -21,18 +21,18 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'file:views/_partial/preview.tpl' => 1, 'file:views/_partial/preview.tpl' => 1,
), ),
))) { ))) {
function content_698cb92a0876d1_70933700 (\Smarty\Template $_smarty_tpl) { function content_698ce80be447b2_73034229 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_17092653698cb92a075e12_78860742', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_977268380698ce80be327a4_02425845', "content");
$_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_17092653698cb92a075e12_78860742 extends \Smarty\Runtime\Block class Block_977268380698ce80be327a4_02425845 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-10 14:04:32 /* Smarty version 5.7.0, created on 2026-02-09 15:03:02
from 'file:views/home.tpl' */ from 'file:views/home.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698b3af017bda3_81099221', 'unifunc' => 'content_6989f72687e0c8_78461032',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'7e6dbbb1e41ad859e7f5b7b444b7670474263f88' => '7e6dbbb1e41ad859e7f5b7b444b7670474263f88' =>
array ( array (
0 => 'views/home.tpl', 0 => 'views/home.tpl',
1 => 1770721040, 1 => 1770639154,
2 => 'file', 2 => 'file',
), ),
), ),
@ -21,20 +21,20 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'file:views/_partial/preview.tpl' => 1, 'file:views/_partial/preview.tpl' => 1,
), ),
))) { ))) {
function content_698b3af017bda3_81099221 (\Smarty\Template $_smarty_tpl) { function content_6989f72687e0c8_78461032 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_856983399698b3af0178228_49803206', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_15962470546989f72687a521_39502617', "content");
?> ?>
<?php $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); <?php $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_856983399698b3af0178228_49803206 extends \Smarty\Runtime\Block class Block_15962470546989f72687a521_39502617 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';
@ -48,19 +48,6 @@ $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';
directement en contact avec les entreprises.</p> directement en contact avec les entreprises.</p>
</section> </section>
<section class="container mt-5 p-5 d-flex flex-column align-items-center text-center">
<div class="mb-4">
<form method="GET" action="index.php">
<input type="hidden" name="ctrl" value="project">
<input type="hidden" name="action" value="home">
<button type="submit" name="filter_cat" value="1" class="btn btn-primary">Design</button>
<button type="submit" name="filter_cat" value="2" class="btn btn-primary">Développement Web</button>
<button type="submit" name="filter_old" value="true" class="btn btn-primary">Plus de 6 mois</button>
<a href="index.php?ctrl=project&action=home" class="btn btn-primary">Tout</a>
</form>
</div>
</section>
<section class="container" aria-label="Articles récents"> <section class="container" aria-label="Articles récents">
<h2 class="visually-hidden">Les 4 derniers articles</h2> <h2 class="visually-hidden">Les 4 derniers articles</h2>
<div class="row mb-2"> <div class="row mb-2">

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 17:20:34 /* Smarty version 5.7.0, created on 2026-02-11 20:36:30
from 'file:views/_partial/header.tpl' */ from 'file:views/_partial/header.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cba62bdf239_98152130', 'unifunc' => 'content_698ce84e8f9ec8_97257315',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'8056b95e7f6b28be5e36947735d13c8d176ec944' => '8056b95e7f6b28be5e36947735d13c8d176ec944' =>
array ( array (
0 => 'views/_partial/header.tpl', 0 => 'views/_partial/header.tpl',
1 => 1770827564, 1 => 1770842181,
2 => 'file', 2 => 'file',
), ),
), ),
@ -20,7 +20,7 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698cba62bdf239_98152130 (\Smarty\Template $_smarty_tpl) { function content_698ce84e8f9ec8_97257315 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views\\_partial'; $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
?><!DOCTYPE html> ?><!DOCTYPE html>
<html lang="fr"> <html lang="fr">
@ -48,15 +48,7 @@ $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
<div class="collapse navbar-collapse" id="navbarNav"> <div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav me-auto"> <ul class="navbar-nav me-auto">
<li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">Découvrir</a>
</li>
<li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">Customisation</a>
</li>
<li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">Orientation</a>
</li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">À propos</a> <a class="nav-link" href="?ctrl=&action=">À propos</a>
</li> </li>
@ -65,6 +57,9 @@ $_smarty_current_dir = 'D:\\projetphp\\views\\_partial';
<a class="nav-link" href="?ctrl=project&action=search">Rechercher</a> <a class="nav-link" href="?ctrl=project&action=search">Rechercher</a>
</li> </li>
<?php if ((true && (true && null !== ($_SESSION['user'] ?? null)))) {?> <?php if ((true && (true && null !== ($_SESSION['user'] ?? null)))) {?>
<li class="nav-item">
<a class="nav-link" href="?ctrl=project&action=project">Ajouter un projet</a>
</li>
<?php if ($_SESSION['user']['authorisation_name'] == "Administrateur") {?> <?php if ($_SESSION['user']['authorisation_name'] == "Administrateur") {?>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="?ctrl=admin&action=admin">Admin</a> <a class="nav-link" href="?ctrl=admin&action=admin">Admin</a>

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 16:46:56 /* Smarty version 5.7.0, created on 2026-02-11 20:35:28
from 'file:views/user.tpl' */ from 'file:views/user.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb2800e84d0_43477988', 'unifunc' => 'content_698ce81087b505_07608517',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -21,18 +21,18 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'file:views/_partial/preview.tpl' => 1, 'file:views/_partial/preview.tpl' => 1,
), ),
))) { ))) {
function content_698cb2800e84d0_43477988 (\Smarty\Template $_smarty_tpl) { function content_698ce81087b505_07608517 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_2003790771698cb2800d9f81_10343438', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_323782649698ce81086ce17_81897685', "content");
$_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_2003790771698cb2800d9f81_10343438 extends \Smarty\Runtime\Block class Block_323782649698ce81086ce17_81897685 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 17:16:03 /* Smarty version 5.7.0, created on 2026-02-09 10:16:45
from 'file:views/login.tpl' */ from 'file:views/login.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb953b608a8_76956629', 'unifunc' => 'content_6989b40d157c69_73022561',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'b44ab733c93381dbf5dbbeae871506874cefd9d6' => 'b44ab733c93381dbf5dbbeae871506874cefd9d6' =>
array ( array (
0 => 'views/login.tpl', 0 => 'views/login.tpl',
1 => 1770649781, 1 => 1770632188,
2 => 'file', 2 => 'file',
), ),
), ),
@ -20,18 +20,18 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698cb953b608a8_76956629 (\Smarty\Template $_smarty_tpl) { function content_6989b40d157c69_73022561 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1066475645698cb953b56638_10931349', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_3583856956989b40d14e663_91083378', "content");
$_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_1066475645698cb953b56638_10931349 extends \Smarty\Runtime\Block class Block_3583856956989b40d14e663_91083378 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-10 14:04:25 /* Smarty version 5.7.0, created on 2026-02-09 15:02:52
from 'file:views/login.tpl' */ from 'file:views/login.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698b3ae98ff4a6_44263627', 'unifunc' => 'content_6989f71c761896_25894348',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -20,18 +20,18 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698b3ae98ff4a6_44263627 (\Smarty\Template $_smarty_tpl) { function content_6989f71c761896_25894348 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_1193104747698b3ae98f71d7_06580866', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_19992775976989f71c758fc2_34188356', "content");
$_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_1193104747698b3ae98f71d7_06580866 extends \Smarty\Runtime\Block class Block_19992775976989f71c758fc2_34188356 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views';

View file

@ -1,11 +1,11 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-10 15:07:18 /* Smarty version 5.7.0, created on 2026-02-09 15:03:02
from 'file:views/_partial/footer.tpl' */ from 'file:views/_partial/footer.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698b49a6b1a9a1_35918373', 'unifunc' => 'content_6989f726ac4850_67307943',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
@ -20,7 +20,7 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698b49a6b1a9a1_35918373 (\Smarty\Template $_smarty_tpl) { function content_6989f726ac4850_67307943 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views\\_partial'; $_smarty_current_dir = 'C:\\wamp64\\www\\Folliow\\projet_php-guillaume\\views\\_partial';
?> ?>
<footer class="footer container-fluid d-flex justify-content-around"> <footer class="footer container-fluid d-flex justify-content-around">

View file

@ -1,18 +1,18 @@
<?php <?php
/* Smarty version 5.7.0, created on 2026-02-11 16:46:47 /* Smarty version 5.7.0, created on 2026-02-09 10:06:01
from 'file:views/admin.tpl' */ from 'file:views/admin.tpl' */
/* @var \Smarty\Template $_smarty_tpl */ /* @var \Smarty\Template $_smarty_tpl */
if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array ( if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
'version' => '5.7.0', 'version' => '5.7.0',
'unifunc' => 'content_698cb277dd9632_57655004', 'unifunc' => 'content_6989b189902285_60575184',
'has_nocache_code' => false, 'has_nocache_code' => false,
'file_dependency' => 'file_dependency' =>
array ( array (
'f80694cc4829becd656ad4f73c431db5dba4722b' => 'f80694cc4829becd656ad4f73c431db5dba4722b' =>
array ( array (
0 => 'views/admin.tpl', 0 => 'views/admin.tpl',
1 => 1770827564, 1 => 1770630804,
2 => 'file', 2 => 'file',
), ),
), ),
@ -20,139 +20,193 @@ if ($_smarty_tpl->getCompiled()->isFresh($_smarty_tpl, array (
array ( array (
), ),
))) { ))) {
function content_698cb277dd9632_57655004 (\Smarty\Template $_smarty_tpl) { function content_6989b189902285_60575184 (\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
$_smarty_tpl->getInheritance()->init($_smarty_tpl, true); $_smarty_tpl->getInheritance()->init($_smarty_tpl, true);
?> ?>
<?php <?php
$_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_186078871698cb277dcbef8_81710710', "content"); $_smarty_tpl->getInheritance()->instanceBlock($_smarty_tpl, 'Block_13716580806989b1898f9564_82803825', "content");
$_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir); $_smarty_tpl->getInheritance()->endChild($_smarty_tpl, "views/layout.tpl", $_smarty_current_dir);
} }
/* {block "content"} */ /* {block "content"} */
class Block_186078871698cb277dcbef8_81710710 extends \Smarty\Runtime\Block class Block_13716580806989b1898f9564_82803825 extends \Smarty\Runtime\Block
{ {
public function callBlock(\Smarty\Template $_smarty_tpl) { public function callBlock(\Smarty\Template $_smarty_tpl) {
$_smarty_current_dir = 'D:\\projetphp\\views'; $_smarty_current_dir = 'D:\\projetphp\\views';
?> ?>
<section> <section class="sb-nav-fixed">
<nav class="sb-topnav navbar navbar-expand navbar-dark bg-dark">
<a class="navbar-brand ps-3" href="index.php?ctrl=project&action=home"><img src="assests/img/Logo-Wordmark.svg" alt="Logo du site" width="150px"></a>
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
<form class="d-none d-md-inline-block form-inline ms-auto me-0 me-md-3 my-2 my-md-0">
<div class="input-group">
<input class="form-control" type="text" placeholder="Recherche par pseudo..." aria-label="Recherche pseudo" aria-describedby="btnNavbarSearch" />
<button class="btn btn-primary" id="btnNavbarSearch" type="button"><i class="fas fa-search"></i></button>
</div>
</form>
<!-- Navbar - User-->
<ul class="navbar-nav ms-auto ms-md-0 me-3 me-lg-4">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarDropdown" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="fas fa-user fa-fw"></i></a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="/option.php">Paramètre</a></li>
<li><hr class="dropdown-divider" /></li>
<li><a class="dropdown-item" href="/deconnexion.php">Déconnexion</a></li>
</ul>
</li>
</ul>
</nav>
<!-- SideNav Infos -->
<div id="layoutSidenav">
<div id="layoutSidenav_nav">
<nav class="sb-sidenav accordion sb-sidenav-dark" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<div class="sb-sidenav-menu-heading"></div>
<a class="nav-link" href="index.html">
<div class="sb-nav-link-icon"><i class="fas fa-tachometer-alt"></i></div>
Rafraichir la page
</a>
<div class="sb-sidenav-menu-heading"></div>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
</div>
<form action="post">
<div class="container-fluid ps-2">
<div class="row">
<div class="col-6">
<label for="checkbox1">Par date</label>
</div>
<div class="col-6 text-center">
<input type="checkbox" name="search_date" id="">
</div>
<div class="col-6">
<label for="checkbox2">Par date de creation de compte</label>
</div>
<div class="col-6 text-center">
<input type="checkbox" name="search_creationdate" id="">
</div>
<div class="col-6">
<label for="checkbox3">Recherche par date</label>
</div>
<div class="col-6 text-center">
<input type="checkbox" name="search_date" id="">
</div>
<div class="col-12 text-center">
<button type="submit" class="btn mt-3 bg-primary text-light">Recherche</button>
</div>
</div>
</div>
</form>
</div>
</div>
<div class="sb-sidenav-footer">
<div class="small">Connecté avec le compte :</div>
<?php echo $_SESSION['user']['user_name'];?>
</div>
</nav>
</div>
<div id="layoutSidenav_content"> <div id="layoutSidenav_content">
<main>
<div class="container-fluid px-4"> <div class="container-fluid px-4">
<h1 class="mt-4">Dashboard</h1> <h1 class="mt-4">Dashboard</h1>
<div class="container-fluid px-4"> <div class="container-fluid px-4">
<!-- USER MODIF --> <!-- USER MODIF -->
<div class="p-3 mt-2 text-primary-emphasis bg-primary-subtle border border-primary-subtle rounded-3"> <div class="p-3 mt-2 text-primary-emphasis bg-primary-subtle border border-primary-subtle rounded-3">
<div class="container-fluid pt-2"> <div class="container-fluid pt-2">
<h2>Gestion de l'utilsateur</h2>
<p>Changer le statut ou supprimer un utilisateur</p>
<div class="row"> <div class="row">
<div class="col-2"> <div class="col-4">
<img src="./assests/img/Logo-Wordmark.svg" alt="" width="100"> <img src="./assests/img/Logo-Wordmark.svg" alt="" width="100">
</div> </div>
<form method="POST"> <div class="col-4">
<div class="col-6"> <select class="form-select" aria-label="Default select example">
<select class="form-select" aria-label="Default select example" name="user_id">
<option value="0">Choisir un utilisateur</option>
<?php
$_from = $_smarty_tpl->getSmarty()->getRuntime('Foreach')->init($_smarty_tpl, $_smarty_tpl->getValue('arrUserToDisplay'), 'user');
$foreach0DoElse = true;
foreach ($_from ?? [] as $_smarty_tpl->getVariable('user')->value) {
$foreach0DoElse = false;
?>
<option value="<?php echo $_smarty_tpl->getValue('user')->getId();?>
"><?php echo $_smarty_tpl->getValue('user')->getName();?>
<?php echo $_smarty_tpl->getValue('user')->getFirstname();?>
</option>
<?php
}
$_smarty_tpl->getSmarty()->getRuntime('Foreach')->restore($_smarty_tpl, 1);?>
</select>
<select class="form-select" aria-label="Default select example" name="new_status">
<option value="0" selected>Modifier le statut de l'Utilisateur...</option> <option value="0" selected>Modifier le statut de l'Utilisateur...</option>
<?php <?php
$_from = $_smarty_tpl->getSmarty()->getRuntime('Foreach')->init($_smarty_tpl, $_smarty_tpl->getValue('arrAuthorisationToDisplay'), 'arrDetAuthorisation'); $_from = $_smarty_tpl->getSmarty()->getRuntime('Foreach')->init($_smarty_tpl, $_smarty_tpl->getValue('arrStatusToDisplay'), 'arrDetStatus');
$foreach1DoElse = true; $foreach0DoElse = true;
foreach ($_from ?? [] as $_smarty_tpl->getVariable('arrDetAuthorisation')->value) { foreach ($_from ?? [] as $_smarty_tpl->getVariable('arrDetStatus')->value) {
$foreach1DoElse = false; $foreach0DoElse = false;
?> ?>
<option value="<?php echo $_smarty_tpl->getValue('arrDetAuthorisation')->getId();?> <option value="<?php echo $_smarty_tpl->getValue('arrDetStatus')->getId();?>
"><?php echo $_smarty_tpl->getValue('arrDetAuthorisation')->getName();?> "><?php echo $_smarty_tpl->getValue('arrDetStatus')->getStatusName();?>
</option> </option>
<?php <?php
} }
$_smarty_tpl->getSmarty()->getRuntime('Foreach')->restore($_smarty_tpl, 1);?> $_smarty_tpl->getSmarty()->getRuntime('Foreach')->restore($_smarty_tpl, 1);?>
</select> </select>
</div> </div>
<div class="col-2"> <div class="col-4">
<button type="submit" name="action" value="update_status" class="btn bg-success text-light"> Valider</button> <button class="btn bg-danger text-light rounded-circle">X</button>
<button type="submit" name="action" value="delete_user" class="btn bg-danger text-light">Supprimer l'utilisateur</button>
</div> </div>
</form>
</div> </div>
</div> </div>
</div> </div>
<!-- catégorie modif --> <!-- catégorie modif -->
<div class="p-3 mt-2 text-primary-emphasis bg-primary-subtle border border-primary-subtle rounded-3"> <div class="p-3 mt-2 text-primary-emphasis bg-primary-subtle border border-primary-subtle rounded-3">
<form method="post">
<div class="container-fluid pt-2"> <div class="container-fluid pt-2">
<h2>Gestion des catégories</h2>
<div class="row"> <div class="row">
<div class="col-6"> <div class="col-6">
<form method="post"> <select class="form-select" aria-label="Default select example">
<p>Modifier une catégorie existante</p> <option value="0" selected >Modifier un catégorie existante</option>
<select class="form-select" aria-label="Default select example" name="id_to_edit">
<option value="0">Choix de la catégorie</option>
<?php <?php
$_from = $_smarty_tpl->getSmarty()->getRuntime('Foreach')->init($_smarty_tpl, $_smarty_tpl->getValue('arrCategoryToDisplay'), 'category'); $_from = $_smarty_tpl->getSmarty()->getRuntime('Foreach')->init($_smarty_tpl, $_smarty_tpl->getValue('arrCategoryToDisplay'), 'arrDetCategory');
$foreach2DoElse = true; $foreach1DoElse = true;
foreach ($_from ?? [] as $_smarty_tpl->getVariable('category')->value) { foreach ($_from ?? [] as $_smarty_tpl->getVariable('arrDetCategory')->value) {
$foreach2DoElse = false; $foreach1DoElse = false;
?> ?>
<option value="<?php echo $_smarty_tpl->getValue('category')->getId();?> <option value="<?php echo $_smarty_tpl->getValue('arrDetCategory')->getId();?>
"><?php echo $_smarty_tpl->getValue('category')->getName();?> " >
<?php echo $_smarty_tpl->getValue('arrDetCategory')->getName();?>
</option> </option>
<?php <?php
} }
$_smarty_tpl->getSmarty()->getRuntime('Foreach')->restore($_smarty_tpl, 1);?> $_smarty_tpl->getSmarty()->getRuntime('Foreach')->restore($_smarty_tpl, 1);?>
</select> </select>
<br> <br>
<div class="form-floating mb-3"> <input type="text" class="form-control" id="floatingInput" name="edit_category">
<input type="text" class="form-control" id="floatingInput" name="new_name">
<label for="floatingInput">Nouveau nom de la catégorie</label>
</div> </div>
<div class="col-2">
<button type="submit" class="btn bg-success text-light rounded-circle"> </button> <button type="submit" class="btn bg-success text-light rounded-circle"> </button>
</form>
<div>
</div> </div>
<div class="col-2">
<button class="btn bg-danger text-light rounded-circle">X</button>
</div>
</div>
<br>
<br> <br>
<br> <br>
<div class="row"> <div class="row">
<!-- creation cat--> <!-- creation cat-->
<div class="col-6"> <div class="col-6">
<form method="POST"> <label>Créer une nouvelle catégorie</label>
<p>Créer une nouvelle catégorie</p>
<div class="form-floating mb-3"> <div class="form-floating mb-3">
<input type="text" class="form-control" id="floatingInput" name="new_category"> <input type="text" class="form-control" id="floatingInput" name="new_category">
<label for="floatingInput">Nom de la nouvelle catégorie</label> <label for="floatingInput">Créer une nouvelle catégorie</label>
</div>
</div> </div>
<div class="col-2"> <div class="col-2">
<button type="submit" class="btn bg-success text-light rounded-circle"> </button> <button type="submit" class="btn bg-success text-light rounded-circle"> </button>
</div> </div>
</form>
</div>
</div> </div>
</div> </div>
</form> </form>
</div> </div>
</div> </div>
</main>
</div> </div>
<div class="small">Connecté avec le compte : <?php echo $_SESSION['user']['user_name'];?>
<?php echo $_SESSION['user']['user_firstname'];?>
</section> </section>
<?php <?php
} }
} }

View file

@ -25,15 +25,7 @@
{* Menu de navigation *} {* Menu de navigation *}
<div class="collapse navbar-collapse" id="navbarNav"> <div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav me-auto"> <ul class="navbar-nav me-auto">
<li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">Découvrir</a>
</li>
<li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">Customisation</a>
</li>
<li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">Orientation</a>
</li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="?ctrl=&action=">À propos</a> <a class="nav-link" href="?ctrl=&action=">À propos</a>
</li> </li>
@ -42,6 +34,9 @@
<a class="nav-link" href="?ctrl=project&action=search">Rechercher</a> <a class="nav-link" href="?ctrl=project&action=search">Rechercher</a>
</li> </li>
{if isset($smarty.session.user)} {if isset($smarty.session.user)}
<li class="nav-item">
<a class="nav-link" href="?ctrl=project&action=project">Ajouter un projet</a>
</li>
{if $smarty.session.user.authorisation_name == "Administrateur"} {if $smarty.session.user.authorisation_name == "Administrateur"}
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="?ctrl=admin&action=admin">Admin</a> <a class="nav-link" href="?ctrl=admin&action=admin">Admin</a>

View file

@ -27,7 +27,7 @@
<small class="text-body-secondary d-block mb-1"> <small class="text-body-secondary d-block mb-1">
<time>{$objProject->getCreation_date()}</time> <time>{$objProject->getCreation_date()}</time>
<a href="index.php?ctrl=user&action=user&id={$objProject->getUser()}" <a href="index.php?ctrl=user&action=user&id={$objProject->getUser_id()}"
class="text-decoration-none" class="text-decoration-none"
style="position: relative; z-index: 2;"> style="position: relative; z-index: 2;">
{$objProject->getCreatorname()} {$objProject->getCreatorname()}
@ -39,7 +39,7 @@
Lire la suite → Lire la suite →
</a> </a>
{if isset($smarty.session.user)} {if isset($smarty.session.user)}
{if $smarty.session.user.user_id == $objProject->getUser()} {if $smarty.session.user.user_id == $objProject->getUser_id()}
<a href="index.php?ctrl=project&action=display&id={$objProject->getId()}" <a href="index.php?ctrl=project&action=display&id={$objProject->getId()}"
class="stretched-link small"> class="stretched-link small">
Editer Editer
@ -52,13 +52,13 @@
</div> </div>
{*Controle de l'utilisateur ainsi que du status du projet*} {*Controle de l'utilisateur ainsi que du status du projet*}
{if isset($smarty.session.user) {if isset($smarty.session.user) and $smarty.session.user.user_status == 2}
and $smarty.session.user.user_status == 2
and $objProject->getStatus() eq "en_attente"}
<div class="border rounded text-center"> <div class="border rounded text-center">
<a class="btn btn-sm m-1 btn-danger" href="?ctrl=project&action=delete&id={$objProject->getId()}" name="toDelete">Supprimer</a>
{/if}
{if isset($smarty.session.user) and $objProject->getStatus() eq "en_attente" and $smarty.session.user.user_status == 2}
<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-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-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> </div>
{elseif $projectStatus eq "refusé"} {elseif $projectStatus eq "refusé"}
<p class="text-danger fw-bold">Portfolio refusé</p> <p class="text-danger fw-bold">Portfolio refusé</p>

View file

@ -58,7 +58,7 @@
<!-- Sidebar : informations du créateur --> <!-- Sidebar : informations du créateur -->
<div class="col-lg-4"> <div class="col-lg-4">
<div class="card text-center shadow-sm p-4"> <div class="card text-center shadow-sm p-4">
<a href="index.php?ctrl=user&action=user&id={$objProject->getUser()}" class="text-decoration-none text-dark"> <a href="index.php?ctrl=user&action=user&id={$objProject->getUser_id()}" class="text-decoration-none text-dark">
<img src="{$objProject->getUser_image()}" <img src="{$objProject->getUser_image()}"
class="rounded-circle mb-3 mx-auto" class="rounded-circle mb-3 mx-auto"
style="width:100px;height:100px;object-fit:cover;"> style="width:100px;height:100px;object-fit:cover;">
@ -67,12 +67,30 @@
<p class="text-muted small"> <p class="text-muted small">
Publié le {$objProject->getCreation_date()} Publié le {$objProject->getCreation_date()}
</p> </p>
<button class="btn btn-primary">Contacter le talent</button> <button class="btn btn-primary">Contacter le talent</button>
</div> </div>
{*Controle de l'utilisateur ainsi que du status du projet + Suppression disponible pour l'utilisateur possédant le projet*}
{if isset($smarty.session.user) and $smarty.session.user.user_status == 2 or $smarty.session.user.user_id == $objProject->getUser_id()}
<div class="border rounded text-center">
<a class="btn btn-sm m-1 btn-danger" href="?ctrl=project&action=delete&id={$objProject->getId()}" name="toDelete">Supprimer le projet</a>
<a class="btn btn-sm m-1 btn-warning" href="?ctrl=project&action=addedit&id={$objProject->getId()}" name="toEdit">Modifier le projet</a>
{/if}
{*Conditions permettant au Modérateur de modifier le status d'un projet*}
{if isset($smarty.session.user) and $smarty.session.user.user_status == 2 and $objProject->getStatus() eq "en_attente"}
<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>
</div> </div>
{elseif $projectStatus eq "refusé"}
<p class="text-danger fw-bold">Portfolio refusé</p>
{/if}
</div>
</div> </div>
</main> </main>