{{ offre.getNom() }}
{{offre.getVille()}}
diff --git a/php/.htaccess b/php/.htaccess
index 7ded04e..9837fc7 100644
--- a/php/.htaccess
+++ b/php/.htaccess
@@ -1,3 +1,11 @@
+#RewriteEngine On
+#
+#RewriteCond %{REQUEST_FILENAME} !-f
+#RewriteCond %{REQUEST_FILENAME} !-d
+#RewriteRule ^(.*)$ index.php/$1 [L]
+
+
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
-RewriteRule . index.php [L]
\ No newline at end of file
+RewriteRule . index.php [L]
+
diff --git a/php/index.php b/php/index.php
index 8252479..5f9c18a 100755
--- a/php/index.php
+++ b/php/index.php
@@ -5,6 +5,7 @@
require_once __DIR__ . '/src/config/config.php';
require __DIR__ . '/vendor/autoload.php';
+
/** Configuration twig */
$loader = new \Twig\Loader\FilesystemLoader(__DIR__ . '/templates');
$twig = new \Twig\Environment($loader, [
diff --git a/php/public/css/connexion.css b/php/public/css/connexion.css
index 4c14d1d..77eb512 100755
--- a/php/public/css/connexion.css
+++ b/php/public/css/connexion.css
@@ -108,4 +108,4 @@ form{
color: #000;
letter-spacing: 1px;
font-size: 0.85em;
-}
\ No newline at end of file
+}
diff --git a/php/public/css/offres.css b/php/public/css/offres.css
index de4ce90..01fa053 100644
--- a/php/public/css/offres.css
+++ b/php/public/css/offres.css
@@ -49,3 +49,12 @@
.row3 img {
align-self: flex-start;
}
+
+a{
+ text-decoration: none;
+}
+
+.current{
+
+ border-bottom: 1px solid black;
+}
diff --git a/php/src/config/Validation.php b/php/src/config/Validation.php
index 4960b2a..ea17283 100755
--- a/php/src/config/Validation.php
+++ b/php/src/config/Validation.php
@@ -144,13 +144,13 @@ class Validation
}
- public function isAdmin()
+ public function isAdmin() : ?Alumni
{
if(isset($_SESSION['login']) && isset($_SESSION['role']))
{
$login = self::nettoyerString($_SESSION['login']);
$role = self::nettoyerString($_SESSION['role']);
- return new Alumni()
+ return $_SESSION["utilisateur"];
}
return null;
}
diff --git a/php/src/controleur/FrontControleur.php b/php/src/controleur/FrontControleur.php
index e951b89..690eddc 100755
--- a/php/src/controleur/FrontControleur.php
+++ b/php/src/controleur/FrontControleur.php
@@ -1,112 +1,103 @@
setBasePath('/php');
+ $router->setBasePath('/SAE_2A_FA-Reseau_ALICA/php');
- $router->map('GET','/','UtilisateurControleur');
+ $router->map('GET', '/', 'UtilisateurControleur');
- $router->map('GET|POST','/user/[i:id]/[a:action]?','MembreControleur');
+ $router->map('GET','/[a:action]?','UtilisateurControleur');
- $router->map('GET|POST','/admin/[i:id]/[a:action]?','AdminControleur');
+ $router->map('POST','/[a:action]?','UtilisateurControleur');
- $id = 0;
+ $router->map('GET', '/[a:action]?', 'UtilisateurControleur');
+ $router->map('GET|POST', '/user/[i:id]/[a:action]?', 'MembreControleur');
+
+ $router->map('GET|POST', '/admin/[i:id]/[a:action]?', 'AdminControleur');
+
+ $id = 0;
$match = $router->match();
+
$action = array();
- $id=array();
+ $id = array();
+
+ $twig->render("accueil.html",[]);
- if(!$match)
- {
+ if (!$match) {
+
+ $dVueErreur[] = "Error 404 Page not found";
global $twig;
- $dVueErreur[] = "Error 404 Page not found";
echo $twig->render("erreur.html", ['dVueErreur' => $dVueErreur]);
}
- if($match)
- {
+ if ($match) {
+
$controller = $match['target'] ?? NULL;
- $action = $match['params']['actions'] ?? NULL;
+ $action = $match['params']['action'] ?? NULL;
$id = $match['params']['id'] ?? NULL;
- }
+ try {
+ if ($controller == "MembreControleur") {
+ if ($_SESSION["utilisateur"] != NULL) {
+ echo 'not implemented';
+ return;
+ }
+ }
- try{
- $controller = new $controller;
- }
- catch (Error $error)
- {
- $dVueErreur = ['Erreur : Action inconnue'];
- $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
- }
+ if ($controller == "AdminControleur") {
+ $Alumni = $_SESSION["utilisateur"];
+ if ($Alumni->getRole() != "Admin") {
+ $dVueErreur = ["Erreur : Vous n'avez pas les privileges pour cette action"];
- }
+ global $twig;
+ echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
+ return;
+ }
+ } else {
+ $namespace = 'App\\Controleur\\';
+ $controller = $namespace . $controller;
+ $controller = new $controller();
+ }
+ if (is_callable(array($controller, $action))) {
+ call_user_func(array($controller, $action), $match['params']);
+ } else {
+ $dVueErreur = ['Erreur : Action inconnue'];
+
+ echo $twig->render('accueil.html', ['dVueErreur' => $dVueErreur]);
+ }
+
+ } catch (Error $error) {
+ $dVueErreur = ['Erreur : Action inconnue'];
-}
-/*class FrontControleur
-{
- public function __construct()
- {
- global $twig;
- session_start();
- $dVueErreur = [];
- $actions = array(
- "Admin" => [
- "supprimerCompte", "consulterSignalement","supprimerOffre"
- ],
- "Moderateur" => [
- //TODO
- ],
- "Membre" => [
- "deconnexion","proposerOffre","consulterProfil","modifierProfil","signaler",
- ],
- "Utilisateur" => [
-
- "connexion", "inscription", "accueil", "consulterProfilLimite", "publierOffre", "listerEvenement", "creerEvenement", "supprimerEvenement", "avoirDetailEvenement", "rechercherEvenement"
- ]
- );
-
- $action = \App\config\Validation::nettoyerString($_GET["action"] ?? "");
- if(in_array($action,$actions['Admin'])) {
- if (!isset($_SESSION["role"]) || $_SESSION["role"]!="admin") {
- $dVueErreur[] = 'Veuillez vous connecter';
- echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
- } else{
- new AdminControleur();
- }
- }
- else if(in_array($action,$actions['Moderateur'])) {
- if (!isset($_SESSION["role"]) || ($_SESSION["role"]!="moderateur" && $_SESSION["role"]!="admin")) {
- $dVueErreur[] = 'Veuillez vous connecter';
- echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
- } else{
- new ModerateurControleur();
- }
- }
- else if(in_array($action,$actions['Membre'])) {
- if (!isset($_SESSION["utilisateur"])) {
- $dVueErreur[] = 'Veuillez vous connecter';
echo $twig->render('erreur.html', ['dVueErreur' => $dVueErreur]);
- } else{
- new MembreControleur();
}
- }else{
- new UtilisateurControleur();
}
}
-}*/
+
+}
diff --git a/php/src/controleur/MembreControleur.php b/php/src/controleur/MembreControleur.php
index 151c410..715c419 100755
--- a/php/src/controleur/MembreControleur.php
+++ b/php/src/controleur/MembreControleur.php
@@ -5,36 +5,12 @@ class MembreControleur extends UtilisateurControleur
{
public function __construct()
{
- global $twig;
- if (!isset($_REQUEST["action"])) {
- $action = NULL;
- } else {
- $action = \App\config\Validation::nettoyerString($_REQUEST["action"]);
- }
- switch ($action) {
- case "deconnexion":
- $this->deconnexion();
- break;
- case "proposerOffre":
- $this->proposerOffre();
- break;
- case "consulterProfil":
- $this->consulterProfil();
- break;
- case "modifierProfil":
- $this->modifierProfil();
- break;
- case "signaler":
- $this->signaler();
- break;
- default:
- parent::__construct();
- }
}
protected function deconnexion()
{
session_destroy();
+ echo "on est passes ici";
header('Location: index.php?action=accueil');
exit();
}
diff --git a/php/src/controleur/UtilisateurControleur.php b/php/src/controleur/UtilisateurControleur.php
index 42f3231..8f90a5d 100755
--- a/php/src/controleur/UtilisateurControleur.php
+++ b/php/src/controleur/UtilisateurControleur.php
@@ -5,7 +5,7 @@ namespace App\controleur;
use App\config\Validation;
use App\gateway\ImageSaver;
use App\metier\Alumni;
-use App\modele\OffreModele;
+use App\modele\MembreModele;
use App\modele\UtilisateurModele;
class UtilisateurControleur
@@ -13,63 +13,9 @@ class UtilisateurControleur
public function __construct()
{
- global $twig;
- if (!isset($_REQUEST["action"])) {
- $action = NULL;
- } else {
- $action = Validation::nettoyerString($_REQUEST["action"]);
- }
- switch ($action) {
- case NULL:
- case "accueil":
- $this->accueil();
- break;
- case "inscription_success":
- $this->inscription_success();
- break;
- case "connection":
- $this->connection();
- break;
- case "inscription":
- $this->inscription();
- break;
- case "consultOffers":
- $this->consultOffers();
- break;
- case "consulterProfilLimite":
- $this->consulterProfilLimite();
- break;
- case "createOffer":
- $this->createOffer();
- break;
- case "createOfferForm":
- $this->createOfferForm();
- break;
- case "displayOffer":
- $this->displayOffer();
- break;
- case "listerEvenement":
- $this->listerEvenement();
- break;
- case "creerEvenement":
- $this->creerEvenement();
- break;
- case "supprimerEvenement":
- $this->supprimerEvenement();
- break;
- case "avoirDetailEvenement":
- $this->avoirDetailEvenement();
- break;
- case "rechercherEvenement":
- $this->rechercherEvenement();
- break;
- default:
- $dVueErreur[] = "Action inconnue ou non autorisée";
- echo $twig->render("erreur.html", ['dVueErreur' => $dVueErreur]);
- }
}
- protected function connection()
+ public function connection()
{
global $twig;
$dVueErreur = []; // Tableau pour stocker les erreurs, le cas échéant
@@ -81,7 +27,7 @@ class UtilisateurControleur
$utilisateur = $userModel->connection($email, $motDePasse);
if ($utilisateur instanceof Alumni) {
$_SESSION['utilisateur'] = $utilisateur;
- header('Location: index.php?action=accueil');
+ $this->accueil();
exit();
} else {
$dVueErreur[] = "L'adresse email ou le mot de passe est incorrect.";
@@ -90,7 +36,7 @@ class UtilisateurControleur
echo $twig->render('connection.html', ['dVueErreur' => $dVueErreur]);
}
- protected function inscription()
+ public function inscription()
{
global $twig;
$dVueErreur = []; // Tableau pour stocker les erreurs, le cas échéant
@@ -124,13 +70,17 @@ class UtilisateurControleur
echo $twig->render('inscription.html', ['dVueErreur' => $dVueErreur]);
}
- protected function accueil()
+ public function accueil()
{
+ var_dump($_SESSION['utilisateur']);
global $twig;
// Ajout d'un var_dump pour déboguer
if (isset($_SESSION['utilisateur']) && $_SESSION['utilisateur'] instanceof Alumni) {
$prenom = $_SESSION['utilisateur']->getPrenom();
$nom = $_SESSION['utilisateur']->getNom();
+// $id = $_SESSION['utilisateur']->get
+ echo $twig->render('/user/accueil.html', ['prenom' => $prenom, 'nom' => $nom]);
+
}
else{
$prenom = null;
@@ -140,19 +90,14 @@ class UtilisateurControleur
echo $twig->render('accueil.html', ['prenom' => $prenom, 'nom' => $nom]);
}
- protected function inscription_success()
- {
- global $twig;
- echo $twig->render('inscription_success.html');
- }
- protected function consulterProfilLimite()
+ public function consulterProfilLimite()
{
//TODO
}
- protected function consultOffers()
+ public function consultOffers()
{
- $offerMdl = new OffreModele();
+ $userMdl = new UtilisateurModele();
global $twig;
$niveauEtudes=null;
@@ -174,14 +119,14 @@ class UtilisateurControleur
}
if ($niveauEtudes == null && $typeContrat == null && $exp == null) {
- $totalOffers = $offerMdl->getNbOffers();
+ $totalOffers = $userMdl->getNbOffers();
} else {
$params = array(
'typeContrat' => $typeContrat,
'exp' => $exp,
'niveauEtudes' => $niveauEtudes,
);
- $offers = $offerMdl->getOffersWithFilters($params);
+ $offers = $userMdl->getOffersWithFilters($params);
$totalOffers = count($offers);
}
@@ -189,8 +134,8 @@ class UtilisateurControleur
if($numberPages == 0 )
{
-
- echo $twig->render("erreur.html",['dVueErreur' => ['Aucune Offre Trouvée']]);
+ $msg = 'Aucune Offre Trouvée';
+ echo $twig->render("OffersList.html",['message' => $msg]);
return;
}
@@ -198,7 +143,7 @@ class UtilisateurControleur
$page = intval($_GET["page"]);
if ($page > $numberPages || $page < 1) {
$dVueErreur[] = "Page introuvable";
- echo $twig->render("erreur.html", ['dVueErreur' => $dVueErreur]);
+ echo $twig->render("erreur.html", ['dVueErreur' => $dVueErreur ]);
return;
}
} else {
@@ -208,11 +153,11 @@ class UtilisateurControleur
$start = intval(($page - 1) * 5);
if ($niveauEtudes == null && $typeContrat == null && $exp == null) {
- $offers = $offerMdl->getOfferLimit($start, $nbOffers);
+ $offers = $userMdl->getOfferLimit($start, $nbOffers);
} else {
$params['start'] = $start;
$params['nbOffers'] = 5;
- $offers = $offerMdl->getOffersWithFilters($params);
+ $offers = $userMdl->getOffersWithFilters($params);
}
/* echo "filtre :".$niveauEtudes."
";
@@ -232,13 +177,13 @@ class UtilisateurControleur
]);
}
- protected function createOfferForm()
+ public function createOfferForm()
{
global $twig;
echo $twig->render("CreerOffre.html", []);
}
- protected function createOffer()
+ public function createOffer()
{
global $twig;
$taberror = [];
@@ -291,10 +236,10 @@ class UtilisateurControleur
$saveImg1 = ImageSaver::SaveImage("image");
$saveImg2 = ImageSaver::SaveImage("logo");
if($saveImg1[0] && $saveImg2[0]) {
- $offreMdl = new OffreModele();
+ $mbrModel = new MembreModele();
- $offre = $offreMdl->publishOffer($saveImg1[1], $saveImg2[1]);
+ $offre = $mbrModel->publishOffer($saveImg1[1], $saveImg2[1]);
echo $twig->render("OffreDetailTest.html", ['offre' => $offre]);
}
@@ -312,8 +257,8 @@ class UtilisateurControleur
if (isset($_GET["id"]) && intval($_GET["id"]) != null)
{
- $offreMdl = new OffreModele();
- $offre = $offreMdl->getOfferFromId(intval($_GET["id"]));
+ $uttilsMdl = new UtilisateurModele();
+ $offre = $uttilsMdl->getOfferFromId(intval($_GET["id"]));
if($offre != NULL)
{
echo $twig->render("OffreDetailTest.html",['offre' => $offre]);
@@ -324,7 +269,7 @@ class UtilisateurControleur
echo $twig->render("erreur.html", ['dVueErreur' => $dVueErreur]);
}
- protected function listerEvenement()
+ public function listerEvenement()
{
$mdl = new UtilisateurModele();
$evenements = $mdl->getEvenement();
@@ -333,7 +278,7 @@ class UtilisateurControleur
echo $twig->render('evenement.html', ['evenements' => $evenements]);
}
- protected function creerEvenement()
+ public function creerEvenement()
{
global $twig;
@@ -354,7 +299,7 @@ class UtilisateurControleur
}
}
- protected function supprimerEvenement()
+ public function supprimerEvenement()
{
$mdl = new UtilisateurModele();
$mdl->deleteEvenement($_GET["id"]);
@@ -362,7 +307,7 @@ class UtilisateurControleur
$this->listerEvenement();
}
- protected function avoirDetailEvenement()
+ public function avoirDetailEvenement()
{
$mdl = new UtilisateurModele();
$evenement = $mdl->getEvenementById($_GET["id"]);
@@ -371,13 +316,12 @@ class UtilisateurControleur
echo $twig->render('detailEvenement.html', ['evenement' => $evenement]);
}
- protected function rechercherEvenement()
+ public function rechercherEvenement()
{
$mdl = new UtilisateurModele();
$evenements = $mdl->getEvenement();
- if(isset($_POST["recherche"]) AND !empty($_POST["recherche"]))
- {
+ if (isset($_POST["recherche"]) and !empty($_POST["recherche"])) {
$recherche = Validation::nettoyerString($_POST["recherche"]);
$evenements = $mdl->getEvenementByTitre($recherche);
}
@@ -385,4 +329,8 @@ class UtilisateurControleur
global $twig;
echo $twig->render('evenement.html', ['evenements' => $evenements]);
}
+
+
+
+
}
\ No newline at end of file
diff --git a/php/src/gateway/AlumniGateway.php b/php/src/gateway/AlumniGateway.php
index 5e19480..761011c 100644
--- a/php/src/gateway/AlumniGateway.php
+++ b/php/src/gateway/AlumniGateway.php
@@ -44,7 +44,7 @@ class AlumniGateway
}
public function findByEmail(string $email){
- $query = 'SELECT Alumni.mail, Alumni.mdp, Alumni.role, Profil.nom, Profil.prenom
+ $query = 'SELECT Alumni.mail, Alumni.mdp, Alumni.role, Profil.nom, Profil.prenom ,Alumni.id
FROM Alumni
LEFT JOIN Profil ON Alumni.id = Profil.alumni
WHERE Alumni.mail = :e';
diff --git a/php/src/gateway/ImageSaver.php b/php/src/gateway/ImageSaver.php
index a6d189d..5897413 100644
--- a/php/src/gateway/ImageSaver.php
+++ b/php/src/gateway/ImageSaver.php
@@ -17,7 +17,7 @@ class ImageSaver
$name = substr($_FILES[$filename]["name"], 0, 45);
$name = self::getId().$name;
- move_uploaded_file($_FILES[$filename]['tmp_name'], "../public/uploads/$name");
+ move_uploaded_file($_FILES[$filename]['tmp_name'], "public/uploads/$name");
$return[]=true;
$return[]=$name;
return $return;
diff --git a/php/src/metier/Offre.php b/php/src/metier/Offre.php
index bd9b494..2264363 100755
--- a/php/src/metier/Offre.php
+++ b/php/src/metier/Offre.php
@@ -10,21 +10,21 @@ class TypeContrat {
const Alternance = "Alternance";
const Stage = "Stage";
}
-
-enum ProfilRecherche : string
-{
- case Junior = "Junior";
- case Senior = "Senior";
- case Indifferent = "Indifferent";
-}
-
-enum NiveauEtudes: string
-{
- case Bac2 = "Bac+2";
- case Bac3 = "Bac+3";
- case Bac5 = "Bac+5";
- case Indifferent = "Indifferent";
-}
+//
+//enum ProfilRecherche : string
+//{
+// case Junior = "Junior";
+// case Senior = "Senior";
+// case Indifferent = "Indifferent";
+//}
+//
+//enum NiveauEtudes: string
+//{
+// case Bac2 = "Bac+2";
+// case Bac3 = "Bac+3";
+// case Bac5 = "Bac+5";
+// case Indifferent = "Indifferent";
+//}
class Offre
{
diff --git a/php/src/modele/MembreModele.php b/php/src/modele/MembreModele.php
index 2a8c65c..97231c7 100755
--- a/php/src/modele/MembreModele.php
+++ b/php/src/modele/MembreModele.php
@@ -2,6 +2,9 @@
namespace App\modele;
+use App\metier\Alumni;
+use App\metier\Offre;
+
class MembreModele extends UtilisateurModele
{
@@ -65,4 +68,53 @@ class MembreModele extends UtilisateurModele
+ public function publishOffer(string $img, string $logo)
+ {
+ $desc = $_POST["description"];
+ $descposte = $_POST["descriptPoste"];
+ $nom = $_POST["name"];
+ $ville = $_POST["ville"];
+ $entreprise = $_POST["entreprise"];
+ $profilRecherche = $_POST["profilRecherche"];
+ $mail = $_POST["mail"];
+ $num = $_POST["num"];
+ $site = $_POST["site"];
+ $exp = $_POST["choixExp"];
+ $typeContrat = $_POST["typeContrat"];
+ $niveauEtudes = $_POST["education"];
+ $date = new \DateTime();
+
+ if(isset($_POST["fullRemote"]))
+ {
+ $remote = true;
+ }
+ else $remote = false;
+
+ // à la place de NULL passer id utilisateur créateur offre
+ $offre = new Offre($this->offreGw->getNewId(),
+ new Alumni("test.mail@icloud.fr","password","admin","prenom","nom"),
+ $nom,
+ $desc,
+ $img,
+ $logo,
+ $typeContrat,
+ $ville,
+ $entreprise,
+ $descposte,
+ $profilRecherche,
+ $exp,
+ $niveauEtudes,
+ $mail,
+ $num,
+ $site,
+ $remote,
+ $date);
+
+ $this->offreGw->addOffers($offre);
+
+ return $offre;
+
+ }
+
+
}
\ No newline at end of file
diff --git a/php/src/modele/UtilisateurModele.php b/php/src/modele/UtilisateurModele.php
index bdea578..a6c6afc 100755
--- a/php/src/modele/UtilisateurModele.php
+++ b/php/src/modele/UtilisateurModele.php
@@ -3,19 +3,24 @@ namespace App\modele;
use App\gateway\Connection;
use App\gateway\EvenementGateway;
+use App\gateway\OffreGateway;
use App\metier\Evenement;
use App\metier\Alumni;
use App\gateway\AlumniGateway;
use App\gateway\ProfilGateway;
+use App\metier\Offre;
class UtilisateurModele
{
private $con;
+ protected $offreGw;
+
public function __construct()
{
$this->con = new Connection(DB_HOST,DB_USER,DB_PASS);
+ $this->offreGw = new OffreGateway($this->con);
}
/**
@@ -35,7 +40,7 @@ class UtilisateurModele
// L'utilisateur existe, vérifiez le mot de passe
if (password_verify($mdp, $utilisateur->getPassword())) {
// Le mot de passe est correct, retournez l'utilisateur
- session_start();
+ //session_start();
return $utilisateur;
} else {
// Le mot de passe est incorrect, renvoyez null
@@ -179,4 +184,83 @@ class UtilisateurModele
return $evenement;
}
+
+
+ public function getOfferFromId(int $id) : ?Offre
+ {
+ $res = $this->offreGw->getOfferFromId($id);
+ if($res != null)
+ return $this->CreateOffersFromGw($res)[0];
+ return null;
+ }
+
+
+
+
+ public function CreateOffersFromGw($res) : array
+ {
+ $alGw = new AlumniGateway(new Connection(DB_HOST,DB_USER,DB_PASS));
+
+ $offers=[];
+ foreach ($res as $row)
+ {
+ $resal = $alGw->ObtenirById($row['offreur']);
+ $profilGw = new ProfilGateway(new Connection(DB_HOST,DB_USER,DB_PASS));
+ $resProfl = $profilGw->getProfilById($row['offreur']);
+
+ $alumni = new Alumni($resal[0]['mail'],$resal[0]['mdp'],$resal[0]['role'],$resProfl[0]['nom'],$resProfl[0]["prenom"]);
+
+ $date = \DateTime::createFromFormat('Y-m-d', $row['date']);
+
+ $offers[]=new Offre(
+ $row['id'],
+ $alumni,
+ $row['titre'],
+ $row['description'],
+ $row["image"],
+ $row["logo"],
+ $row['typeContrat'],
+ $row['ville'],
+ $row["entreprise"],
+ $row['descriptifPoste'],
+ $row['profil'],
+ $row['experience'],
+ $row['niveauEtudes'],
+ $row['mailContact'],
+ $row['numero'],
+ $row['websiteURL'],
+ $row['remote'],
+ $date);
+ }
+
+
+ return $offers;
+ }
+
+ public function getOfferLimit($start, $nbOffers): array
+ {
+ $res = $this->offreGw->getOfferLimit($start, $nbOffers);
+ return $this->CreateOffersFromGw($res);
+ }
+
+ public function getNbOffers() : int
+ {
+ return $this->offreGw->getNbOffers();
+ }
+
+
+
+ public function getOffersWithFilters($params) : array
+ {
+ return $this->offreGw->getOffersWithFilters($params);
+ }
+
+ public function getOffers() : array
+ {
+ $res = $this->offreGw->getOffers();
+ $offers = $this->CreateOffersFromGw($res);
+ return $offers;
+ }
+
+
}
\ No newline at end of file
diff --git a/php/templates/OffersList.html b/php/templates/OffersList.html
index c86f465..475c267 100644
--- a/php/templates/OffersList.html
+++ b/php/templates/OffersList.html
@@ -5,7 +5,7 @@
{{ message }}
+{% endif %}{{offre.getVille()}}
{% if prenom and nom %} @@ -33,6 +36,8 @@