From 8ac2375e0b54acb8c6d9f4eb6ac773bad1a83690 Mon Sep 17 00:00:00 2001
From: Ghislain Loas <ghislo@sandbox.pergame.net>
Date: Thu, 12 Nov 2015 17:10:44 +0100
Subject: [PATCH] hotline #32189 fix fatal error

---
 .../modules/admin/controllers/ModoController.php       |  7 ++++---
 .../modules/admin/controllers/ModoControllerTest.php   | 10 ++++++++++
 2 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/application/modules/admin/controllers/ModoController.php b/application/modules/admin/controllers/ModoController.php
index 0d165d5f7c2..7e6867a2722 100644
--- a/application/modules/admin/controllers/ModoController.php
+++ b/application/modules/admin/controllers/ModoController.php
@@ -30,7 +30,6 @@ class Admin_ModoController extends ZendAfi_Controller_Action {
     $this->subviewForStatus(0);
     $this->_request->setParam('back', 'avisnotice');
     $this->_forward('index');
-
   }
 
 
@@ -38,7 +37,9 @@ class Admin_ModoController extends ZendAfi_Controller_Action {
     if (!$review_id=$this->_request->getParam('id',0))
       $this->_forward('index');
 
-    $review=Class_AvisNotice::find($review_id);
+    if(!$review = Class_AvisNotice::find($review_id))
+      return $this->_forward('index');
+
     $review->setFlags(Class_AvisNotice::ARCHIVED_FLAG)->save();
     $this->_stayOnPage();
   }
@@ -52,8 +53,8 @@ class Admin_ModoController extends ZendAfi_Controller_Action {
     $this->_stayOnPage();
   }
 
-  protected function subviewForStatus($status) {
 
+  protected function subviewForStatus($status) {
     $page = $this->_getParam('page',1);
     $nb_bib=Class_AvisNotice::countBiblioReviews($status);
     $nb_abo=Class_AvisNotice::countAboReviews($status);
diff --git a/tests/application/modules/admin/controllers/ModoControllerTest.php b/tests/application/modules/admin/controllers/ModoControllerTest.php
index d2e9b3e0de0..6c069498d45 100644
--- a/tests/application/modules/admin/controllers/ModoControllerTest.php
+++ b/tests/application/modules/admin/controllers/ModoControllerTest.php
@@ -58,6 +58,16 @@ abstract class ModoControllerIndexActionTestCase extends Admin_AbstractControlle
                                         'avis' => 'Ce livre est vraiment bien !',
                                         'statut' => 0]);
 
+    $this->fixture('Class_AvisNotice', ['id' => 223,
+                                        'id_notice' => 1002,
+                                        'entete' => 'Bulles',
+                                        'note'=> 2,
+                                        'id_user' => null,
+                                        'flags' => 0,
+                                        'avis' => ' Pour faire aimer la biere aux enfants!',
+                                        'id_notice' => 1032,
+                                        'statut' => 1]);
+
     $this->fixture('Class_Notice', ['id' => 1032,
                                     'titre_principal' => 'B comme bière : la bière expliquée aux (grands) enfants']);
 
-- 
GitLab