]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/QnA/actions/qnashowquestion.php
Moved some FAVORITE handling from Activity plugin to Favorite
[quix0rs-gnu-social.git] / plugins / QnA / actions / qnashowquestion.php
index edea032b388486c98d0e689b5d003ac226ef2d17..cc8f98448aa1e259f4d14bb96aba31ad43999cd3 100644 (file)
@@ -61,7 +61,7 @@ class QnashowquestionAction extends ShownoticeAction
 
         $this->id = $this->trimmed('id');
 
-        $this->question = QnA_Question::staticGet('id', $this->id);
+        $this->question = QnA_Question::getKV('id', $this->id);
 
         if (empty($this->question)) {
             // TRANS: Client exception thrown trying to view a non-existing question.
@@ -76,7 +76,7 @@ class QnashowquestionAction extends ShownoticeAction
             throw new ClientException(_m('No such question notice.'), 404);
         }
 
-        $this->user = User::staticGet('id', $this->question->profile_id);
+        $this->user = User::getKV('id', $this->question->profile_id);
 
         if (empty($this->user)) {
             // TRANS: Client exception thrown trying to view a question of a non-existing user.
@@ -90,7 +90,11 @@ class QnashowquestionAction extends ShownoticeAction
             throw new ServerException(_m('User without a profile.'));
         }
 
-        $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE);
+        try {
+            $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE);
+        } catch (Exception $e) {
+            $this->avatar = null;
+        }
 
         return true;
     }
@@ -115,13 +119,7 @@ class QnashowquestionAction extends ShownoticeAction
         }
 
         if (count($answerIds) > 0) {
-            $notice = new Notice();
-            $notice->query(
-                sprintf(
-                    'SELECT notice.* FROM notice WHERE notice.id IN (%s)',
-                    implode(',', $answerIds)
-                )
-            );
+            $notice = Notice::multiGet('id', $answerIds);
 
             $nli = new NoticeList($notice, $this);
             $nli->show();