From 6923660f566e9e7e425d9fae723bd1468fb26ef4 Mon Sep 17 00:00:00 2001 From: Dev2Choiz Date: Sun, 26 Apr 2015 00:44:33 +0200 Subject: [PATCH] =?UTF-8?q?ajout=20a=20la=20vol=C3=A9=20des=20cat=20et=20i?= =?UTF-8?q?ngredient=20+=20tri=20dans=20viewrecette?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Controllers/Categorie.php | 4 +- Application/Controllers/Ingredient.php | 2 +- Application/Controllers/ViewRecette.php | 76 ++++++++++++++++++++++++- 3 files changed, 78 insertions(+), 4 deletions(-) diff --git a/Application/Controllers/Categorie.php b/Application/Controllers/Categorie.php index 9946afb..87899cf 100644 --- a/Application/Controllers/Categorie.php +++ b/Application/Controllers/Categorie.php @@ -56,13 +56,13 @@ public function insertCategorie($params) { unset($params['method']); $modelCategorie = new \Application\Models\Categorie(); - + $res=$modelCategorie->insert($params); if( $res ) { return $this->setApiResult($modelCategorie->getLast()); }else{ - return $this->setApiResult(false, true, "erreur pendant l'insertion de la catégorie"); + return $this->setApiResult(false, true, "erreur pendant l'insertion de la catégorie, la catégorie existe déjà en base"); } diff --git a/Application/Controllers/Ingredient.php b/Application/Controllers/Ingredient.php index 10b1d93..376aa41 100644 --- a/Application/Controllers/Ingredient.php +++ b/Application/Controllers/Ingredient.php @@ -61,7 +61,7 @@ public function insertIngredients($params) { if( $res ) { return $this->setApiResult($modelIngredient->getLast()); }else{ - return $this->setApiResult(false, true, "erreur pendant l'insertion de l'ingredient"); + return $this->setApiResult(false, true, "erreur pendant l'insertion de l'ingredient, il existe peut-être déjà en base"); } diff --git a/Application/Controllers/ViewRecette.php b/Application/Controllers/ViewRecette.php index 6060eae..e9a2f75 100644 --- a/Application/Controllers/ViewRecette.php +++ b/Application/Controllers/ViewRecette.php @@ -56,7 +56,7 @@ public function getAllViewRecettes($param) { // obtenir toutes les recettes } else if( $param['droit']==='premium' ) { $where = " (`droit`='classique' OR `droit`='premium') "; }else{ //l'admin a acces à tout - $where=""; + $where=" (`droit`='classique' OR `droit`='premium' OR `droit`='privée') "; } @@ -235,6 +235,80 @@ public function getViewRecette($param) { // obtenir une recette par son id return $this->setApiResult($viewRecetteIPC); } + + + + +public function getViewRecetteBySlug($param) { // obtenir une recette par son slugTitre + unset($param['method']); + //$param = (empty($param["slugtitre"]))? null : ($param["slugtitre"]+0); + + //recupere la recette + $modelViewRecette = new \Application\Models\ViewRecette(); + $viewRecette = $modelViewRecette->convEnTab($modelViewRecette->fetchAll(" `slugtitre`='{$param["slugtitre"]}' ") ); + + + $viewRecetteIPC = $viewRecette[0]; + if( empty($viewRecette[0]) ){ + return $this->setApiResult(false, true, "Aucune recette pour ce slug !"); + } + + + //recupere la moyenne des notes + $modelNote = new \Application\Models\Note(); + $notes=$modelNote->convEnTab($modelNote->fetchAll(" `id_recette`={$viewRecette[0]['id_recette']} ") ); + $somme=0; + foreach ($notes as $note) { + $somme+=$note['value']; + } + $moyenne = -1; + if(count($notes)>0){ + $moyenne=$somme/count($notes); + } + $viewRecetteIPC['noteMoyenne']=$moyenne; + + + + //recupere les ingredients + $modelVLI = new \Application\Models\ViewListIngredients(); + $viewLI = $modelVLI->convEnTab( $modelVLI->fetchAll(" `id_recette`={$viewRecetteIPC['id_recette']}")); + + if( empty($viewLI) ){ + $viewRecetteIPC['ingredients'] = ''; + //return $this->setApiResult($viewRecetteIPC); + }else{ + //colle les ingredients à la recette + $viewRecetteIPC['ingredients'] = $viewLI; + } + + //recupere les produits + $modelVLP = new \Application\Models\ViewListProduits(); + $viewLP = $modelVLI->convEnTab( $modelVLP->fetchAll(" `id_recette`={$viewRecetteIPC['id_recette']}")); + + if( empty($viewLP) ){ + $viewRecetteIPC['produits'] = ''; + //return $this->setApiResult($viewRecetteIPC); + }else{ + //colle les produits à la recette + $viewRecetteIPC['produits'] = $viewLP; + } + + //recupere les commentairess + $modelVC = new \Application\Models\ViewCommentaire(); + $viewC = $modelVC->convEnTab( $modelVC->fetchAll(" `id_recette`={$viewRecetteIPC['id_recette']}")); + + + if( empty($viewC) ){ + $viewRecetteIPC['commentaires'] = ''; + //return $this->setApiResult($viewRecetteIPC); + }else{ + //colle les produits à la recette + $viewRecetteIPC['commentaires'] = $viewC; + } + + + return $this->setApiResult($viewRecetteIPC); + } }