Changeset View
Changeset View
Standalone View
Standalone View
src/applications/project/query/PhabricatorProjectSearchEngine.php
| Show First 20 Lines • Show All 158 Lines • ▼ Show 20 Lines | protected function buildQueryFromParameters(array $map) { | ||||
| } | } | ||||
| protected function renderResultList( | protected function renderResultList( | ||||
| array $projects, | array $projects, | ||||
| PhabricatorSavedQuery $query, | PhabricatorSavedQuery $query, | ||||
| array $handles) { | array $handles) { | ||||
| assert_instances_of($projects, 'PhabricatorProject'); | assert_instances_of($projects, 'PhabricatorProject'); | ||||
| $viewer = $this->requireViewer(); | $viewer = $this->requireViewer(); | ||||
| $handles = $viewer->loadHandles(mpull($projects, 'getPHID')); | |||||
| $list = new PHUIObjectItemListView(); | |||||
| $list->setUser($viewer); | |||||
| $can_edit_projects = id(new PhabricatorPolicyFilter()) | |||||
| ->setViewer($viewer) | |||||
| ->requireCapabilities(array(PhabricatorPolicyCapability::CAN_EDIT)) | |||||
| ->apply($projects); | |||||
| foreach ($projects as $key => $project) { | |||||
| $id = $project->getID(); | |||||
| $tag_list = id(new PHUIHandleTagListView()) | |||||
| ->setSlim(true) | |||||
| ->setHandles(array($handles[$project->getPHID()])); | |||||
| $item = id(new PHUIObjectItemView()) | |||||
| ->setHeader($project->getName()) | |||||
| ->setHref($this->getApplicationURI("view/{$id}/")) | |||||
| ->setImageURI($project->getProfileImageURI()) | |||||
| ->addAttribute($tag_list); | |||||
| if ($project->getStatus() == PhabricatorProjectStatus::STATUS_ARCHIVED) { | |||||
| $item->addIcon('delete-grey', pht('Archived')); | |||||
| $item->setDisabled(true); | |||||
| } | |||||
| $list->addItem($item); | |||||
| } | |||||
| $result = new PhabricatorApplicationSearchResultView(); | |||||
| $result->setObjectList($list); | |||||
| $result->setNoDataString(pht('No projects found.')); | |||||
| return $result; | |||||
| $list = id(new PhabricatorProjectListView()) | |||||
| ->setUser($viewer) | |||||
| ->setProjects($projects) | |||||
| ->renderList(); | |||||
| return id(new PhabricatorApplicationSearchResultView()) | |||||
| ->setObjectList($list) | |||||
| ->setNoDataString(pht('No projects found.')); | |||||
| } | } | ||||
| protected function getNewUserBody() { | protected function getNewUserBody() { | ||||
| $create_button = id(new PHUIButtonView()) | $create_button = id(new PHUIButtonView()) | ||||
| ->setTag('a') | ->setTag('a') | ||||
| ->setText(pht('Create a Project')) | ->setText(pht('Create a Project')) | ||||
| ->setHref('/project/create/') | ->setHref('/project/create/') | ||||
| ->setColor(PHUIButtonView::GREEN); | ->setColor(PHUIButtonView::GREEN); | ||||
| Show All 15 Lines | |||||