[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/paste/controller/ -> PhabricatorPasteController.php (source)

   1  <?php
   2  
   3  abstract class PhabricatorPasteController extends PhabricatorController {
   4  
   5    public function buildSideNavView($for_app = false) {
   6      $user = $this->getRequest()->getUser();
   7  
   8      $nav = new AphrontSideNavFilterView();
   9      $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
  10  
  11      if ($for_app) {
  12        $nav->addFilter('create', pht('Create Paste'));
  13      }
  14  
  15      id(new PhabricatorPasteSearchEngine())
  16        ->setViewer($user)
  17        ->addNavigationItems($nav->getMenu());
  18  
  19      $nav->selectFilter(null);
  20  
  21      return $nav;
  22    }
  23  
  24    public function buildApplicationMenu() {
  25      return $this->buildSideNavView(true)->getMenu();
  26    }
  27  
  28    public function buildApplicationCrumbs() {
  29      $crumbs = parent::buildApplicationCrumbs();
  30  
  31      $crumbs->addAction(
  32        id(new PHUIListItemView())
  33          ->setName(pht('Create Paste'))
  34          ->setHref($this->getApplicationURI('create/'))
  35          ->setIcon('fa-plus-square'));
  36  
  37      return $crumbs;
  38    }
  39  
  40    public function buildSourceCodeView(
  41      PhabricatorPaste $paste,
  42      $max_lines = null,
  43      $highlights = array()) {
  44  
  45      $lines = phutil_split_lines($paste->getContent());
  46  
  47      return id(new PhabricatorSourceCodeView())
  48        ->setLimit($max_lines)
  49        ->setLines($lines)
  50        ->setHighlights($highlights)
  51        ->setURI(new PhutilURI($paste->getURI()));
  52    }
  53  
  54  }


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