Path: blob/master/src/applications/config/controller/issue/PhabricatorConfigIssueViewController.php
12261 views
<?php12final class PhabricatorConfigIssueViewController3extends PhabricatorConfigController {45public function handleRequest(AphrontRequest $request) {6$viewer = $request->getViewer();7$issue_key = $request->getURIData('key');89$engine = new PhabricatorSetupEngine();10$response = $engine->execute();11if ($response) {12return $response;13}14$issues = $engine->getIssues();1516if (empty($issues[$issue_key])) {17$content = id(new PHUIInfoView())18->setSeverity(PHUIInfoView::SEVERITY_NOTICE)19->setTitle(pht('Issue Resolved'))20->appendChild(pht('This setup issue has been resolved. '))21->appendChild(22phutil_tag(23'a',24array(25'href' => $this->getApplicationURI('issue/'),26),27pht('Return to Open Issue List')));28$title = pht('Resolved Issue');29} else {30$issue = $issues[$issue_key];31$content = $this->renderIssue($issue);32$title = $issue->getShortName();33}3435$crumbs = $this36->buildApplicationCrumbs()37->addTextCrumb(pht('Setup Issues'), $this->getApplicationURI('issue/'))38->addTextCrumb($title, $request->getRequestURI())39->setBorder(true);4041$launcher_view = id(new PHUILauncherView())42->appendChild($content);4344$content = id(new PHUITwoColumnView())45->setFooter($launcher_view);4647return $this->newPage()48->setTitle($title)49->setCrumbs($crumbs)50->appendChild($content);51}5253private function renderIssue(PhabricatorSetupIssue $issue) {54require_celerity_resource('setup-issue-css');5556$view = new PhabricatorSetupIssueView();57$view->setIssue($issue);5859$container = phutil_tag(60'div',61array(62'class' => 'setup-issue-background',63),64$view->render());6566return $container;67}6869}707172