Move binders to factories in ansel
authorMichael J. Rubinsky <mrubinsk@horde.org>
Sat, 9 Oct 2010 14:02:15 +0000 (10:02 -0400)
committerMichael J. Rubinsky <mrubinsk@horde.org>
Sat, 9 Oct 2010 14:02:15 +0000 (10:02 -0400)
86 files changed:
ansel/disclamer.php
ansel/edit_dates.php
ansel/faces/claim.php
ansel/faces/custom.php
ansel/faces/gallery.php
ansel/faces/image.php
ansel/faces/name.php
ansel/faces/report.php
ansel/gallery.php
ansel/gallery/captions.php
ansel/gallery/delete.php
ansel/gallery/sort.php
ansel/group.php
ansel/image.php
ansel/img/download.php
ansel/img/ecard.php
ansel/img/full.php
ansel/img/index.php
ansel/img/mini.php
ansel/img/prettythumb.php
ansel/img/screen.php
ansel/img/thumb.php
ansel/img/upload.php
ansel/img/upload_preview.php
ansel/lib/Ajax/Imple/EditCaption.php
ansel/lib/Ajax/Imple/EditFaces.php
ansel/lib/Ajax/Imple/EditGalleryFaces.php
ansel/lib/Ajax/Imple/GallerySlugCheck.php
ansel/lib/Ajax/Imple/ImageSaveGeotag.php
ansel/lib/Ajax/Imple/LocationAutoCompleter.php
ansel/lib/Ajax/Imple/TagActions.php
ansel/lib/Ansel.php
ansel/lib/Api.php
ansel/lib/Application.php
ansel/lib/Block/gallery.php
ansel/lib/Block/my_galleries.php
ansel/lib/Block/random_photo.php
ansel/lib/Block/recent_comments.php
ansel/lib/Block/recently_added.php
ansel/lib/Block/recently_added_geodata.php
ansel/lib/Faces/Base.php
ansel/lib/Gallery.php
ansel/lib/Gallery/Decorator/Date.php
ansel/lib/GalleryMode/Date.php
ansel/lib/GalleryMode/Normal.php
ansel/lib/Image.php
ansel/lib/ImageGenerator.php
ansel/lib/ImageGenerator/PolaroidThumb.php
ansel/lib/ImageGenerator/RoundedThumb.php
ansel/lib/ImageGenerator/ShadowThumb.php
ansel/lib/Injector/Binder/Faces.php [deleted file]
ansel/lib/Injector/Binder/Storage.php [deleted file]
ansel/lib/Injector/Binder/Styles.php [deleted file]
ansel/lib/Injector/Factory/Faces.php [new file with mode: 0644]
ansel/lib/Injector/Factory/Storage.php
ansel/lib/Injector/Factory/Styles.php [new file with mode: 0644]
ansel/lib/Search/Tag.php
ansel/lib/Storage.php
ansel/lib/Tagger.php
ansel/lib/Tile/Image.php
ansel/lib/View/Base.php
ansel/lib/View/EmbeddedRenderer/GalleryLink.php
ansel/lib/View/EmbeddedRenderer/Mini.php
ansel/lib/View/GalleryProperties.php
ansel/lib/View/GalleryRenderer/Gallery.php
ansel/lib/View/GalleryRenderer/GalleryLightbox.php
ansel/lib/View/Image.php
ansel/lib/View/List.php
ansel/lib/View/Results.php
ansel/lib/View/Upload.php
ansel/lib/Widget/Geotag.php
ansel/lib/Widget/OtherGalleries.php
ansel/lib/Widget/SimilarPhotos.php
ansel/map_edit.php
ansel/perms.php
ansel/preview.php
ansel/protect.php
ansel/report.php
ansel/rss.php
ansel/scripts/all_images_exif_to_tags.php
ansel/scripts/ansel.php
ansel/scripts/recursive_import.php
ansel/scripts/remote_import.php
ansel/templates/gallery/delete_confirmation.inc
ansel/templates/group/owner.inc
ansel/xppublish.php

