protected function renderResultList(array $questions, PhabricatorSavedQuery $query, array $handles)
 {
     assert_instances_of($questions, 'PonderQuestion');
     $viewer = $this->requireViewer();
     $view = id(new PHUIObjectItemListView())->setUser($viewer);
     foreach ($questions as $question) {
         $color = PonderQuestionStatus::getQuestionStatusTagColor($question->getStatus());
         $icon = PonderQuestionStatus::getQuestionStatusIcon($question->getStatus());
         $full_status = PonderQuestionStatus::getQuestionStatusFullName($question->getStatus());
         $item = new PHUIObjectItemView();
         $item->setObjectName('Q' . $question->getID());
         $item->setHeader($question->getTitle());
         $item->setHref('/Q' . $question->getID());
         $item->setObject($question);
         $item->setStatusIcon($icon . ' ' . $color, $full_status);
         $created_date = phabricator_date($question->getDateCreated(), $viewer);
         $item->addIcon('none', $created_date);
         $item->addByline(pht('Asked by %s', $handles[$question->getAuthorPHID()]->renderLink()));
         $item->addAttribute(pht('%d Answer(s)', $question->getAnswerCount()));
         $view->addItem($item);
     }
     $result = new PhabricatorApplicationSearchResultView();
     $result->setObjectList($view);
     $result->setNoDataString(pht('No questions found.'));
     return $result;
 }
 protected function renderResultList(array $questions, PhabricatorSavedQuery $query, array $handles)
 {
     assert_instances_of($questions, 'PonderQuestion');
     $viewer = $this->requireViewer();
     $proj_phids = array();
     foreach ($questions as $question) {
         foreach ($question->getProjectPHIDs() as $project_phid) {
             $proj_phids[] = $project_phid;
         }
     }
     $proj_handles = id(new PhabricatorHandleQuery())->setViewer($viewer)->withPHIDs($proj_phids)->execute();
     $view = id(new PHUIObjectItemListView())->setUser($viewer);
     foreach ($questions as $question) {
         $color = PonderQuestionStatus::getQuestionStatusTagColor($question->getStatus());
         $icon = PonderQuestionStatus::getQuestionStatusIcon($question->getStatus());
         $full_status = PonderQuestionStatus::getQuestionStatusFullName($question->getStatus());
         $item = new PHUIObjectItemView();
         $item->setObjectName('Q' . $question->getID());
         $item->setHeader($question->getTitle());
         $item->setHref('/Q' . $question->getID());
         $item->setObject($question);
         $item->setStatusIcon($icon . ' ' . $color, $full_status);
         $project_handles = array_select_keys($proj_handles, $question->getProjectPHIDs());
         $created_date = phabricator_date($question->getDateCreated(), $viewer);
         $item->addIcon('none', $created_date);
         $item->addByline(pht('Asked by %s', $handles[$question->getAuthorPHID()]->renderLink()));
         $item->addAttribute(pht('%s Answer(s)', new PhutilNumber($question->getAnswerCount())));
         if ($project_handles) {
             $item->addAttribute(id(new PHUIHandleTagListView())->setLimit(4)->setSlim(true)->setHandles($project_handles));
         }
         $view->addItem($item);
     }
     $result = new PhabricatorApplicationSearchResultView();
     $result->setObjectList($view);
     $result->setNoDataString(pht('No questions found.'));
     return $result;
 }
 public function getColor()
 {
     $old = $this->getOldValue();
     $new = $this->getNewValue();
     switch ($this->getTransactionType()) {
         case self::TYPE_TITLE:
         case self::TYPE_CONTENT:
         case self::TYPE_ANSWERWIKI:
             return PhabricatorTransactions::COLOR_BLUE;
         case self::TYPE_ANSWERS:
             return PhabricatorTransactions::COLOR_GREEN;
         case self::TYPE_STATUS:
             return PonderQuestionStatus::getQuestionStatusTagColor($new);
     }
 }
 protected function renderResultList(array $questions, PhabricatorSavedQuery $query, array $handles)
 {
     assert_instances_of($questions, 'PonderQuestion');
     $viewer = $this->requireViewer();
     $view = id(new PHUIObjectItemListView())->setUser($viewer);
     foreach ($questions as $question) {
         $item = new PHUIObjectItemView();
         $item->setObjectName('Q' . $question->getID());
         $item->setHeader($question->getTitle());
         $item->setHref('/Q' . $question->getID());
         $item->setObject($question);
         $item->setBarColor(PonderQuestionStatus::getQuestionStatusTagColor($question->getStatus()));
         $created_date = phabricator_date($question->getDateCreated(), $viewer);
         $item->addIcon('none', $created_date);
         $item->addByline(pht('Asked by %s', $handles[$question->getAuthorPHID()]->renderLink()));
         $item->addAttribute(pht('%d Answer(s)', $question->getAnswerCount()));
         $view->addItem($item);
     }
     return $view;
 }