Tweak some exceptions
authorMichael J. Rubinsky <mrubinsk@horde.org>
Thu, 23 Sep 2010 18:22:03 +0000 (14:22 -0400)
committerMichael J. Rubinsky <mrubinsk@horde.org>
Thu, 23 Sep 2010 18:22:59 +0000 (14:22 -0400)
ansel/lib/View/Base.php
ansel/lib/View/EmbeddedRenderer/Mini.php

index 956c2fd..feb8c1b 100644 (file)
@@ -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')));
         }
index 9d9bd9c..063d3fc 100644 (file)
@@ -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;
             }