Changeset View
Changeset View
Standalone View
Standalone View
src/applications/audit/query/PhabricatorCommitSearchEngine.php
| Show First 20 Lines • Show All 215 Lines • ▼ Show 20 Lines | protected function renderResultList( | ||||
| array $commits, | array $commits, | ||||
| PhabricatorSavedQuery $query, | PhabricatorSavedQuery $query, | ||||
| array $handles) { | array $handles) { | ||||
| assert_instances_of($commits, 'PhabricatorRepositoryCommit'); | assert_instances_of($commits, 'PhabricatorRepositoryCommit'); | ||||
| $viewer = $this->requireViewer(); | $viewer = $this->requireViewer(); | ||||
| $bucket = $this->getResultBucket($query); | $bucket = $this->getResultBucket($query); | ||||
| $template = id(new PhabricatorAuditListView()) | $template = id(new DiffusionCommitGraphView()) | ||||
| ->setViewer($viewer) | ->setViewer($viewer); | ||||
| ->setShowDrafts(true); | |||||
| $views = array(); | $views = array(); | ||||
| if ($bucket) { | if ($bucket) { | ||||
| $bucket->setViewer($viewer); | $bucket->setViewer($viewer); | ||||
| try { | try { | ||||
| $groups = $bucket->newResultGroups($query, $commits); | $groups = $bucket->newResultGroups($query, $commits); | ||||
| foreach ($groups as $group) { | foreach ($groups as $group) { | ||||
| // Don't show groups in Dashboard Panels | // Don't show groups in Dashboard Panels | ||||
| if ($group->getObjects() || !$this->isPanelContext()) { | if ($group->getObjects() || !$this->isPanelContext()) { | ||||
| $views[] = id(clone $template) | $item_list = id(clone $template) | ||||
| ->setCommits($group->getObjects()) | |||||
| ->newObjectItemListView(); | |||||
| $views[] = $item_list | |||||
| ->setHeader($group->getName()) | ->setHeader($group->getName()) | ||||
| ->setNoDataString($group->getNoDataString()) | ->setNoDataString($group->getNoDataString()); | ||||
| ->setCommits($group->getObjects()); | |||||
| } | } | ||||
| } | } | ||||
| } catch (Exception $ex) { | } catch (Exception $ex) { | ||||
| $this->addError($ex->getMessage()); | $this->addError($ex->getMessage()); | ||||
| } | } | ||||
| } else { | |||||
| $views[] = id(clone $template) | |||||
| ->setCommits($commits) | |||||
| ->setNoDataString(pht('No commits found.')); | |||||
| } | } | ||||
| if (!$views) { | if (!$views) { | ||||
| $views[] = id(new PhabricatorAuditListView()) | $item_list = id(clone $template) | ||||
| ->setViewer($viewer) | ->setCommits($commits) | ||||
| ->setNoDataString(pht('No commits found.')); | ->newObjectItemListView(); | ||||
| } | |||||
| if (count($views) == 1) { | $views[] = $item_list | ||||
| $list = head($views)->buildList(); | ->setNoDataString(pht('No commits found.')); | ||||
| } else { | |||||
| $list = $views; | |||||
| } | } | ||||
| $result = new PhabricatorApplicationSearchResultView(); | return id(new PhabricatorApplicationSearchResultView()) | ||||
| $result->setContent($list); | ->setContent($views); | ||||
| return $result; | |||||
| } | } | ||||
| protected function getNewUserBody() { | protected function getNewUserBody() { | ||||
| $view = id(new PHUIBigInfoView()) | $view = id(new PHUIBigInfoView()) | ||||
| ->setIcon('fa-check-circle-o') | ->setIcon('fa-check-circle-o') | ||||
| ->setTitle(pht('Welcome to Audit')) | ->setTitle(pht('Welcome to Audit')) | ||||
| ->setDescription( | ->setDescription( | ||||
| pht('Post-commit code review and auditing. Audits you are assigned '. | pht('Post-commit code review and auditing. Audits you are assigned '. | ||||
| 'to will appear here.')); | 'to will appear here.')); | ||||
| return $view; | return $view; | ||||
| } | } | ||||
| } | } | ||||