index eb38eb2..4059612 100644 (file)
@@ -13,7 +13,7 @@ Horde_Registry::appInit('ansel');
 
 $vars = Horde_Variables::getDefaultVariables();
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($vars->get('gallery'));
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($vars->get('gallery'));
 } catch (Ansel_Exception $e) {
     $notification->push($gallery->getMessage());
     Horde::url('view.php?view=List', true)->redirect();
index 2eae395..7a95b43 100644 (file)
@@ -18,7 +18,7 @@ $page = Horde_Util::getFormData('page', 0);
 
 /* If we have a single gallery, check perms now */
 if (!empty($gallery_id)) {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
     if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::EDIT)) {
         $notification->push(_("You are not allowed to edit these photos."), 'horde.error');
         echo Horde::wrapInlineScript(array(
@@ -47,10 +47,10 @@ if ($actionID == 'edit_dates') {
     $count = 0;
     foreach (array_keys($images) as $image_id) {
         try {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
             if (empty($gallery_id)) {
                 // Images might be from different galleries
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
                 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::EDIT)) {
                     continue;
                 }
@@ -82,7 +82,7 @@ $html = '';
 foreach ($keys as $key) {
     $html .= '<img src="' . Ansel::getImageUrl($key, 'mini', false) . '" style="margin:2px;" alt="[thumbnail]" />';
 }
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(array_pop($keys));
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(array_pop($keys));
 /* Display the form */
 $vars->set('image', $images);
 $vars->set('gallery', $gallery_id);
index 1660020..3aef198 100644 (file)
@@ -35,7 +35,7 @@ if ($form->validate()) {
         $notification->push(_("Action was cancelled."), 'horde.warning');
     } else {
         $report = Ansel_Report::factory();
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($face['gallery_id']);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($face['gallery_id']);
 
         $face_link = Horde::url('faces/custom.php', true)->add(
             array('name' => $vars->get('person'),
index 623a3ac..5252a81 100644 (file)
@@ -24,14 +24,14 @@ if (!empty($url)) {
 $form_post = Horde::url('faces/savecustom.php')->add($urlparams);
 
 try {
-    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
 } catch (Ansel_Exception $e) {
     $notification->push($image);
     Horde::url('list.php')->redirect();
     exit;
 }
 
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::EDIT)) {
     $notification->push(_("Access denied editing the photo."));
     Ansel::getUrlFor('view', array('gallery' => $image->gallery))->redirect();
index 044a3c4..c684f26 100644 (file)
@@ -22,7 +22,7 @@ if (empty($gallery_id)) {
     exit;
 }
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
 } catch (Ansel_Exception $e) {
     $notification->push($e->getMessage(), 'horde.error');
     Ansel::getUrlFor('view', array('gallery' => $gallery_id))->redirect();
index 60922e5..fbf1442 100644 (file)
@@ -24,7 +24,7 @@ $result = $faces->getImageFacesData($image_id);
 // Attempt to get faces from the picture if we don't already have results,
 // or if we were asked to explicitly try again.
 if (($reload || empty($result))) {
-    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     try {
         $image->createView('screen');
         $result = $faces->getFromPicture($image_id, $autocreate);
index 32af2a7..8dcb4b0 100644 (file)
@@ -17,8 +17,8 @@ $image_id = (int)Horde_Util::getFormData('image');
 $face_id = (int)Horde_Util::getFormData('face');
 $name = Horde_Util::getFormData('name');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-$gallery = $$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()>getGallery($image->gallery);
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+$gallery = $$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()>getGallery($image->gallery);
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::EDIT)) {
     throw new Horde_Exception('Access denied editing the photo.');
 }
index c5ef49e..c6c7e26 100644 (file)
@@ -39,7 +39,7 @@ if ($form->validate()) {
     } else {
         require ANSEL_BASE . '/lib/Report.php';
         $report = Ansel_Report::factory();
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($face['gallery_id']);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($face['gallery_id']);
 
         $face_link = Horde::url('faces/face.php', true)->add(
                 array('name' => $vars->get('person'),
index 8c151de..53a63b4 100644 (file)
@@ -33,7 +33,7 @@ case 'modify':
 
 case 'downloadzip':
     $galleryId = Horde_Util::getFormData('gallery');
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
     if (!$registry->getAuth() ||
         !$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ)) {
 
@@ -51,7 +51,7 @@ case 'empty':
     $galleryId = Horde_Util::getFormData('gallery');
     if ($galleryId) {
         try {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
             require ANSEL_TEMPLATES . '/common-header.inc';
             echo Horde::menu();
             $notification->notify(array('listeners' => 'status'));
@@ -71,7 +71,7 @@ case 'generateDefault':
     // Re-generate the default pretty gallery image.
     $galleryId = Horde_Util::getFormData('gallery');
     try {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
         $gallery->clearStacks();
         $notification->push(_("The gallery's default photo has successfully been reset."), 'horde.success');
         Horde::url('view.php', true)->add('gallery', $galleryId)->redirect();
@@ -86,7 +86,7 @@ case 'generateThumbs':
     // Re-generate all of this gallery's prettythumbs.
     $galleryId = Horde_Util::getFormData('gallery');
     try {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
     } catch (Ansel_Exception $e) {
         $notification->push($gallery->getMessage(), 'horde.error');
         Horde::url('index.php', true)->redirect();
@@ -101,7 +101,7 @@ case 'deleteCache':
     // Delete all cached image views.
     $galleryId = Horde_Util::getFormData('gallery');
     try {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
     } catch (Ansel_Exception $e) {
         $notification->push($gallery->getMessage(), 'horde.error');
         Horde::url('index.php', true)->redirect();
index 0862dd7..bdbd95a 100644 (file)
@@ -17,7 +17,7 @@ if (!$galleryId) {
     exit;
 }
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
 } catch (Ansel_Exception $e) {
     $notification->push(sprintf(_("Error accessing %s: %s"), $galleryId, $e->getMessage()), 'horde.error');
     Ansel::getUrlFor('view', array('view' => 'List'), true)->redirect();
index 329efa6..afcef4d 100644 (file)
@@ -17,7 +17,7 @@ $galleryId = Horde_Util::getPost('gallery');
 
 if ($galleryId) {
     try {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
     } catch (Ansel_Exception $e) {
         $notification->push($e->getMessage(), 'horde.error');
         // Return to the default view.
@@ -31,7 +31,7 @@ if ($galleryId) {
                                         $gallery->get('name')), 'horde.error');
         } else {
             try {
-                $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeGallery($gallery);
+                $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeGallery($gallery);
                 $notification->push(sprintf(_("Successfully deleted %s."), $gallery->get('name')), 'horde.success');
             } catch (Ansel_Exception $e) {
                 $notification->push(sprintf(
@@ -58,7 +58,7 @@ if ($galleryId) {
                                         $gallery->get('name')),
                                 'horde.error');
         } else {
-            $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->emptyGallery($gallery);
+            $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->emptyGallery($gallery);
             $notification->push(sprintf(_("Successfully emptied \"%s\""), $gallery->get('name')));
         }
         Ansel::getUrlFor('view',
index b941e34..38f705d 100644 (file)
@@ -19,7 +19,7 @@ if (!isset($galleryId)) {
     exit;
 }
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
 } catch (Ansel_Excception $e) {
     $notification->push(_("There was an error accessing the gallery."), 'horde.error');
     Ansel::getUrlFor('view', array('view' => 'List'), true)->redirect();
index 30f7049..dbad014 100644 (file)
@@ -29,9 +29,9 @@ $groups_perpage = $prefs->getValue('groupsperpage');
 switch ($groupby) {
 case 'owner':
     try {
-        if ($num_groups = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares->countOwners(Horde_Perms::SHOW, null, false)) {
+        if ($num_groups = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares->countOwners(Horde_Perms::SHOW, null, false)) {
 
-            $groups = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares->listOwners(Horde_Perms::SHOW,
+            $groups = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares->listOwners(Horde_Perms::SHOW,
                                                          null,
                                                          false,
                                                          $gbpage * $groups_perpage,
index 51993ef..8896961 100644 (file)
@@ -53,7 +53,7 @@ if (is_null($actionID) && is_null($tags)) {
 
 /* Get the gallery object and style information */
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
 } catch (Ansel_Exception $e) {
     $notification->push(sprintf(_("Gallery %s not found."), $gallery_id), 'horde.error');
     Ansel::getUrlFor('view', array('view' => 'List'), true)->redirect();
@@ -64,7 +64,7 @@ try {
 if (!is_null($tags) && strlen($tags)) {
     $tags = explode(',', $tags);
     if (!empty($image_id)) {
-        $resource = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $resource = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     } else {
         $resource = $gallery;
     }
@@ -101,7 +101,7 @@ switch ($actionID) {
 case 'deletetags':
     $tag = Horde_Util::getFormData('tag');
     if (!empty($image_id)) {
-        $resource = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $resource = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
         $page = Horde_Util::getFormData('page', 0);
         $url = Ansel::getUrlFor('view', array_merge(
                                         array('view' => 'Image',
@@ -126,7 +126,7 @@ case 'deletetags':
 
 case 'modify':
     try {
-        $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
         $ret = Horde_Util::getFormData('ret', 'gallery');
     } catch (Ansel_Exception $e) {
         $notification->push(_("Photo not found."), 'horde.error');
@@ -202,7 +202,7 @@ case 'save':
             } catch (Horde_Browser_Exception $e) {}
         }
 
-        $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
         $image->caption = $vars->get('image_desc');
         $image->setTags(explode(',' , $vars->get('image_tags')));
 
@@ -307,7 +307,7 @@ case 'resizeedit':
     }
 
     /* Retrieve image details. */
-    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $title = sprintf(_("Edit %s :: %s"), $gallery->get('name'),
                      $image->filename);
 
@@ -365,7 +365,7 @@ case 'watermark':
                                      true)->redirect();
         exit;
     } else {
-        $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
         $image->watermark('screen', $watermark, $watermark_halign,
                                 $watermark_valign, $watermark_font);
         $image->updateData($image->raw('screen'), 'screen');
@@ -393,7 +393,7 @@ case 'resize':
                             'horde.error');
     } else {
         try {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
         } catch (Ansel_Exception $e) {
             $notification->push($e->getMessage(), 'horde.error');
             Ansel::getUrlFor('view', array('view' => 'List'), true)->redirect();
@@ -456,7 +456,7 @@ case 'resize':
 case 'setwatermark':
     $title = _("Watermark");
     try {
-        $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     } catch (Ansel_Exception $e) {
         $notification->push($image->getMessage(), 'horde.error');
         Ansel::getUrlFor('view', array('view' => 'List'), true)->redirect();
@@ -503,7 +503,7 @@ case 'previewrotate270':
     $action = substr($actionID, 7);
 
     /* Retrieve image details. */
-    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $title = sprintf(_("Preview changes for %s :: %s"),
                      $gallery->get('name'),
                      $image->filename);
@@ -521,35 +521,35 @@ case 'imagerotate180':
 case 'imagerotate270':
     $view = Horde_Util::getFormData('view');
     $angle = intval(substr($actionID, 11));
-    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $image->rotate($view, $angle);
     $image->display($view);
     exit;
 
 case 'imageflip':
     $view = Horde_Util::getFormData('view');
-    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $image->flip($view);
     $image->display($view);
     exit;
 
 case 'imagemirror':
     $view = Horde_Util::getFormData('view');
-    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $image->mirror($view);
     $image->display($view);
     exit;
 
 case 'imagegrayscale':
     $view = Horde_Util::getFormData('view');
-    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $image->grayscale($view);
     $image->display($view);
     exit;
 
 case 'imagewatermark':
     $view = Horde_Util::getFormData('view');
-    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
     $image->watermark($view, $watermark, $watermark_halign, $watermark_valign,
                       $watermark_font);
     $image->display($view);
@@ -611,7 +611,7 @@ case 'move':
     $newGallery = Horde_Util::getFormData('new_gallery');
     if ($images && $newGallery) {
         try {
-            $newGallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($newGallery);
+            $newGallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($newGallery);
             $result = $gallery->moveImagesTo($images, $newGallery);
             $notification->push(
                 sprintf(ngettext("Moved %d photo from \"%s\" to \"%s\"",
@@ -655,7 +655,7 @@ case 'copy':
     $newGallery = Horde_Util::getFormData('new_gallery');
     if ($images && $newGallery) {
         try {
-            $newGallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($newGallery);
+            $newGallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($newGallery);
             $result = $gallery->copyImagesTo($images, $newGallery);
             $notification->push(
                     sprintf(ngettext("Copied %d photo to %s",
@@ -682,7 +682,7 @@ case 'copy':
 case 'downloadzip':
     $galleryId = Horde_Util::getFormData('gallery');
     if ($galleryId) {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
         if (!$registry->getAuth() ||
             !$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ) ||
             $gallery->hasPasswd() || !$gallery->isOldEnough()) {
@@ -728,7 +728,7 @@ case 'previewcrop':
         $action = substr($actionID, 7);
 
         /* Retrieve image details. */
-        $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+        $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
         $title = sprintf(_("Preview changes for %s :: %s"),
                          $gallery->get('name'),
                          $image->filename);
@@ -746,7 +746,7 @@ case 'imagecrop':
         if ($gallery->hasPermission($registry->getAuth(), Horde_Perms::EDIT)) {
             $params = Horde_Util::getFormData('params');
             list($x1, $y1, $x2, $y2) = explode('.', $params);
-            $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+            $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
             $image->load('full');
             $image->crop($x1, $y1, $x2, $y2);
             $image->display();
index 620812d..e62c57c 100644 (file)
@@ -11,8 +11,8 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ) || !$gallery->canDownload()) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."), __FILE__, __LINE__);
 }
index 01bbf3a..73e8b70 100644 (file)
@@ -17,7 +17,7 @@ if (empty($conf['ecard']['enable'])) {
 }
 
 /* Get the gallery and the image, and abort if either fails. */
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(Horde_Util::getFormData('gallery'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(Horde_Util::getFormData('gallery'));
 $image = $gallery->getImage(Horde_Util::getFormData('image'));
 
 /* Run through the action handlers. */
index d6b801a..5bc185d 100644 (file)
@@ -11,8 +11,8 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ) || !$gallery->canDownload()) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."));
 }
index 451529c..7a031b9 100644 (file)
@@ -11,8 +11,8 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ)) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."));
 }
index 9515795..3674538 100644 (file)
@@ -11,8 +11,8 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(abs($image->gallery));
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(abs($image->gallery));
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ)) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."));
 }
index 55947e6..d342a78 100644 (file)
@@ -21,8 +21,8 @@ if ($thumbstyle && $background) {
 } else {
     $style = null;
 }
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(abs($image->gallery));
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(abs($image->gallery));
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ)) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."));
 }
index 06441ab..53c0f21 100644 (file)
@@ -11,8 +11,8 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ)) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."));
 }
index b18d178..0156a3e 100644 (file)
@@ -11,8 +11,8 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(Horde_Util::getFormData('image'));
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(abs($image->gallery));
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(Horde_Util::getFormData('image'));
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(abs($image->gallery));
 if (!$gallery->hasPermission($registry->getAuth(), Horde_Perms::READ)) {
     throw new Horde_Exception_PermissionDenied(_("Access denied viewing this photo."));
 }
index d4225d0..59d319e 100644 (file)
@@ -13,7 +13,7 @@ Horde_Registry::appInit('ansel');
 
 $gallery_id = Horde_Util::getFormData('gallery');
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
 } catch (Ansel_Exception $e) {
     $notification->push(sprintf(_("Gallery %s not found."), $gallery_id), 'horde.error');
     Ansel::getUrlFor('view', array('view' => 'List'), true)->redirect();
index b73b4d0..d61c782 100644 (file)
@@ -11,7 +11,7 @@
 require_once dirname(__FILE__) . '/../lib/Application.php';
 Horde_Registry::appInit('ansel');
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery((int)Horde_Util::getFormData('gallery'));
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery((int)Horde_Util::getFormData('gallery'));
 } catch (Ansel_Exception $e) {
     echo $e->getMessage();
     Horde::logMessage($e->getMessage(), 'err');
index c75af02..e84866d 100644 (file)
@@ -56,7 +56,7 @@ class Ansel_Ajax_Imple_EditCaption extends Horde_Core_Ajax_Imple
             /* Are we requesting the unformatted text? */
             if (!empty($args['action']) && $args['action'] == 'load') {
                 $id = $args['id'];
-                $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
+                $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
                 $caption = $image->caption;
 
                 return $caption;
@@ -68,8 +68,8 @@ class Ansel_Ajax_Imple_EditCaption extends Horde_Core_Ajax_Imple
                     return '';
             }
             $id = $args['id'];
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
-            $g = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
+            $g = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
             if ($g->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
                 $image->caption = $pref_value;
                 try {
index f10b2ad..f303c93 100644 (file)
@@ -49,7 +49,7 @@ class Ansel_Ajax_Imple_EditFaces extends Horde_Core_Ajax_Imple
                 // Attempt to get faces from the picture if we don't already have results,
                 // or if we were asked to explicitly try again.
                 if (($reload || empty($result))) {
-                    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+                    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
                     $image->createView('screen');
                     $result = $faces->getFromPicture($image_id, $autocreate);
                 }
@@ -70,8 +70,8 @@ class Ansel_Ajax_Imple_EditFaces extends Horde_Core_Ajax_Imple
             case 'delete':
                 // delete - deletes a single face from an image.
                 $face_id = (int)$post['face'];
-                $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+                $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
                 if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
                     throw new Horde_Exception('Access denied editing the photo.');
                 }
@@ -87,8 +87,8 @@ class Ansel_Ajax_Imple_EditFaces extends Horde_Core_Ajax_Imple
                 }
 
                 $name = $post['facename'];
-                $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-                $gallery = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+                $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+                $gallery = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
                 if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
                     throw new Horde_Exception('You are not allowed to edit this photo');
                 }
index febbb01..a2dcec0 100644 (file)
@@ -29,7 +29,7 @@ class Ansel_Ajax_Imple_EditGalleryFaces extends Horde_Ajax_Imple_Base
         $autocreate = true;
         $result = $faces->getImageFacesData($image_id);
         if (empty($result)) {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($this->_params['image_id']);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($this->_params['image_id']);
             $image->createView('screen');
             $result = $faces->getFromPicture($this->_params['image_id'], $autocreate);
         }
@@ -67,7 +67,7 @@ class Ansel_Ajax_Imple_EditGalleryFaces extends Horde_Ajax_Imple_Base
                 // Attempt to get faces from the picture if we don't already have results,
                 // or if we were asked to explicitly try again.
                 if (($reload || empty($result))) {
-                    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+                    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
                     $image->createView('screen');
                     $result = $faces->getFromPicture($image_id, $autocreate);
                 }
@@ -89,8 +89,8 @@ class Ansel_Ajax_Imple_EditGalleryFaces extends Horde_Ajax_Imple_Base
             case 'delete':
                 // delete - deletes a single face from an image.
                 $face_id = (int)$post['face'];
-                $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-                $gallery = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+                $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+                $gallery = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
                 if (!$gallery->hasPermission(Horde_Auth::getAuth(), Horde_Perms::EDIT)) {
                     throw new Horde_Exception('Access denied editing the photo.');
                 }
@@ -107,8 +107,8 @@ class Ansel_Ajax_Imple_EditGalleryFaces extends Horde_Ajax_Imple_Base
                 }
 
                 $name = $post['facename'];
-                $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-                $gallery = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+                $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+                $gallery = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
                 if (!$gallery->hasPermission(Horde_Auth::getAuth(), Horde_Perms::EDIT)) {
                     throw new Horde_Exception('You are not allowed to edit this photo');
                 }
index 55ccabb..f734a99 100644 (file)
@@ -38,7 +38,7 @@ class Ansel_Ajax_Imple_GallerySlugCheck extends Horde_Core_Ajax_Imple
             return array('response' => '0');
         }
 
-        $exists = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->slugExists($slug) ? 0 : 1;
+        $exists = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->slugExists($slug) ? 0 : 1;
         return array('response' => $exists);
     }
 
index c8df820..7049896 100644 (file)
@@ -39,8 +39,8 @@ class Ansel_Ajax_Imple_ImageSaveGeotag extends Horde_Core_Ajax_Imple
 
         // Get the image and gallery to check perms
         try {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage((int)$img);
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage((int)$img);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
         } catch (Ansel_Exception $e) {
             return array('response' => 0);
         }
@@ -64,7 +64,7 @@ class Ansel_Ajax_Imple_ImageSaveGeotag extends Horde_Core_Ajax_Imple
             // Now get the "add geotag" stuff
             $addurl = Horde::url('map_edit.php')->add('image', $img);
             $addLink = $addurl->link(array('onclick' => Horde::popupJs(Horde::url('map_edit.php'), array('params' => array('image' => $img), 'urlencode' => true, 'width' => '750', 'height' => '600')) . 'return false;'));
-            $imgs = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImagesGeodata($GLOBALS['registry']->getAuth());
+            $imgs = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImagesGeodata($GLOBALS['registry']->getAuth());
             if (count($imgs) > 0) {
                 $imgsrc = '<div class="ansel_location_sameas">';
                 foreach ($imgs as $id => $data) {
index 31a9b98..5134d02 100644 (file)
@@ -27,7 +27,7 @@ class Ansel_Ajax_Imple_LocationAutoCompleter extends Horde_Core_Ajax_Imple_AutoC
 
         /* Use ajax? */
         if (!isset($_SESSION['ansel']['ajax_locationac'])) {
-            $results = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->searchLocations();
+            $results = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->searchLocations();
             if ($results instanceof PEAR_Error) {
                 Horde::logMessage($results, 'ERR');
             } else {
@@ -39,7 +39,7 @@ class Ansel_Ajax_Imple_LocationAutoCompleter extends Horde_Core_Ajax_Imple_AutoC
             $ret['ajax'] = 'LocationAutoCompleter';
         } else {
             if (empty($results)) {
-                $results = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->searchLocations();
+                $results = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->searchLocations();
             }
             $ret['browser'] = Horde_Serialize::serialize($results, Horde_Serialize::JSON);
         }
@@ -55,7 +55,7 @@ class Ansel_Ajax_Imple_LocationAutoCompleter extends Horde_Core_Ajax_Imple_AutoC
             return array();
         }
         try {
-            $locs = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->searchLocations($input);
+            $locs = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->searchLocations($input);
             if (!count($locs)) {
                 $locs = new StdClass();
             }
index 1d4cbac..40c7214 100644 (file)
@@ -54,11 +54,11 @@ class Ansel_Ajax_Imple_TagActions extends Horde_Core_Ajax_Imple
 
         /* Get the resource owner */
         if ($type == 'gallery') {
-            $resource = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($id);
+            $resource = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($id);
             $parent = $resource;
         } else {
-            $resource = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
-            $parent = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($resource->gallery);
+            $resource = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
+            $parent = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($resource->gallery);
         }
 
         switch ($action) {
index 00f587b..b5792a9 100644 (file)
@@ -87,8 +87,8 @@ class Ansel
     {
         $params = new Horde_Support_Array($params);
         $galleries = $GLOBALS['injector']
-            ->getInstance('Ansel_Storage')
-            ->getScope()
+            ->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->listGalleries($params);
 
         $tree = $GLOBALS['injector']->getInstance('Horde_Core_Factory_Tree')->create('gallery_tree', 'Select');
@@ -204,8 +204,8 @@ class Ansel
                         // Getting these objects is not ideal, but at this point
                         // they should already be locally cached so the cost
                         // is minimized.
-                        $i = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($data['image']);
-                        $g = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($data['gallery']);
+                        $i = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($data['image']);
+                        $g = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($data['gallery']);
                         if ($g->get('view_mode') == 'Date') {
                             $imgDate = new Horde_Date($i->originalDate);
                             $data['year'] = $imgDate->year;
@@ -405,7 +405,7 @@ class Ansel
             // We have to make sure the image exists first, since we won't
             // be going through img/*.php to auto-create it.
             try {
-                $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($imageId);
+                $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($imageId);
             } catch (Ansel_Exception $e) {
                 Horde::logMessage($e, 'ERR');
                 return Horde::url((string)Ansel::getErrorImage($view), $full);
@@ -541,7 +541,7 @@ class Ansel
     {
         global $prefs;
 
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
         $groupby = Horde_Util::getFormData('groupby', $prefs->getValue('groupby'));
         $owner = Horde_Util::getFormData('owner');
         $image_id = (int)Horde_Util::getFormData('image');
@@ -871,11 +871,11 @@ class Ansel
 
         $zipfiles = array();
         foreach ($images as $id) {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
             // If we didn't select an entire gallery, check the download
             // size for each image.
             if (!isset($view)) {
-                $g = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+                $g = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
                 $v = $g->canDownload() ? 'full' : 'screen';
             } else {
                 $v = $view;
index 967f80a..7867267 100644 (file)
@@ -36,7 +36,7 @@ class Ansel_Api extends Horde_Registry_Api
         $path = trim($path, '/');
         $parts = explode('/', $path);
 
-        $storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
         if (empty($path)) {
             $owners = array();
             $galleries = $storage->listGalleries(array('allLevels' => false));
@@ -80,7 +80,7 @@ class Ansel_Api extends Horde_Registry_Api
                 // This request if for a certain gallery, list all sub-galleries
                 // and images.
                 $gallery_id = end($parts);
-                $galleries = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleries(array($gallery_id));
+                $galleries = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleries(array($gallery_id));
                 if (!isset($galleries[$gallery_id]) ||
                     !$galleries[$gallery_id]->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::READ)) {
 
@@ -92,7 +92,7 @@ class Ansel_Api extends Horde_Registry_Api
 
             } elseif (count($parts) > 2 &&
                       $this->galleryExists(null, $parts[count($parts) - 2]) &&
-                      ($image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage(end($parts)))) {
+                      ($image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage(end($parts)))) {
 
                 return array('data' => $image->raw(),
                              'mimetype' => $image->type,
@@ -189,10 +189,10 @@ class Ansel_Api extends Horde_Registry_Api
         }
         $image_name = array_pop($parts);
         $gallery_id = end($parts);
-        if (!$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($gallery_id)) {
+        if (!$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($gallery_id)) {
             throw new Horde_Exception_NotFound("Gallery does not exist");
         }
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
         if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
             throw new Horde_Exception_PermissionDenied(_("Access denied adding photos to \"%s\"."));
         }
@@ -218,7 +218,7 @@ class Ansel_Api extends Horde_Registry_Api
         }
 
         try {
-            if (!($image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id))) {
+            if (!($image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id))) {
                 return false;
             }
         } catch (Ansel_Exception $e) {
@@ -337,9 +337,9 @@ class Ansel_Api extends Horde_Registry_Api
             throw new InvalidArgumentException(_("A gallery to add this photo to is required."));
         }
         if (!empty($params['slug'])) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($params['slug']);
-        } elseif ($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($gallery_id)) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleryBySlug($params['slug']);
+        } elseif ($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($gallery_id)) {
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
         }
 
         /* Check perms for requested gallery */
@@ -421,8 +421,8 @@ class Ansel_Api extends Horde_Registry_Api
             $GLOBALS['injector']->getInstance('Ansel_Config')->set('scope', $params['scope']);
         }
 
-        $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+        $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
         if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::DELETE)) {
             throw new Horde_Exception_PermissionDenied(sprintf(_("Access denied deleting photos from \"%s\"."), $gallery->get('name')));
         }
@@ -472,7 +472,7 @@ class Ansel_Api extends Horde_Registry_Api
         }
 
         /* Create the gallery */
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->createGallery($attributes, $permobj, $parent);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->createGallery($attributes, $permobj, $parent);
 
         return $gallery->id;
     }
@@ -502,11 +502,11 @@ class Ansel_Api extends Horde_Registry_Api
         }
 
         /* Get, and check perms on the gallery */
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
         if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::DELETE)) {
             throw new Horde_Exception_PermissionDenied(sprintf(_("Access denied deleting gallery \"%s\"."), $gallery->get('name')));
         } else {
-            return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeGallery($gallery);
+            return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeGallery($gallery);
         }
     }
 
@@ -530,9 +530,9 @@ class Ansel_Api extends Horde_Registry_Api
 
         try {
             if (!empty($params['slug'])) {
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($params['slug']);
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleryBySlug($params['slug']);
             } else {
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
             }
             return (int)$gallery->countImages();
         } catch (Ansel_Exception $e) {
@@ -560,9 +560,9 @@ class Ansel_Api extends Horde_Registry_Api
         }
 
         if (!empty($params['slug'])) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($params['slug']);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleryBySlug($params['slug']);
         } else {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
         }
 
         return $gallery->getKeyImage(empty($params['style']) ? 'ansel_default' : $params['style']);
@@ -619,8 +619,8 @@ class Ansel_Api extends Horde_Registry_Api
         }
 
         /* Get image and gallery */
-        $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+        $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 
         /* Check age and password */
         if (!$gallery->hasPasswd() || !$gallery->isOldEnough()) {
@@ -681,8 +681,8 @@ class Ansel_Api extends Horde_Registry_Api
             $GLOBALS['injector']->getInstance('Ansel_Config')->set('scope', $params['scope']);
         }
         $galleries = $GLOBALS['injector']
-            ->getInstance('Ansel_Storage')
-            ->getScope()
+            ->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->listGalleries($params);
         $return = array();
         foreach ($galleries as $gallery) {
@@ -709,9 +709,9 @@ class Ansel_Api extends Horde_Registry_Api
         }
 
         if (count($slugs)) {
-            $results = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleriesBySlugs($slugs);
+            $results = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleriesBySlugs($slugs);
         } else {
-            $results = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleries($ids);
+            $results = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleries($ids);
         }
 
         // We can't just return the results of the getGalleries call - we need
@@ -782,7 +782,7 @@ class Ansel_Api extends Horde_Registry_Api
             $GLOBALS['injector']->getInstance('Ansel_Config')->set('scope', $app);
         }
 
-        $storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
         // Determine the default gallery when none is given. The first gallery
         // in the list is the default gallery.
         if (is_null($gallery_id) && empty($slug)) {
@@ -848,7 +848,7 @@ class Ansel_Api extends Horde_Registry_Api
         if (!is_null($app)) {
             $GLOBALS['injector']->getInstance('Ansel_Config')->set('scope', $app);
         }
-        $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImages($galleries, $limit, $slugs);
+        $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImages($galleries, $limit, $slugs);
         $imagelist = array();
         if ($style) {
             $style = Ansel::getStyleDefinition($style);
@@ -894,7 +894,7 @@ class Ansel_Api extends Horde_Registry_Api
             $GLOBALS['injector']->getInstance('Ansel_Config')->set('scope', $app);
         }
 
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->countGalleries($GLOBALS['registry']->getAuth(), $perm,
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->countGalleries($GLOBALS['registry']->getAuth(), $perm,
             $attributes, $parent,
             $allLevels);
     }
@@ -951,7 +951,7 @@ class Ansel_Api extends Horde_Registry_Api
         $return = array();
         if (!empty($results['images'])) {
             foreach ($results['images'] as $image_id) {
-                $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+                $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
                 $desc = $image->caption;
                 $title = $image->filename;
                 $view_url = Ansel::getUrlFor('view',
@@ -969,7 +969,7 @@ class Ansel_Api extends Horde_Registry_Api
 
         if (!empty($results['galleries'])) {
             foreach ($results['galleries'] as $gallery) {
-                $gal = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery);
+                $gal = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery);
                 $view_url = Horde::url('view.php')->add(
                         array('gallery' => $gallery,
                               'view' => 'Gallery'));
@@ -998,7 +998,7 @@ class Ansel_Api extends Horde_Registry_Api
             $GLOBALS['injector']->getInstance('Ansel_Config')->set('scope', $app);
         }
 
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($gallery_id, $slug);
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($gallery_id, $slug);
     }
 
     /**
index 1ddb85a..79c66c0 100644 (file)
@@ -65,13 +65,13 @@ class Ansel_Application extends Horde_Registry_Application
             throw new Horde_Exception('The Content_Tagger class could not be found. Make sure the registry entry for the Content system is present.');
         }
 
-        $binders = array(
-            'Ansel_Styles' => new Ansel_Injector_Binder_Styles(),
-            'Ansel_Faces' => new Ansel_Injector_Binder_Faces(),
-            'Ansel_Storage' => new Ansel_Injector_Binder_Storage()
+        $factories = array(
+            'Ansel_Styles' => array('Ansel_Injector_Factory_Styles', 'create'),
+            'Ansel_Faces' => array('Ansel_Injector_Factory_Faces', 'create'),
+            'Ansel_Storage' => array('Ansel_Injector_Factory_Storage', 'create'),
         );
-        foreach ($binders as $interface => $binder) {
-            $GLOBALS['injector']->addBinder($interface, $binder);
+        foreach ($factories as $interface => $v) {
+            $GLOBALS['injector']->bindFactory($interface, $v[0], $v[1]);
         }
 
         // Create db, share, and vfs instances.
index be2bb44..8d44e2a 100644 (file)
@@ -49,7 +49,7 @@ class Horde_Block_ansel_gallery extends Horde_Block
                             'type' => 'checkbox',
                             'default' => true));
 
-        $storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
         if ($storage->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::READ) < $GLOBALS['conf']['gallery']['listlimit']) {
             foreach ($storage->listGalleries() as $gal) {
                 $params['gallery']['values'][$gal->id] = $gal->get('name');
@@ -139,9 +139,9 @@ class Horde_Block_ansel_gallery extends Horde_Block
 
         // Get the gallery object and cache it.
         if (isset($this->_params['gallery']) && $this->_params['gallery'] != '__random') {
-            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_params['gallery']);
+            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_params['gallery']);
         } else {
-            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRandomGallery();
+            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRandomGallery();
         }
 
         // Protect at least a little bit against getting an empty gallery. We
index 42ececa..0c9455d 100644 (file)
@@ -57,8 +57,8 @@ class Horde_Block_ansel_my_galleries extends Horde_Block
 
         /* Get the top level galleries */
         try {
-            $galleries = $GLOBALS['injector']->getInstance('Ansel_Storage')
-                ->getScope()->listGalleries(array('perm' => Horde_Perms::EDIT,
+            $galleries = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+                ->create()->listGalleries(array('perm' => Horde_Perms::EDIT,
                                                   'filter' => $GLOBALS['registry']->getAuth(),
                                                   'allLevels' => false,
                                                   'count' => empty($this->_params['limit']) ? 0 : $this->_params['limit'],
index 50e8c22..7a103db 100644 (file)
@@ -44,7 +44,7 @@ class Horde_Block_ansel_random_photo extends Horde_Block
      */
     protected function _content()
     {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRandomGallery();
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRandomGallery();
         if (!$gallery) {
             return _("There are no photo galleries available.");
         }
index 8f6b7fd..340391f 100644 (file)
@@ -40,8 +40,8 @@ class Horde_Block_ansel_recent_comments extends Horde_Block
                         'type' => 'enum',
                         'default' => '__random',
                         'values' => array('all' => 'All')));
-        $storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
-        if ($storage->getScope()->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::READ) < $GLOBALS['conf']['gallery']['listlimit']) {
+        $storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
+        if ($storage->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::READ) < $GLOBALS['conf']['gallery']['listlimit']) {
             foreach ($storage->listGalleries(array('perm' => Horde_Perms::READ)) as $id => $gal) {
                 $params['gallery']['values'][$id] = $gal->get('name');
             }
@@ -121,7 +121,7 @@ class Horde_Block_ansel_recent_comments extends Horde_Block
 
         foreach ($results as $comment) {
             try {
-                $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($comment['image_id']);
+                $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($comment['image_id']);
                 $url = Ansel::getUrlFor('view',
                                         array('view' => 'Image',
                                               'gallery' => abs($image->gallery),
@@ -163,9 +163,9 @@ class Horde_Block_ansel_recent_comments extends Horde_Block
         // Get the gallery object and cache it.
         if (isset($this->_params['gallery']) &&
             $this->_params['gallery'] != '__random') {
-            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_params['gallery']);
+            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_params['gallery']);
         } else {
-            $this->_gallery =$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRandomGallery();
+            $this->_gallery =$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRandomGallery();
         }
 
         if (empty($this->_gallery)) {
index b2bae65..c873791 100644 (file)
@@ -44,8 +44,8 @@ class Horde_Block_ansel_recently_added extends Horde_Block
                              'default' => 10),
         );
 
-        if ($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::READ) < $GLOBALS['conf']['gallery']['listlimit']) {
-            foreach ($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->listGalleries(array('perm' => Horde_Perms::READ)) as $id => $gal) {
+        if ($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::READ) < $GLOBALS['conf']['gallery']['listlimit']) {
+            foreach ($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->listGalleries(array('perm' => Horde_Perms::READ)) as $id => $gal) {
                 if (!$gal->hasPasswd() && $gal->isOldEnough()) {
                     $params['gallery']['values'][$id] = $gal->get('name');
                 }
@@ -98,7 +98,7 @@ class Horde_Block_ansel_recently_added extends Horde_Block
 
         // Retrieve the images, but protect against very large values for limit.
         try {
-            $results = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImages(
+            $results = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImages(
             $galleries, min($this->_params['limit'], 100));
         } catch (Ansel_Exception $e) {
             return $e->getMessage();
@@ -130,7 +130,7 @@ function previewImage(e, image_id) {
 HEADER;
 
         foreach ($results as $image) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 
             // Don't show locked galleries in the block.
             if (!$gallery->isOldEnough() || $gallery->hasPasswd()) {
@@ -187,9 +187,9 @@ HEADER;
         /* Get the gallery object and cache it. */
         if (isset($this->_params['gallery']) &&
             $this->_params['gallery'] != '__random') {
-            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_params['gallery']);
+            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_params['gallery']);
         } else {
-            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRandomGallery();
+            $this->_gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRandomGallery();
         }
 
         if (empty($this->_gallery)) {
index 941f8ea..d4d54c3 100644 (file)
@@ -53,14 +53,14 @@ class Horde_Block_ansel_recently_added_geodata extends Horde_Block
     protected function _content()
     {
         try {
-            $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImagesGeodata(null, 0, min($this->_params['limit'], 100));
+            $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImagesGeodata(null, 0, min($this->_params['limit'], 100));
         } catch (Ansel_Exception $e) {
             return $e->getMessage();
         }
         $images = array_reverse($images);
         foreach ($images as $key => $image) {
             $id = $image['image_id'];
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image['gallery_id']);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image['gallery_id']);
 
             /* Don't show locked galleries in the block. */
             if (!$gallery->isOldEnough() || $gallery->hasPasswd()) {
index f288ab2..cb8499c 100644 (file)
@@ -169,7 +169,7 @@ class Ansel_Faces_Base
         // should be encapsulated by the shares driver and not parsed from
         // an internally generated query string fragment. Will need to split
         // this out into two seperate operations somehow.
-        $share = substr($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares->getShareCriteria(
+        $share = substr($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares->getShareCriteria(
             $GLOBALS['registry']->getAuth(), Horde_Perms::READ), 5);
 
         $sql = 'SELECT f.face_id, f.gallery_id, f.image_id, f.face_name FROM ansel_faces f, '
@@ -209,7 +209,7 @@ class Ansel_Faces_Base
     {
         // add gallery permission
         // FIXME: Ditto on the REALLY ugly hack comment from above!
-        $share = substr($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares->getShareCriteria(
+        $share = substr($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares->getShareCriteria(
             $GLOBALS['registry']->getAuth(), Horde_Perms::READ), 5);
 
         $sql = 'SELECT COUNT(*) FROM ansel_faces f, '
@@ -352,7 +352,7 @@ class Ansel_Faces_Base
                 return false;
             }
             $data = $this->getFaceById($face_id, true);
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
 
             // Actually create the image.
             $this->createView(
@@ -445,8 +445,8 @@ class Ansel_Faces_Base
      */
     public function saveCustomFace($face_id, $image, $x1, $y1, $x2, $y2, $name = '')
     {
-        $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image);
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+        $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
         if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
             throw new Horde_Exception_PermissionDenied('Access denied editing the photo.');
         }
@@ -534,8 +534,8 @@ class Ansel_Faces_Base
     {
         // get image if ID is passed
         if (!($image instanceof Ansel_Image)) {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image);
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
             if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
                 throw new Horde_Exception_PermissionDenied('Access denied editing the photo.');
             }
@@ -730,7 +730,7 @@ class Ansel_Faces_Base
      */
     public function getFromGallery($gallery_id, $create = false, $force = false)
     {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
         if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
             throw new Horde_Exception(sprintf("Access denied editing gallery \"%s\".", $gallery->get('name')));
         }
index 5a664b7..775187b 100644 (file)
@@ -29,7 +29,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
     {
         /* Pass on up the chain */
         parent::__construct($attributes);
-        $this->setShareOb($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares);
+        $this->setShareOb($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares);
         $mode = isset($attributes['attribute_view_mode']) ? $attributes['attribute_view_mode'] : 'Normal';
         $this->_setModeHelper($mode);
     }
@@ -137,7 +137,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
         }
 
         // Check for slug uniqueness
-        $slugGalleryId = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->slugExists($this->data['attribute_slug']);
+        $slugGalleryId = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->slugExists($this->data['attribute_slug']);
         if ($slugGalleryId > 0 && $slugGalleryId <> $this->id) {
             throw InvalidArgumentException(
                 sprintf(_("Could not save gallery, the slug, \"%s\", already exists."),
@@ -257,7 +257,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
         /* Check for a supported multi-page image */
         if ($image->isMultiPage() === true) {
             $params['name'] = $image->getImagePageCount() . ' page image: ' . $image->filename;
-            $mGallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->createGallery($params, $this->getPermission(), $this->getId());
+            $mGallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->createGallery($params, $this->getPermission(), $this->getId());
             $i = 1;
             foreach ($image as $page) {
                 $page->caption = sprintf(_("Page %d"), $i++);
@@ -551,7 +551,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
      */
     public function getRecentImages($limit = 10)
     {
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImages(array($this->id),
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImages(array($this->id),
                                                           $limit);
     }
 
@@ -564,7 +564,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
      */
     public function &getImage($id)
     {
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
     }
 
     /**
@@ -665,8 +665,8 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
                 /* Fall through to a key image of a sub gallery. */
                 try {
                     $galleries = $GLOBALS['injector']
-                        ->getInstance('Ansel_Storage')
-                        ->getScope()
+                        ->getInstance('Ansel_Injector_Factory_Storage')
+                        ->create()
                         ->listGalleries(array('parent' => $this, 'allLevels' => false));
 
                     foreach ($galleries as $galleryId => $gallery) {
@@ -856,7 +856,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
     {
         /* Make sure we have a gallery object */
         if (!is_null($parent) && !($parent instanceof Ansel_Gallery)) {
-            $parent = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($parent);
+            $parent = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($parent);
         }
 
         /* Check this now since we don't know if we are updating the DB or not */
@@ -986,7 +986,7 @@ class Ansel_Gallery extends Horde_Share_Object_Sql_Hierarchical
 
     public function __wakeup()
     {
-        $this->setShareOb($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares);
+        $this->setShareOb($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares);
         $mode = $this->get('view_mode');
         $this->_setModeHelper($mode);
     }
index a058606..9932f7a 100644 (file)
@@ -112,8 +112,8 @@ class Ansel_Gallery_Decorator_Date
      */
     public function getRecentImages($limit = 10)
     {
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')
-            ->getScope()
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->getRecentImages(array($this->_gallery->id), $limit);
     }
 
@@ -126,7 +126,7 @@ class Ansel_Gallery_Decorator_Date
      */
     public function getImage($id)
     {
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
     }
 
     /**
index edd92d1..8998d76 100644 (file)
@@ -158,7 +158,7 @@ class Ansel_GalleryMode_Date extends Ansel_GalleryMode_Base
         static $children = array();
 
         /* Ansel Storage */
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
 
         $cache_key = md5($this->_gallery->id . serialize($this->_date) . $from . $to);
         if (!empty($children[$cache_key])) {
@@ -418,7 +418,7 @@ class Ansel_GalleryMode_Date extends Ansel_GalleryMode_Base
          */
         if ($this->_gallery->get('has_subgalleries')) {
             $gallery_ids = array();
-            $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImages(array('ids' => $ids));
+            $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImages(array('ids' => $ids));
             foreach ($images as $image) {
                 if (empty($gallery_ids[$image->gallery])) {
                     $gallery_ids[$image->gallery] = 1;
@@ -429,12 +429,12 @@ class Ansel_GalleryMode_Date extends Ansel_GalleryMode_Base
         }
 
         /* Bulk update the images to their new gallery_id */
-        $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->setImagesGallery($ids, $gallery->id);
+        $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->setImagesGallery($ids, $gallery->id);
 
         /* Update the gallery counts for each affected gallery */
         if ($this->_gallery->get('has_subgalleries')) {
             foreach ($gallery_ids as $id => $count) {
-                $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()
+                $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()
                     ->getGallery($id)
                     ->updateImageCount($count, false);
             }
@@ -467,7 +467,7 @@ class Ansel_GalleryMode_Date extends Ansel_GalleryMode_Base
     {
         /* Make sure $image is an Ansel_Image; if not, try loading it. */
         if (!($image instanceof Ansel_Image)) {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image);
         }
 
         /* Make sure the image is in this gallery. */
@@ -497,11 +497,11 @@ class Ansel_GalleryMode_Date extends Ansel_GalleryMode_Base
         } catch (VFS_Exception $e) {}
 
         /* Delete from storage */
-        $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()
+        $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()
                 ->removeImage($image->id);
 
         if (!$isStack) {
-            $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()
+            $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()
                     ->getGallery($image_gallery)
                     ->updateImageCount(1, false);
         }
@@ -611,8 +611,8 @@ class Ansel_GalleryMode_Date extends Ansel_GalleryMode_Base
         if (!is_array($this->_subGalleries)) {
             /* Get a list of all the subgalleries */
             $subs = $GLOBALS['injector']
-                ->getInstance('Ansel_Storage')
-                ->getScope()
+                ->getInstance('Ansel_Injector_Factory_Storage')
+                ->create()
                 ->listGalleries(array('parent' => $this->_gallery));
             $this->_subGalleries = array_keys($subs);
         }
index 4f10939..8ffa5de 100644 (file)
@@ -37,7 +37,7 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
         $galleries = array();
         $num_galleries = 0;
         if ($this->hasSubGalleries()) {
-            $storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+            $storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
             /* Get the number of images and galleries */
             $numimages = $this->countImages();
             $num_galleries = $storage->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::SHOW, null, $this->_gallery, false);
@@ -109,8 +109,8 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
             return $this->_gallery->data['attribute_images'];
         }
 
-        $gCnt = $GLOBALS['injector']->getInstance('Ansel_Storage')
-                ->getScope()
+        $gCnt = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+                ->create()
                 ->countGalleries($GLOBALS['registry']->getAuth(),
                                  $perm, null,
                                  $this->_gallery, false);
@@ -134,8 +134,8 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
      */
     public function listImages($from = 0, $count = 0)
     {
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')
-            ->getScope()
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->listImages($this->_gallery->id, $from, $count);
     }
 
@@ -166,7 +166,7 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
             }
         }
 
-        $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->setImagesGallery($ids, $gallery->id);
+        $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->setImagesGallery($ids, $gallery->id);
         $this->_gallery->updateImageCount(count($ids), false);
         $gallery->updateImageCount(count($ids), true);
 
@@ -215,7 +215,7 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
         } catch (VFS_Exception $e) {}
 
         /* Delete from storage */
-        $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeImage($image->id);
+        $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeImage($image->id);
         if (!$isStack) {
             $this->_gallery->updateImageCount(1, false);
         }
@@ -262,8 +262,8 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
      */
     public function getImages($from = 0, $count = 0)
     {
-        $images = $GLOBALS['injector']->getInstance('Ansel_Storage')
-            ->getScope()
+        $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->getImages(array('gallery_id' => $this->_gallery->id,
                               'count' => $count,
                               'from' => $from));
@@ -295,8 +295,8 @@ class Ansel_GalleryMode_Normal extends Ansel_GalleryMode_Base
         if ($subgalleries && $this->hasSubGalleries()) {
             $count = $this->countImages(false);
             $galleries = $GLOBALS['injector']
-                ->getInstance('Ansel_Storage')
-                ->getScope()
+                ->getInstance('Ansel_Injector_Factory_Storage')
+                ->create()
                 ->listGalleries(array('parent' => $this->_gallery));
 
             foreach ($galleries as $galleryId => $gallery) {
index b221c22..f7ec8b0 100644 (file)
@@ -505,11 +505,11 @@ class Ansel_Image Implements Iterator
         /* Existing image, just save and exit */
         if ($this->id) {
             /* Save image details */
-            return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->saveImage($this);
+            return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->saveImage($this);
         }
 
         /* New image, need to save the image files */
-        $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->saveImage($this);
+        $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->saveImage($this);
 
         /* The EXIF functions require a stream, so we need to save before we read */
         $this->_writeData();
@@ -538,7 +538,7 @@ class Ansel_Image Implements Iterator
 
         /* Save again if EXIF changed any values */
         if (!empty($needUpdate)) {
-            $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->saveImage($this);
+            $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->saveImage($this);
         }
 
         return $this->id;
@@ -655,7 +655,7 @@ class Ansel_Image Implements Iterator
 
         /* Save attributes. */
         foreach ($exif_fields as $name => $value) {
-            $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->saveImageAttribute($this->id, $name, $value);
+            $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->saveImageAttribute($this->id, $name, $value);
             $this->_exif[$name] = Horde_Image_Exif::getHumanReadable($name, $value);
         }
 
@@ -754,7 +754,7 @@ class Ansel_Image Implements Iterator
 
             if ($view == 'all' || $view == 'prettythumb') {
                 $styles = Horde::loadConfiguration('styles.php', 'styles', 'ansel');
-                $hashes = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getHashes();
+                $hashes = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getHashes();
                 foreach ($hashes as $hash)
                 {
                     $GLOBALS['injector']->getInstance('Horde_Core_Factory_Vfs')
@@ -816,7 +816,7 @@ class Ansel_Image Implements Iterator
     {
         if ($view == 'full' && !$this->_dirty) {
             // Check full photo permissions
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->gallery);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->gallery);
             if ($gallery instanceof PEAR_Error) {
                 throw new Ansel_Exception($gallery);
             }
@@ -1093,7 +1093,7 @@ class Ansel_Image Implements Iterator
         if (count($this->_tags)) {
             return $this->_tags;
         }
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->gallery);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->gallery);
         if ($gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::READ)) {
             return $GLOBALS['injector']->getInstance('Ansel_Tagger')->getTags($this->id, 'image');
         } else {
@@ -1111,7 +1111,7 @@ class Ansel_Image Implements Iterator
      */
     public function setTags($tags)
     {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(abs($this->gallery));
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(abs($this->gallery));
         if ($gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
             // Clear the local cache.
             $this->_tags = array();
@@ -1174,7 +1174,7 @@ class Ansel_Image Implements Iterator
         }
 
         if (is_null($style)) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(abs($this->gallery));
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(abs($this->gallery));
             $style = $gallery->getStyle();
         }
         $view = md5($style->thumbstyle . '.' . $style->background);
@@ -1192,7 +1192,7 @@ class Ansel_Image Implements Iterator
      */
     public function getAttributes($format = false)
     {
-        $attributes = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImageAttributes($this->id);
+        $attributes = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImageAttributes($this->id);
         $exif = Horde_Image_Exif::factory($GLOBALS['conf']['exif']['driver'], !empty($GLOBALS['conf']['exif']['params']) ? $GLOBALS['conf']['exif']['params'] : array());
         $fields = Horde_Image_Exif::getFields($exif);
         $output = array();
index 8e4f883..1c37515 100644 (file)
@@ -149,8 +149,8 @@ class Ansel_ImageGenerator
     protected function _getGalleryWithImages($parent)
     {
         $galleries = $GLOBALS['injector']
-            ->getInstance('Ansel_Storage')
-            ->getScope()
+            ->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->listGalleries(array('parent' => $parent, 'allLevels' => false));
 
         foreach ($galleries as $gallery) {
index 27a9b7f..2062a64 100644 (file)
@@ -29,7 +29,7 @@ class Ansel_ImageGenerator_PolaroidThumb extends Ansel_ImageGenerator
            (which will have a negative gallery_id). */
         if ($this->_image->gallery > 0) {
             if (is_null($this->_style)) {
-                $gal = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_image->gallery);
+                $gal = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_image->gallery);
                 $styleDef = $gal->getStyle();
             } else {
                 $styleDef = $this->_style;
index c60ce13..e7f7d1e 100644 (file)
@@ -29,7 +29,7 @@ class Ansel_ImageGenerator_RoundedThumb extends Ansel_ImageGenerator
          * (which will have a negative gallery_id). */
         if ($this->_image->gallery > 0) {
             if (is_null($this->_style)) {
-                $gal = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_image->gallery);
+                $gal = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_image->gallery);
                 $styleDef = $gal->getStyle();
             } else {
                 $styleDef = $this->_style;
index 6be90f9..95aed41 100644 (file)
@@ -29,7 +29,7 @@ class Ansel_ImageGenerator_ShadowThumb extends Ansel_ImageGenerator
          * (which will have a negative gallery_id). */
         if ($this->_image->gallery > 0) {
             if (is_null($this->_style)) {
-                $gal = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_image->gallery);
+                $gal = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_image->gallery);
                 $styleDef = $gal->getStyle();
             } else {
                 $styleDef = $this->_style;
diff --git a/ansel/lib/Injector/Binder/Faces.php b/ansel/lib/Injector/Binder/Faces.php
deleted file mode 100644 (file)
index 99d8be5..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
- * Binder for Ansel_Faces
- *
- * @author Michael J. Rubinsky <mrubinsk@horde.org>
- * @category Horde
- * @license  http://www.fsf.org/copyleft/gpl.html GPL
- * @package  Ansel
- */
-class Ansel_Injector_Binder_Faces Implements Horde_Injector_Binder
-{
-    public function create (Horde_Injector $injector)
-    {
-        $driver = $GLOBALS['conf']['faces']['driver'];
-        $params = $GLOBALS['conf']['faces'];
-        $class_name = 'Ansel_Faces_' . ucfirst($driver);
-
-        return new $class_name($params);
-    }
-
-    /**
-     */
-    public function equals(Horde_Injector_Binder $binder)
-    {
-        return false;
-    }
-}
\ No newline at end of file
diff --git a/ansel/lib/Injector/Binder/Storage.php b/ansel/lib/Injector/Binder/Storage.php
deleted file mode 100644 (file)
index fdb9632..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * Binder for Ansel_Storage
- *
- * @author Michael J. Rubinsky <mrubinsk@horde.org>
- * @category Horde
- * @license  http://www.fsf.org/copyleft/gpl.html GPL
- * @package  Ansel
- */
-class Ansel_Injector_Binder_Storage Implements Horde_Injector_Binder
-{
-    public function create(Horde_Injector $injector)
-    {
-        return new Ansel_Injector_Factory_Storage($injector);
-    }
-
-    /**
-     */
-    public function equals(Horde_Injector_Binder $binder)
-    {
-        return false;
-    }
-}
\ No newline at end of file
diff --git a/ansel/lib/Injector/Binder/Styles.php b/ansel/lib/Injector/Binder/Styles.php
deleted file mode 100644 (file)
index 9a8d20a..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-/**
- * Binder for getting list of all available pre-defined styles.
- *
- * @author Michael J. Rubinsky <mrubinsk@horde.org>
- * @category Horde
- * @license  http://www.fsf.org/copyleft/gpl.html GPL
- * @package  Ansel
- */
-class Ansel_Injector_Binder_Styles Implements Horde_Injector_Binder
-{
-    public function create (Horde_Injector $injector)
-    {
-        /* Brings in the $styles array in this scope only */
-        $styles = Horde::loadConfiguration('styles.php', 'styles', 'ansel');
-
-        /* No prettythumbs allowed at all by admin choice */
-        if (empty($GLOBALS['conf']['image']['prettythumbs'])) {
-            $test = $styles;
-            foreach ($test as $key => $style) {
-                if ($style['thumbstyle'] != 'Thumb') {
-                    unset($styles[$key]);
-                }
-            }
-        }
-
-        /* Check if the browser / server has png support */
-        if ($GLOBALS['browser']->hasQuirk('png_transparency') ||
-            $GLOBALS['conf']['image']['type'] != 'png') {
-
-            $test = $styles;
-            foreach ($test as $key => $style) {
-                if (!empty($style['requires_png'])) {
-                    if (!empty($style['fallback'])) {
-                        $styles[$key] = $styles[$style['fallback']];
-                    } else {
-                        unset($styles[$key]);
-                    }
-                }
-            }
-        }
-
-        return $styles;
-    }
-
-    /**
-     */
-    public function equals(Horde_Injector_Binder $binder)
-    {
-        return false;
-    }
-}
\ No newline at end of file
diff --git a/ansel/lib/Injector/Factory/Faces.php b/ansel/lib/Injector/Factory/Faces.php
new file mode 100644 (file)
index 0000000..513c676
--- /dev/null
@@ -0,0 +1,21 @@
+<?php
+/**
+ * Factory for Ansel_Faces
+ *
+ * @author Michael J. Rubinsky <mrubinsk@horde.org>
+ * @category Horde
+ * @license  http://www.fsf.org/copyleft/gpl.html GPL
+ * @package  Ansel
+ */
+class Ansel_Injector_Factory_Faces
+{
+    public function create (Horde_Injector $injector)
+    {
+        $driver = $GLOBALS['conf']['faces']['driver'];
+        $params = $GLOBALS['conf']['faces'];
+        $class_name = 'Ansel_Faces_' . ucfirst($driver);
+
+        return new $class_name($params);
+    }
+
+}
\ No newline at end of file
index a75893f..0b691be 100644 (file)
@@ -33,7 +33,7 @@ class Ansel_Injector_Factory_Storage
      *
      * @return Ansel_Storage
      */
-    public function getScope()
+    public function create()
     {
         $scope = $this->_injector->getInstance('Ansel_Config')->get('scope');
         if (empty($this->_instances[$scope])) {
diff --git a/ansel/lib/Injector/Factory/Styles.php b/ansel/lib/Injector/Factory/Styles.php
new file mode 100644 (file)
index 0000000..d4527cd
--- /dev/null
@@ -0,0 +1,46 @@
+<?php
+/**
+ * Factory for getting list of all available pre-defined styles.
+ *
+ * @author Michael J. Rubinsky <mrubinsk@horde.org>
+ * @category Horde
+ * @license  http://www.fsf.org/copyleft/gpl.html GPL
+ * @package  Ansel
+ */
+class Ansel_Injector_Factory_Styles
+{
+    public function create (Horde_Injector $injector)
+    {
+        /* Brings in the $styles array in this scope only */
+        $styles = Horde::loadConfiguration('styles.php', 'styles', 'ansel');
+
+        /* No prettythumbs allowed at all by admin choice */
+        if (empty($GLOBALS['conf']['image']['prettythumbs'])) {
+            $test = $styles;
+            foreach ($test as $key => $style) {
+                if ($style['thumbstyle'] != 'Thumb') {
+                    unset($styles[$key]);
+                }
+            }
+        }
+
+        /* Check if the browser / server has png support */
+        if ($GLOBALS['browser']->hasQuirk('png_transparency') ||
+            $GLOBALS['conf']['image']['type'] != 'png') {
+
+            $test = $styles;
+            foreach ($test as $key => $style) {
+                if (!empty($style['requires_png'])) {
+                    if (!empty($style['fallback'])) {
+                        $styles[$key] = $styles[$style['fallback']];
+                    } else {
+                        unset($styles[$key]);
+                    }
+                }
+            }
+        }
+
+        return $styles;
+    }
+
+}
\ No newline at end of file
index 483ea50..51ce0ae 100644 (file)
@@ -113,7 +113,7 @@ class Ansel_Search_Tag
         /* Instantiate the Gallery objects */
         $galleries = array();
         foreach ($gresults as $gallery) {
-            $galleries[] = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery);
+            $galleries[] = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery);
         }
 
         /* Do we need to get images? */
@@ -121,7 +121,7 @@ class Ansel_Search_Tag
         $count = $perpage - count($galleries);
         if ($count > 0) {
             $iresults = array_slice($this->_results['images'], $istart, $count);
-            $images = count($iresults) ? array_values($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImages(array('ids' => $iresults))) : array();
+            $images = count($iresults) ? array_values($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImages(array('ids' => $iresults))) : array();
             if (($conf['comments']['allow'] == 'all' || ($conf['comments']['allow'] == 'authenticated' && $GLOBALS['registry']->getAuth())) &&
                 $registry->hasMethod('forums/numMessagesBatch')) {
 
index 444e484..adb9d56 100644 (file)
@@ -884,7 +884,7 @@ class Ansel_Storage
             $image = $this->getImage($id);
             $gallery_id = abs($image->gallery);
             if (empty($galleries[$gallery_id])) {
-                $galleries[$gallery_id]['gallery'] = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+                $galleries[$gallery_id]['gallery'] = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
             }
 
             // Any authentication that needs to take place for any of the
index bd754bd..0efc8aa 100644 (file)
@@ -368,7 +368,7 @@ class Ansel_Tagger
     {
         $args = array('typeId' => 'image', 'limit' => 1);
         if ($ownerOnly) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
             $args['userId'] = $gallery->get('owner');
         }
 
@@ -383,7 +383,7 @@ class Ansel_Tagger
         }
 
         try {
-            $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImages(array('ids' => array_keys($ids)));
+            $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImages(array('ids' => array_keys($ids)));
         } catch (Horde_Exception_NotFound $e) {
             $images = array();
         }
index 56dfae6..93d05d5 100644 (file)
@@ -27,7 +27,7 @@ class Ansel_Tile_Image
     {
         global $conf, $registry;
 
-        $parent = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+        $parent = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
         if (is_null($style)) {
             $style = $parent->getStyle();
         }
index 0ef80ef..9aac1ee 100644 (file)
@@ -141,9 +141,9 @@ abstract class Ansel_View_Base
         // If we have a slug, use it.
         try {
             if (!empty($slug)) {
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($slug);
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleryBySlug($slug);
             } else {
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
             }
         } catch (Ansel_Exception $e) {
             throw new Horde_Exception_NotFound($e->getmessage());
index 3d986f3..c0640a9 100644 (file)
@@ -81,7 +81,7 @@ class Ansel_View_EmbeddedRenderer_GalleryLink extends Ansel_View_Gallery
                 $images[] = $gallery->getKeyImage($gallery_style);
             }
         }
-        $json = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImageJson($images, null, true, $thumbsize, true);
+        $json = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImageJson($images, null, true, $thumbsize, true);
 
         /* Some paths */
         $cssurl = Horde::url($GLOBALS['registry']->get('themesuri', 'ansel') . '/jsembed.css', true);
index 063d3fc..0c030f2 100644 (file)
@@ -76,8 +76,8 @@ class Ansel_View_EmbeddedRenderer_Mini extends Ansel_View_Gallery
                                            'count' => $count,
                                            'view_links' => true));
         } else {
-            $json = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImageJson($images, null, true, $thumbsize, true);
-            $json_full = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImageJson($images, null, true, 'screen', true);
+            $json = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImageJson($images, null, true, $thumbsize, true);
+            $json_full = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImageJson($images, null, true, 'screen', true);
         }
 
         /* Some paths */
index 8718361..3356f9f 100644 (file)
@@ -149,7 +149,7 @@ class Ansel_View_GalleryProperties
         // permissions to add to it.
         $parentId = $this->_params['gallery'];
         try {
-            $parent = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($parentId);
+            $parent = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($parentId);
         } catch (Ansel_Exception $e) {
             $GLOBALS['notification']->push($e->getMessage(), 'horde.error');
             Horde::url('view.php?view=List', true)->redirect();
@@ -182,7 +182,7 @@ class Ansel_View_GalleryProperties
         }
 
         try {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($this->_params['gallery']);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($this->_params['gallery']);
             $parent = $gallery->getParent();
             $this->_properties = array(
                 'name' => $gallery->get('name'),
@@ -255,10 +255,10 @@ class Ansel_View_GalleryProperties
             $gallery_parent = null;
         }
         if ($galleryId &&
-            ($exists = ($GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($galleryId)) === true)) {
+            ($exists = ($GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($galleryId)) === true)) {
 
             // Modifying an existing gallery.
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
             if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
                 $GLOBALS['notification']->push(sprintf(_("Access denied saving gallery \"%s\"."), $gallery->get('name')), 'horde.error');
             } else {
@@ -287,7 +287,7 @@ class Ansel_View_GalleryProperties
                 }
                 if ($gallery_parent != $old_parent_id) {
                     if (!is_null($gallery_parent)) {
-                        $new_parent = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_parent);
+                        $new_parent = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_parent);
                     } else {
                         $new_parent = null;
                     }
@@ -310,7 +310,7 @@ class Ansel_View_GalleryProperties
             // Is this a new subgallery?
             if ($gallery_parent) {
                 try {
-                    $parent = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_parent);
+                    $parent = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_parent);
                 } catch (Ansel_Exception $e) {
                     $GLOBALS['notification']->push($e->getMessage(), 'horde.error');
                     Horde::url(Ansel::getUrlFor('view', array('view' => 'List'), true))->redirect();
@@ -340,7 +340,7 @@ class Ansel_View_GalleryProperties
             $parent = (!empty($gallery_parent)) ? $gallery_parent : null;
 
             try {
-                $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->createGallery(
+                $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->createGallery(
                         array('name' => $gallery_name,
                               'desc' => $gallery_desc,
                               'tags' => explode(',', $gallery_tags),
@@ -369,7 +369,7 @@ class Ansel_View_GalleryProperties
 
         // Make sure that the style hash is recorded, ignoring non-styled thumbs
         if ($style->thumbstyle != 'Thumb') {
-            $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->ensureHash($gallery->getViewHash('prettythumb'));
+            $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->ensureHash($gallery->getViewHash('prettythumb'));
         }
 
         // Clear the OtherGalleries widget cache
index 7fe5cee..c7b73c4 100644 (file)
@@ -49,8 +49,8 @@ class Ansel_View_GalleryRenderer_Gallery extends Ansel_View_GalleryRenderer_Base
         if (empty($this->view->api)) {
             $option_edit = $this->view->gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT);
             $option_select = $option_delete = $this->view->gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::DELETE);
-            $option_move = ($option_delete && $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->countGalleries(Horde_Perms::EDIT));
-            $option_copy = ($option_edit && $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->countGalleries(Horde_Perms::EDIT));
+            $option_move = ($option_delete && $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->countGalleries(Horde_Perms::EDIT));
+            $option_copy = ($option_edit && $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->countGalleries(Horde_Perms::EDIT));
 
             /* See if we requested a show_actions change */
             if (Horde_Util::getFormData('actionID', '') == 'show_actions') {
index 5fba62d..b9820f7 100644 (file)
@@ -73,8 +73,8 @@ class Ansel_View_GalleryRenderer_GalleryLightbox extends Ansel_View_GalleryRende
                                                          Horde_Perms::EDIT);
             $option_select = $option_delete = $this->view->gallery->hasPermission(
                 $GLOBALS['registry']->getAuth(), Horde_Perms::DELETE);
-            $option_move = ($option_delete && $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->countGalleries(Horde_Perms::EDIT));
-            $option_copy = ($option_edit && $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->countGalleries(Horde_Perms::EDIT));
+            $option_move = ($option_delete && $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->countGalleries(Horde_Perms::EDIT));
+            $option_copy = ($option_edit && $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->countGalleries(Horde_Perms::EDIT));
             /* See if we requested a show_actions change (fallback for non-js) */
             if (Horde_Util::getFormData('actionID', '') == 'show_actions') {
                 $prefs->setValue('show_actions', (int)!$prefs->getValue('show_actions'));
index 3aecaaf..8043513 100644 (file)
@@ -32,7 +32,7 @@ class Ansel_View_Image extends Ansel_View_Base
         parent::__construct($params);
 
         /* Get the Ansel_Image */
-        $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($params['image_id']);
+        $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($params['image_id']);
 
         /* Get the Ansel_Gallery */
         $this->gallery = $this->_getGallery();
index b7f3bde..0d0d66b 100644 (file)
@@ -52,7 +52,7 @@ class Ansel_View_List extends Ansel_View_Base
         $notification = $GLOBALS['injector']->getInstance('Horde_Notification');
 
         /* Ansel_Storage */
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
 
         // We'll need this in the template.
         $this->_sortBy = !empty($this->_params['sort']) ? $this->_params['sort'] : 'name';
index f257e53..d50c8fb 100644 (file)
@@ -55,7 +55,7 @@ class Ansel_View_Results extends Ansel_View_Base
         global $prefs, $conf;
 
         $notification = $GLOBALS['injector']->getInstance('Horde_Notification');
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
 
         $this->_owner = Horde_Util::getFormData('owner', '');
         //@TODO: Inject the search object when we have more then just a tag search
@@ -226,7 +226,7 @@ class Ansel_View_Results extends Ansel_View_Base
         global $conf, $prefs;
 
         /* Ansel Storage*/
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
 
         // Get the slice of galleries/images to view on this page.
         $results = $this->_search->getSlice($this->_page, $this->_perPage);
index 038e187..ece2e0c 100644 (file)
@@ -166,7 +166,7 @@ EOT;
                 $cnt = count($image_ids);
                 for ($i = 0; $i < $conf['image']['autogen'] && $cnt > $i; $i++) {
                     $image_id = $image_ids[$i];
-                    $image = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
+                    $image = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
                     $image->createView('screen');
                     $image->createView('thumb');
                     $image->createView('mini');
index d93ca86..cb5c3e4 100644 (file)
@@ -69,7 +69,7 @@ class Ansel_Widget_Geotag extends Ansel_Widget_Base
      */
     public function html()
     {
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
         $geodata = $ansel_storage->getImagesGeodata($this->_params['images']);
         $url = Horde::url('map_edit.php', true);
         $rtext = _("Relocate this image");
@@ -260,7 +260,7 @@ EOT;
      */
     protected function _getGalleryImagesWithGeodata()
     {
-        return $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImagesGeodata(array(), $this->_view->gallery->id);
+        return $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImagesGeodata(array(), $this->_view->gallery->id);
     }
 
     /**
index 880ebf6..4d0b109 100644 (file)
@@ -67,8 +67,8 @@ class Ansel_Widget_OtherGalleries extends Ansel_Widget_Base
         $tree = $GLOBALS['injector']->getInstance('Horde_Core_Factory_Tree')->create('otherAnselGalleries_' . md5($owner), 'Javascript', array('class' => 'anselWidgets'));
 
         try {
-            $galleries = $GLOBALS['injector']->getInstance('Ansel_Storage')
-                    ->getScope()
+            $galleries = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+                    ->create()
                     ->listGalleries(array('filter' => $owner));
         } catch (Ansel_Exception $e) {
             Horde::logMessage($e, 'ERR');
index 5ac5408..7bcb64f 100755 (executable)
@@ -49,7 +49,7 @@ class Ansel_Widget_SimilarPhotos extends Ansel_Widget_Base
      */
     public function _getRelatedImages()
     {
-        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope();
+        $ansel_storage = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create();
 
         $html = '';
         $args = array('typeId' => 'image',
@@ -60,7 +60,7 @@ class Ansel_Widget_SimilarPhotos extends Ansel_Widget_Base
             $i = 0;
             foreach ($results as $result) {
                 $img = $result['image'];
-                $rGal = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($img->gallery);
+                $rGal = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($img->gallery);
                 if ($rGal->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::READ))
                 $html .= Ansel::getUrlFor(
                         'view',
index 855bb99..6ad31de 100644 (file)
@@ -22,8 +22,8 @@ $image_id = Horde_Util::getFormData('image');
 if (empty($image_id)) {
     throw new Ansel_Exception(_("An error has occured retrieving the image. Details have been logged."));
 }
-$image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id);
-$gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($image->gallery);
+$image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id);
+$gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($image->gallery);
 if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
     throw new Horde_Exception_PermissionDenied(_("Not Authorized. Details have been logged for the server administrator."));
 }
@@ -72,7 +72,7 @@ $gtUrl = $gt->getUrl();
 $loadingImg = Horde::img('loading.gif', _("Loading..."));
 
 /* Obtain other geotagged images to possibly locate this image at */
-$imgs = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImagesGeodata($GLOBALS['registry']->getAuth());
+$imgs = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImagesGeodata($GLOBALS['registry']->getAuth());
 if (count($imgs) > 0) {
     $other_images = '<div class="ansel_location_sameas">' . _("Click on a thumbnail to locate at the same point.") . '<br />';
     foreach ($imgs as $id => $data) {
index 5ea772f..6baf30b 100644 (file)
@@ -27,13 +27,13 @@ $actionID = Horde_Util::getFormData('actionID', 'edit');
 switch ($actionID) {
 case 'edit':
     try {
-        $share = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(Horde_Util::getFormData('cid'));
+        $share = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(Horde_Util::getFormData('cid'));
         $form = 'edit.inc';
         $perm = &$share->getPermission();
     } catch (Horde_Share_Exception $e) {
         if (($share_name = Horde_Util::getFormData('share')) !== null) {
             try {
-                $share = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->shares->getShare($share_name);
+                $share = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->shares->getShare($share_name);
                 $form = 'edit.inc';
                 $perm = $share->getPermission();
             } catch (Horde_Share_Exception $e) {
@@ -51,7 +51,7 @@ case 'edit':
 case 'editform':
 case 'editforminherit':
     try {
-        $share = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(Horde_Util::getFormData('cid'));
+        $share = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(Horde_Util::getFormData('cid'));
     } catch (Horde_Share_Exception $e) {
         $notification->push(_("Attempt to edit a non-existent share."), 'horde.error');
     }
@@ -251,8 +251,8 @@ if (empty($share)) {
     $title = _("Edit Permissions");
 } else {
     $children = $GLOBALS['injector']
-        ->getInstance('Ansel_Storage')
-        ->getScope()
+        ->getInstance('Ansel_Injector_Factory_Storage')
+        ->create()
         ->listGalleries(array('perm' => Horde_Perms::READ,
                               'parent' => $share));
     $title = sprintf(_("Edit Permissions for %s"), $share->get('name'));
index 7356b2b..5e52825 100644 (file)
@@ -13,8 +13,8 @@ Horde_Registry::appInit('ansel');
 
 $imageId = Horde_Util::getFormData('image');
 try {
-    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($imageId);
-    $gal = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery(abs($image->gallery));
+    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($imageId);
+    $gal = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery(abs($image->gallery));
     $img = Ansel::getImageUrl($imageId, 'thumb', false);
 } catch (Ansel_Exception $e) {
     Horde::logMessage($e->getMessage(), 'ERR');
index 09eab39..c7128e5 100644 (file)
@@ -13,7 +13,7 @@ Horde_Registry::appInit('ansel');
 
 $vars = Horde_Variables::getDefaultVariables();
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($vars->get('gallery'));
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($vars->get('gallery'));
 } catch (Ansel_Exception $e) {
     $notification->push($e->getMessage());
     Horde::url('list.php')->redirect();
index 495dc09..0a1a338 100644 (file)
@@ -17,7 +17,7 @@ Horde_Registry::appInit('ansel');
 $title = _("Do you really want to report this gallery?");
 $gallery_id = (int)Horde_Util::getFormData('gallery');
 try {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
 } catch (Ansel_Exception $e) {
     $notification->push($gallery->getMessage());
     Horde::url('view.php?view=List', true)->redirect();
index 4008a51..22d2d92 100644 (file)
@@ -41,7 +41,7 @@ if (empty($rss)) {
     switch ($stream_type) {
     case 'all':
         try {
-            $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImages();
+            $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImages();
         } catch (Ansel_Exception $e) {
             $images = array();
         }
@@ -73,23 +73,23 @@ if (empty($rss)) {
         // Retrieve latest from specified gallery
         // Try a slug first.
         if ($slug) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGalleryBySlug($slug);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGalleryBySlug($slug);
         } elseif (is_numeric($id)) {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($id);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($id);
         }
         if ($gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::SHOW) &&
             !$gallery->hasPasswd() && $gallery->isOldEnough()) {
 
             if (!$gallery->countImages() && $gallery->hasSubGalleries()) {
                 $subgalleries = $GLOBALS['injector']
-                    ->getInstance('Ansel_Storage')
-                    ->getScope()
+                    ->getInstance('Ansel_Injector_Factory_Storage')
+                    ->create()
                     ->listGalleries(array('parent' => $gallery));
                 $subs = array();
                 foreach ($subgalleries as $subgallery) {
                     $subs[] = $subgallery->id;
                 }
-                $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getRecentImages($subs);
+                $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getRecentImages($subs);
             } else {
                 $images = $gallery->getRecentImages();
                 $owner = $gallery->getIdentity();
@@ -104,7 +104,7 @@ if (empty($rss)) {
                                         array('view' => 'Gallery',
                                               'gallery' => $id),
                                         true);
-            $img = &$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($gallery->getKeyImage(Ansel::getStyleDefinition('ansel_default')));
+            $img = &$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($gallery->getKeyImage(Ansel::getStyleDefinition('ansel_default')));
             $params = array('last_modified' => $gallery->get('last_modified'),
                             'name' => sprintf(_("%s on %s"),
                                               $gallery->get('name'),
@@ -125,8 +125,8 @@ if (empty($rss)) {
         $galleries = array();
         try {
             $shares = $GLOBALS['injector']
-                ->getInstance('Ansel_Storage')
-                ->getScope()
+                ->getInstance('Ansel_Injector_Factory_Storage')
+                ->create()
                 ->listGalleries(array('filter' => $id));
             foreach ($shares as $gallery) {
                 if ($gallery->isOldEnough() && !$gallery->hasPasswd()) {
@@ -140,8 +140,8 @@ if (empty($rss)) {
         if (isset($galleries) && count($galleries)) {
             try {
                 $images = $GLOBALS['injector']
-                    ->getInstance('Ansel_Storage')
-                    ->getScope()
+                    ->getInstance('Ansel_Injector_Factory_Storage')
+                    ->create()
                     ->getRecentImages($galleries);
             } catch (Ansel_Exception $e) {
                  Horde::logMessage($e->getMessage(), 'ERR');
@@ -180,7 +180,7 @@ if (empty($rss)) {
         $images = $GLOBALS['injector']->getInstance('Ansel_Tagger')->search(array($id), $filter);
 
         try {
-            $images = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImages(array('ids' => $images['images']));
+            $images = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImages(array('ids' => $images['images']));
         } catch (Ansel_Exception $e) {
              Horde::logMessage($e->getMessage(), 'ERR');
              $images = array();
@@ -214,7 +214,7 @@ if (empty($rss)) {
             $gallery_id = $images[$i]->gallery;
             if (empty($galleries[$gallery_id])) {
                 try {
-                    $galleries[$gallery_id]['gallery'] = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+                    $galleries[$gallery_id]['gallery'] = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
                 } catch (Ansel_Exception $e) {}
             }
             if (!isset($galleries[$gallery_id]['perm'])) {
index 2c38753..b6421b6 100755 (executable)
@@ -79,7 +79,7 @@ if ($results instanceof PEAR_Error) {
 $image_ids = $results->fetchAll(MDB2_FETCHMODE_ASSOC);
 $results->free();
 foreach (array_values($image_ids) as $image_id) {
-    $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($image_id['image_id']);
+    $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($image_id['image_id']);
     $results = $image->exifToTags($exif_fields);
     $cli->message(sprintf(_("Extracted exif fields from %s"), $image->filename), 'cli.success');
 }
index 84ba350..7ca27c0 100755 (executable)
@@ -102,12 +102,12 @@ if (!empty($username) && !empty($password)) {
 
 // Choose the gallery to add to (or use the created one).
 if (!empty($galleryId)) {
-    if (!$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($galleryId)) {
+    if (!$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($galleryId)) {
         $error = sprintf(_("Invalid gallery \"%s\" specified."), $galleryId);
         Horde::logMessage($error, 'WARN');
         $cli->fatal($error);
     } else {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
         if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
             $error = sprintf(_("Access denied adding photos to \"%s\"."), $galleryId);
             Horde::logMessage($error, 'WARN');
@@ -128,7 +128,7 @@ if (!empty($createGallery)) {
                         'desc' => $gallery_desc,
                         'owner' => $gallery_owner);
     try {
-        $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->createGallery($attributes, null, $parent);
+        $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->createGallery($attributes, null, $parent);
     } catch (Ansel_Exception $e) {
         $galleryId = null;
         $error = sprintf(_("The gallery \"%s\" couldn't be created: %s"),
@@ -150,11 +150,11 @@ if (!empty($list)) {
 
         $images = array_keys($images);
         foreach ($images as $id) {
-            $image = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getImage($id);
+            $image = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getImage($id);
             $cli->writeln(str_pad($image->filename, 30) . $image->getVFSPath() . '/' . $id);
         }
     } else {
-        $galleries = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->listGalleries();
+        $galleries = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->listGalleries();
         $cli->message(_("Listing Gallery/Name"), 'cli.success');
         $cli->writeln();
         foreach ($galleries as $id => $gallery) {
index 9e2b432..21a37b6 100755 (executable)
@@ -87,7 +87,7 @@ if (!empty($order) && $order != 'date' && $order != 'name' && $order != 'random'
 
 $gallery_id = processDirectory($dir);
 if (!$keepEmpties) {
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery_id);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery_id);
     emptyGalleryCheck($gallery);
 }
 exit;
@@ -101,22 +101,22 @@ function emptyGalleryCheck($gallery)
 {
     if ($gallery->hasSubGalleries()) {
         $children = $GLOBALS['injector']
-            ->getInstance('Ansel_Storage')
-            ->getScope()
+            ->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->listGalleries(array('parent' => $gallery));
         foreach ($children as $child) {
             // First check all children to see if they are empty...
             emptyGalleryCheck($child);
             if (!$child->countImages() && !$child->hasSubGalleries()) {
-                $result = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeGallery($child);
+                $result = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeGallery($child);
                 $GLOBALS['cli']->message(sprintf(_("Deleting empty gallery, \"%s\""), $child->get('name')), 'cli.success');
             }
 
             // Refresh the gallery values since we mucked around a bit with it
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery->getId());
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery->getId());
             // Now that any empty children are removed, see if we are empty
             if (!$gallery->countImages() && !$gallery->hasSubGalleries()) {
-                $result = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeGallery($gallery);
+                $result = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeGallery($gallery);
                 $GLOBALS['cli']->message(sprintf(_("Deleting empty gallery, \"%s\""), $gallery->get('name')), 'cli.success');
             }
         }
@@ -182,7 +182,7 @@ function processDirectory($dir, $parent = null)
     // Create a gallery for this directory level.
     $name = basename($dir);
     $cli->message(sprintf(_("Creating gallery: \"%s\""), $name), 'cli.message');
-    $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->createGallery(array('name' => $name), null, $parent);
+    $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->createGallery(array('name' => $name), null, $parent);
     $cli->message(sprintf(_("The gallery \"%s\" was created successfully."), $name), 'cli.success');
 
     // Read all the files into an array.
index fc37809..61e5bd3 100755 (executable)
@@ -115,22 +115,22 @@ function emptyGalleryCheck($gallery)
 {
     if ($gallery->hasSubGalleries()) {
         $children = $GLOBALS['injector']
-            ->getInstance('Ansel_Storage')
-            ->getScope()
+            ->getInstance('Ansel_Injector_Factory_Storage')
+            ->create()
             ->listGalleries(array('parent' => $gallery));
         foreach ($children as $child) {
             // First check all children to see if they are empty...
             emptyGalleryCheck($child);
             if (!$child->countImages() && !$child->hasSubGalleries()) {
-                $result = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeGallery($child);
+                $result = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeGallery($child);
                 $GLOBALS['cli']->message(sprintf(_("Deleting empty gallery, \"%s\""), $child->get('name')), 'cli.success');
             }
 
             // Refresh the gallery values since we mucked around a bit with it
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($gallery->getId());
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($gallery->getId());
             // Now that any empty children are removed, see if we are empty
             if (!$gallery->countImages() && !$gallery->hasSubGalleries()) {
-                $result = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->removeGallery($gallery);
+                $result = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->removeGallery($gallery);
                 $GLOBALS['cli']->message(sprintf(_("Deleting empty gallery, \"%s\""), $gallery->get('name')), 'cli.success');
             }
         }
index dbfd99a..48c0b1a 100644 (file)
@@ -1,5 +1,5 @@
 <h1 class="header">
- <?php $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+ <?php $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
        printf($actionID == 'delete' ? _("Really delete %s and all of its subgalleries?") : _("Really empty %s?"), htmlspecialchars($gallery->get('name')))
  ?>
 </h1>
index db4700f..786d0f1 100644 (file)
@@ -26,18 +26,18 @@ $link = Ansel::getUrlFor('view', array('groupby' => $groupby,
                                        'owner' => $group,
                                        'view' => 'List'))->link();
 
-$num_galleries = $GLOBALS['injector']->getInstance('Ansel_Storage')
-    ->getScope()
+$num_galleries = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')
+    ->create()
     ->countGalleries($GLOBALS['registry']->getAuth(), Horde_Perms::SHOW, $group, null, false);
 
 if ($num_galleries < 5) {
     $mini_galleries = $GLOBALS['injector']->
-        getInstance('Ansel_Storage')->
-        getScope()->listGalleries(array('filter' => $group, 'allLevels' => false));
+        getInstance('Ansel_Injector_Factory_Storage')->
+        create()->listGalleries(array('filter' => $group, 'allLevels' => false));
 } else {
     $mini_galleries = $GLOBALS['injector']
-        ->getInstance('Ansel_Storage')
-        ->getScope()
+        ->getInstance('Ansel_Injector_Factory_Storage')
+        ->create()
         ->listGalleries(array('filter' => $group,
                               'from' => rand(0, $num_galleries - 4),
                               'count' => 4));
index 2e74f5f..45e67a1 100644 (file)
@@ -79,11 +79,11 @@ if ($cmd == 'list') {
 
 // Check if a gallery was selected from the list.
 if ($cmd == 'select') {
-    if (!$galleryId || !$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($galleryId)) {
+    if (!$galleryId || !$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($galleryId)) {
         $error = _("Invalid gallery specified.") . "<br />\n";
     } else {
         try {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
             $error = false;
         } catch (Ansel_Exception $e) {
             $error = _("There was an error accessing the gallery");
@@ -114,7 +114,7 @@ if ($cmd == 'new') {
     if ($create) {
         /* Creating a new gallery. */
         try {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->createGallery(
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->createGallery(
                     array('name' => $gallery_name, 'desc' => $gallery_desc));
             $galleryId = $gallery->id;
             $msg = sprintf(_("The gallery \"%s\" was created successfully."), $gallery_name);
@@ -166,11 +166,11 @@ if ($cmd == 'add') {
     $galleryId = Horde_Util::getFormData('gallery');
     $name = isset($_FILES['imagefile']['name']) ? Horde_Util::dispelMagicQuotes($_FILES['imagefile']['name']) : null;
     $file = isset($_FILES['imagefile']['tmp_name']) ? $_FILES['imagefile']['tmp_name'] : null;
-    if (!$galleryId || !$GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->galleryExists($galleryId)) {
+    if (!$galleryId || !$GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->galleryExists($galleryId)) {
         $error = _("Invalid gallery specified.") . "<br />\n";
     } else {
         try {
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
             if (!$gallery->hasPermission($GLOBALS['registry']->getAuth(), Horde_Perms::EDIT)) {
                 $error = sprintf(_("Access denied adding photos to \"%s\"."), $gallery->get('name'));
             } else {
@@ -191,7 +191,7 @@ if ($cmd == 'add') {
                 $error = $e->getMessage();
             }
 
-            $gallery = $GLOBALS['injector']->getInstance('Ansel_Storage')->getScope()->getGallery($galleryId);
+            $gallery = $GLOBALS['injector']->getInstance('Ansel_Injector_Factory_Storage')->create()->getGallery($galleryId);
             try {
                 $image_id = $gallery->addImage($image);
                 $error = false;