Differential D20934 Diff 49950 src/applications/config/controller/issue/PhabricatorConfigIssueViewController.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/config/controller/issue/PhabricatorConfigIssueViewController.php
- This file was moved from src/applications/config/controller/PhabricatorConfigIssueViewController.php.
<?php | <?php | ||||
final class PhabricatorConfigIssueViewController | final class PhabricatorConfigIssueViewController | ||||
extends PhabricatorConfigController { | extends PhabricatorConfigController { | ||||
public function handleRequest(AphrontRequest $request) { | public function handleRequest(AphrontRequest $request) { | ||||
$viewer = $request->getViewer(); | $viewer = $request->getViewer(); | ||||
$issue_key = $request->getURIData('key'); | $issue_key = $request->getURIData('key'); | ||||
$engine = new PhabricatorSetupEngine(); | $engine = new PhabricatorSetupEngine(); | ||||
$response = $engine->execute(); | $response = $engine->execute(); | ||||
if ($response) { | if ($response) { | ||||
return $response; | return $response; | ||||
} | } | ||||
$issues = $engine->getIssues(); | $issues = $engine->getIssues(); | ||||
$nav = $this->buildSideNavView(); | |||||
$nav->selectFilter('issue/'); | |||||
if (empty($issues[$issue_key])) { | if (empty($issues[$issue_key])) { | ||||
$content = id(new PHUIInfoView()) | $content = id(new PHUIInfoView()) | ||||
->setSeverity(PHUIInfoView::SEVERITY_NOTICE) | ->setSeverity(PHUIInfoView::SEVERITY_NOTICE) | ||||
->setTitle(pht('Issue Resolved')) | ->setTitle(pht('Issue Resolved')) | ||||
->appendChild(pht('This setup issue has been resolved. ')) | ->appendChild(pht('This setup issue has been resolved. ')) | ||||
->appendChild( | ->appendChild( | ||||
phutil_tag( | phutil_tag( | ||||
'a', | 'a', | ||||
array( | array( | ||||
'href' => $this->getApplicationURI('issue/'), | 'href' => $this->getApplicationURI('issue/'), | ||||
), | ), | ||||
pht('Return to Open Issue List'))); | pht('Return to Open Issue List'))); | ||||
$title = pht('Resolved Issue'); | $title = pht('Resolved Issue'); | ||||
} else { | } else { | ||||
$issue = $issues[$issue_key]; | $issue = $issues[$issue_key]; | ||||
$content = $this->renderIssue($issue); | $content = $this->renderIssue($issue); | ||||
$title = $issue->getShortName(); | $title = $issue->getShortName(); | ||||
} | } | ||||
$header = $this->buildHeaderView($title); | |||||
$crumbs = $this | $crumbs = $this | ||||
->buildApplicationCrumbs() | ->buildApplicationCrumbs() | ||||
->setBorder(true) | |||||
->addTextCrumb(pht('Setup Issues'), $this->getApplicationURI('issue/')) | ->addTextCrumb(pht('Setup Issues'), $this->getApplicationURI('issue/')) | ||||
->addTextCrumb($title, $request->getRequestURI()) | ->addTextCrumb($title, $request->getRequestURI()) | ||||
->setBorder(true); | ->setBorder(true); | ||||
$launcher_view = id(new PHUILauncherView()) | |||||
->appendChild($content); | |||||
$content = id(new PHUITwoColumnView()) | $content = id(new PHUITwoColumnView()) | ||||
->setHeader($header) | ->setFooter($launcher_view); | ||||
->setFooter($content); | |||||
return $this->newPage() | return $this->newPage() | ||||
->setTitle($title) | ->setTitle($title) | ||||
->setCrumbs($crumbs) | ->setCrumbs($crumbs) | ||||
->setNavigation($nav) | |||||
->appendChild($content); | ->appendChild($content); | ||||
} | } | ||||
private function renderIssue(PhabricatorSetupIssue $issue) { | private function renderIssue(PhabricatorSetupIssue $issue) { | ||||
require_celerity_resource('setup-issue-css'); | require_celerity_resource('setup-issue-css'); | ||||
$view = new PhabricatorSetupIssueView(); | $view = new PhabricatorSetupIssueView(); | ||||
$view->setIssue($issue); | $view->setIssue($issue); | ||||
Show All 12 Lines |