From 5ba384dbf3b05b0d4f930c4242f8b125c56a59eb Mon Sep 17 00:00:00 2001 From: "Michael J. Rubinsky" Date: Thu, 23 Sep 2010 14:22:03 -0400 Subject: [PATCH] Tweak some exceptions --- ansel/lib/View/Base.php | 17 ++++++++++++----- ansel/lib/View/EmbeddedRenderer/Mini.php | 2 +- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/ansel/lib/View/Base.php b/ansel/lib/View/Base.php index 956c2fd89..feb8c1b8d 100644 --- a/ansel/lib/View/Base.php +++ b/ansel/lib/View/Base.php @@ -124,6 +124,8 @@ abstract class Ansel_View_Base * * @return Ansel_Gallery The requested Ansel_Gallery object * @throws Horde_Exception + * @throws InvalidArgumentException + * */ protected function _getGallery($galleryId = null, $slug = '') { @@ -133,15 +135,20 @@ abstract class Ansel_View_Base } if (empty($galleryId) && empty($slug)) { - throw new Horde_Exception(_("No gallery specified")); + throw new InvalidArgumentException(_("No gallery specified")); } // If we have a slug, use it. - if (!empty($slug)) { - $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($slug); - } else { - $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId); + try { + if (!empty($slug)) { + $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($slug); + } else { + $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId); + } + } catch (Ansel_Exception $e) { + throw new Horde_Exception_NotFound($e->getmessage()); } + if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::READ)) { throw new Horde_Exception(sprintf(_("Access denied to gallery \"%s\"."), $gallery->get('name'))); } diff --git a/ansel/lib/View/EmbeddedRenderer/Mini.php b/ansel/lib/View/EmbeddedRenderer/Mini.php index 9d9bd9c11..063d3fca6 100644 --- a/ansel/lib/View/EmbeddedRenderer/Mini.php +++ b/ansel/lib/View/EmbeddedRenderer/Mini.php @@ -50,7 +50,7 @@ class Ansel_View_EmbeddedRenderer_Mini extends Ansel_View_Gallery } else { try { $this->gallery = $this->_getGallery($gallery_id, $gallery_slug); - } catch (Horde_Exception $e) { + } catch (Exception $e) { Horde::logMessage($e, 'ERR'); exit; } -- 2.11.0