コード例 #1
0
 private function buildSidebar(PonderQuestion $question)
 {
     $viewer = $this->getViewer();
     $status = $question->getStatus();
     $id = $question->getID();
     $questions = id(new PonderQuestionQuery())->setViewer($viewer)->withStatuses(array($status))->withEdgeLogicPHIDs(PhabricatorProjectObjectHasProjectEdgeType::EDGECONST, PhabricatorQueryConstraint::OPERATOR_OR, $question->getProjectPHIDs())->setLimit(10)->execute();
     $list = id(new PHUIObjectItemListView())->setUser($viewer)->setNoDataString(pht('No similar questions found.'));
     foreach ($questions as $question) {
         if ($id == $question->getID()) {
             continue;
         }
         $item = new PHUIObjectItemView();
         $item->setObjectName('Q' . $question->getID());
         $item->setHeader($question->getTitle());
         $item->setHref('/Q' . $question->getID());
         $item->setObject($question);
         $item->addAttribute(pht('%d Answer(s)', $question->getAnswerCount()));
         $list->addItem($item);
     }
     $box = id(new PHUIObjectBoxView())->setHeaderText(pht('Similar Questions'))->setObjectList($list);
     return $box;
 }