[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/config/controller/ -> PhabricatorConfigIssueListController.php (source)

   1  <?php
   2  
   3  final class PhabricatorConfigIssueListController
   4    extends PhabricatorConfigController {
   5  
   6    public function processRequest() {
   7      $request = $this->getRequest();
   8      $user = $request->getUser();
   9  
  10      $nav = $this->buildSideNavView();
  11      $nav->selectFilter('issue/');
  12  
  13      $issues = PhabricatorSetupCheck::runAllChecks();
  14      PhabricatorSetupCheck::setOpenSetupIssueCount(
  15        PhabricatorSetupCheck::countUnignoredIssues($issues));
  16  
  17      $list = $this->buildIssueList($issues);
  18      $list->setNoDataString(pht('There are no open setup issues.'));
  19      $list->setStackable(true);
  20  
  21      $box = id(new PHUIObjectBoxView())
  22        ->setHeaderText(pht('Open Phabricator Setup Issues'))
  23        ->appendChild($list);
  24  
  25      $nav->appendChild(
  26        array(
  27          $box,
  28        ));
  29  
  30      $title = pht('Setup Issues');
  31  
  32      $crumbs = $this
  33        ->buildApplicationCrumbs($nav)
  34        ->addTextCrumb(pht('Setup'), $this->getApplicationURI('issue/'));
  35  
  36      $nav->setCrumbs($crumbs);
  37  
  38      return $this->buildApplicationPage(
  39        $nav,
  40        array(
  41          'title' => $title,
  42        ));
  43    }
  44  
  45    private function buildIssueList(array $issues) {
  46      assert_instances_of($issues, 'PhabricatorSetupIssue');
  47      $list = new PHUIObjectItemListView();
  48      $ignored_items = array();
  49  
  50      foreach ($issues as $issue) {
  51          $href = $this->getApplicationURI('/issue/'.$issue->getIssueKey().'/');
  52          $item = id(new PHUIObjectItemView())
  53            ->setHeader($issue->getName())
  54            ->setHref($href)
  55            ->addAttribute($issue->getSummary());
  56        if (!$issue->getIsIgnored()) {
  57          $item->setBarColor('yellow');
  58          $list->addItem($item);
  59        } else {
  60          $item->addIcon('fa-eye-slash', pht('Ignored'));
  61          $item->setDisabled(true);
  62          $item->setBarColor('none');
  63          $ignored_items[] = $item;
  64        }
  65      }
  66  
  67      foreach ($ignored_items as $item) {
  68        $list->addItem($item);
  69      }
  70  
  71      return $list;
  72    }
  73  
  74  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1