From 79ddcb274459c546ceadf25294522fdfb93c6d66 Mon Sep 17 00:00:00 2001
From: Alex Arnaud <alex.arnaud@biblibre.com>
Date: Fri, 6 Nov 2015 09:37:14 +0100
Subject: [PATCH] Dev #32497 - Followup

---
 .../modules/admin/controllers/NewsletterController.php      | 5 +++--
 library/Class/Newsletter.php                                | 6 ++++--
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/application/modules/admin/controllers/NewsletterController.php b/application/modules/admin/controllers/NewsletterController.php
index 01f8a520387..c8ea58deecc 100644
--- a/application/modules/admin/controllers/NewsletterController.php
+++ b/application/modules/admin/controllers/NewsletterController.php
@@ -108,11 +108,12 @@ class Admin_NewsletterController extends ZendAfi_Controller_Action {
   public function duplicateAction() {
     $this->_redirect('admin/newsletter');
     if (!$newsletter = Class_Newsletter::find($this->_request->getParam('id'))) {
-      $this->_helper->notify($this->_('Duplication impossible: la source n\'a pas été trouvée'));
+      $this->_helper->notify($this->_('Duplication impossible: la source n\'a pas été trouvée.'));
       return;
     }
 
-    $newsletter->duplicate();
+    if(!$newsletter->duplicate())
+      $this->_helper->notify($this->_('Duplication impossible: Erreur lors de l\'enregisrement de la copie.'));
   }
 
 
diff --git a/library/Class/Newsletter.php b/library/Class/Newsletter.php
index cbd12fff78e..d94d3c481e4 100644
--- a/library/Class/Newsletter.php
+++ b/library/Class/Newsletter.php
@@ -311,15 +311,17 @@ class Class_Newsletter extends Storm_Model_Abstract {
     $duplicate = new Class_Newsletter();
     $duplicate->updateAttributes($attributes);
 
-    if ($duplicate->save())
+    if (!$duplicate->save())
+      return false;
 
     $subscriptions = Class_NewsletterSubscription::findAllBy(['newsletter_id' => (int) $this->getId()]);
 
     foreach ($subscriptions as $subscription)
       Class_NewsletterSubscription::newWith($duplicate,
                                             $subscription->getUser());
-  }
 
+    return true;
+  }
 }
 
 ?>
\ No newline at end of file
-- 
GitLab