]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/gallery.php
double-cache to get newer items
[quix0rs-gnu-social.git] / lib / gallery.php
index c6f1585b4bb77886ae198f764e9fcfc2e7858625..a478db25d50e7699ba34ee2b7fee12d842a6a159 100644 (file)
@@ -31,17 +31,22 @@ class GalleryAction extends Action {
 
        function handle($args) {
                parent::handle($args);
-               $nickname = $this->arg('nickname');
-               $profile = Profile::staticGet('nickname', $nickname);
-               if (!$profile) {
+               $nickname = common_canonical_nickname($this->arg('nickname'));
+
+               $user = User::staticGet('nickname', $nickname);
+
+               if (!$user) {
                        $this->no_such_user();
                        return;
                }
-               $user = User::staticGet($profile->id);
-               if (!$user) {
-                       $this->no_such_user();
+
+               $profile = $user->getProfile();
+
+               if (!$profile) {
+                       $this->server_error(_('User without matching profile in system.'));
                        return;
                }
+
                $page = $this->arg('page');
                if (!$page) {
                        $page = 1;
@@ -92,7 +97,13 @@ class GalleryAction extends Action {
                                break;
                        }
 
-                       $other = Profile::staticGet($this->get_other($subs));
+                       $other_id = $this->get_other($subs);
+                       $other = Profile::staticGet($other_id);
+
+                       if (!$other) {
+                               common_log(LOG_WARNING, 'No matching profile for ' . $other_id);
+                               continue;
+                       }
 
                        common_element_start('li');