public function handleRequest(AphrontRequest $request)
 {
     $viewer = $this->getViewer();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $query = id(new PhluxVariableQuery())->setViewer($viewer);
     $vars = $query->executeWithCursorPager($pager);
     $view = new PHUIObjectItemListView();
     $view->setFlush(true);
     foreach ($vars as $var) {
         $key = $var->getVariableKey();
         $item = new PHUIObjectItemView();
         $item->setHeader($key);
         $item->setHref($this->getApplicationURI('/view/' . $key . '/'));
         $item->addIcon('none', phabricator_datetime($var->getDateModified(), $viewer));
         $view->addItem($item);
     }
     $crumbs = $this->buildApplicationCrumbs();
     $box = id(new PHUIObjectBoxView())->setHeaderText('Variables')->setBackground(PHUIObjectBoxView::BLUE_PROPERTY)->appendChild($view);
     $title = pht('Variable List');
     $header = id(new PHUIHeaderView())->setHeader($title)->setHeaderIcon('fa-copy');
     $crumbs->addTextCrumb($title, $this->getApplicationURI());
     $crumbs->setBorder(true);
     $view = id(new PHUITwoColumnView())->setHeader($header)->setFooter(array($box, $pager));
     return $this->newPage()->setTitle($title)->setCrumbs($crumbs)->appendChild($view);
 }
 public function processRequest()
 {
     $request = $this->getRequest();
     $user = $request->getUser();
     $query = new PhabricatorPasteQuery();
     $query->setViewer($user);
     $nav = $this->buildSideNavView();
     $filter = $nav->selectFilter($this->filter, 'my');
     switch ($filter) {
         case 'my':
             $query->withAuthorPHIDs(array($user->getPHID()));
             $title = pht('My Pastes');
             $nodata = pht("You haven't created any Pastes yet.");
             break;
         case 'all':
             $title = pht('All Pastes');
             $nodata = pht("There are no Pastes yet.");
             break;
     }
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $pastes = $query->executeWithCursorPager($pager);
     $list = $this->buildPasteList($pastes);
     $list->setHeader($title);
     $list->setPager($pager);
     $list->setNoDataString($nodata);
     $nav->appendChild($list);
     return $this->buildApplicationPage($nav, array('title' => $title, 'device' => true));
 }
 public function processRequest()
 {
     $request = $this->getRequest();
     $viewer = $request->getUser();
     $conn_table = new PhabricatorConduitConnectionLog();
     $call_table = new PhabricatorConduitMethodCallLog();
     $conn_r = $call_table->establishConnection('r');
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $pager->setPageSize(500);
     $query = id(new PhabricatorConduitLogQuery())->setViewer($viewer);
     $methods = $request->getStrList('methods');
     if ($methods) {
         $query->withMethods($methods);
     }
     $calls = $query->executeWithCursorPager($pager);
     $conn_ids = array_filter(mpull($calls, 'getConnectionID'));
     $conns = array();
     if ($conn_ids) {
         $conns = $conn_table->loadAllWhere('id IN (%Ld)', $conn_ids);
     }
     $table = $this->renderCallTable($calls, $conns);
     $box = id(new PHUIObjectBoxView())->setHeaderText(pht('Call Logs'))->appendChild($table);
     $crumbs = $this->buildApplicationCrumbs();
     $crumbs->addTextCrumb(pht('Call Logs'));
     return $this->buildApplicationPage(array($crumbs, $box, $pager), array('title' => pht('Conduit Logs')));
 }
 public function processRequest()
 {
     $request = $this->getRequest();
     $user = $request->getUser();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $query = new PhabricatorPasteQuery();
     $query->setViewer($user);
     switch ($this->getFilter()) {
         case 'create':
         default:
             // if we successfully create a paste, we redirect to view it
             $created_paste_redirect = $this->processCreateRequest();
             if ($created_paste_redirect) {
                 return $created_paste_redirect;
             }
             $query->setLimit(10);
             $paste_list = $query->execute();
             $pager = null;
             break;
         case 'my':
             $query->withAuthorPHIDs(array($user->getPHID()));
             $paste_list = $query->executeWithCursorPager($pager);
             break;
         case 'all':
             $paste_list = $query->executeWithCursorPager($pager);
             break;
     }
     $side_nav = $this->buildSideNavView();
     $side_nav->selectFilter($this->getFilter());
     if ($this->getErrorView()) {
         $side_nav->appendChild($this->getErrorView());
     }
     switch ($this->getFilter()) {
         case 'create':
         default:
             $side_nav->appendChild($this->renderCreatePaste());
             $see_all = phutil_render_tag('a', array('href' => '/paste/filter/all'), 'See all Pastes');
             $header = "Recent Pastes";
             break;
         case 'my':
             $header = 'Your Pastes';
             break;
         case 'all':
             $header = 'All Pastes';
             break;
     }
     $this->loadHandles(mpull($paste_list, 'getAuthorPHID'));
     $list = $this->buildPasteList($paste_list);
     $list->setHeader($header);
     $list->setPager($pager);
     $side_nav->appendChild($list);
     return $this->buildApplicationPage($side_nav, array('title' => 'Paste', 'device' => true));
 }
 public function handleRequest(AphrontRequest $request)
 {
     $viewer = $this->getViewer();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $logs = id(new PhabricatorDaemonLogQuery())->setViewer($viewer)->setAllowStatusWrites(true)->executeWithCursorPager($pager);
     $daemon_table = id(new PhabricatorDaemonLogListView())->setViewer($viewer)->setDaemonLogs($logs);
     $box = id(new PHUIObjectBoxView())->setHeaderText(pht('All Daemons'))->setTable($daemon_table);
     $crumbs = $this->buildApplicationCrumbs();
     $crumbs->addTextCrumb(pht('All Daemons'));
     $nav = $this->buildSideNavView();
     $nav->selectFilter('log');
     $nav->setCrumbs($crumbs);
     $nav->appendChild($box);
     $nav->appendChild($pager);
     return $this->newPage()->setTitle(pht('All Daemons'))->appendChild($nav);
 }
 public function processRequest()
 {
     $request = $this->getRequest();
     $viewer = $request->getUser();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $logs = id(new PhabricatorDaemonLogQuery())->setViewer($viewer)->setAllowStatusWrites(true)->executeWithCursorPager($pager);
     $daemon_table = new PhabricatorDaemonLogListView();
     $daemon_table->setUser($request->getUser());
     $daemon_table->setDaemonLogs($logs);
     $crumbs = $this->buildApplicationCrumbs();
     $crumbs->addTextCrumb(pht('All Daemons'));
     $nav = $this->buildSideNavView();
     $nav->selectFilter('log');
     $nav->setCrumbs($crumbs);
     $nav->appendChild($daemon_table);
     $nav->appendChild($pager);
     return $this->buildApplicationPage($nav, array('title' => pht('All Daemons')));
 }
 public function handleRequest(AphrontRequest $request)
 {
     $viewer = $request->getViewer();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $query = id(new PhortuneProductQuery())->setViewer($viewer);
     $products = $query->executeWithCursorPager($pager);
     $title = pht('Product List');
     $crumbs = $this->buildApplicationCrumbs();
     $crumbs->addTextCrumb(pht('Products'), $this->getApplicationURI('product/'));
     $crumbs->addAction(id(new PHUIListItemView())->setName(pht('Create Product'))->setHref($this->getApplicationURI('product/edit/'))->setIcon('fa-plus-square'));
     $product_list = id(new PHUIObjectItemListView())->setUser($viewer)->setNoDataString(pht('No products.'));
     foreach ($products as $product) {
         $view_uri = $this->getApplicationURI('product/view/' . $product->getID() . '/');
         $price = $product->getPriceAsCurrency();
         $item = id(new PHUIObjectItemView())->setObjectName($product->getID())->setHeader($product->getProductName())->setHref($view_uri)->addAttribute($price->formatForDisplay());
         $product_list->addItem($item);
     }
     return $this->buildApplicationPage(array($crumbs, $product_list, $pager), array('title' => $title));
 }
 public function handleRequest(AphrontRequest $request)
 {
     $viewer = $this->getViewer();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $query = id(new PhluxVariableQuery())->setViewer($viewer);
     $vars = $query->executeWithCursorPager($pager);
     $view = new PHUIObjectItemListView();
     foreach ($vars as $var) {
         $key = $var->getVariableKey();
         $item = new PHUIObjectItemView();
         $item->setHeader($key);
         $item->setHref($this->getApplicationURI('/view/' . $key . '/'));
         $item->addIcon('none', phabricator_datetime($var->getDateModified(), $viewer));
         $view->addItem($item);
     }
     $crumbs = $this->buildApplicationCrumbs();
     $title = pht('Variable List');
     $crumbs->addTextCrumb($title, $this->getApplicationURI());
     return $this->buildApplicationPage(array($crumbs, $view, $pager), array('title' => $title));
 }
 public function handleRequest(AphrontRequest $request)
 {
     $viewer = $request->getViewer();
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $query = id(new PhortuneProductQuery())->setViewer($viewer);
     $products = $query->executeWithCursorPager($pager);
     $title = pht('Product List');
     $crumbs = $this->buildApplicationCrumbs();
     $crumbs->addTextCrumb(pht('Products'), $this->getApplicationURI('product/'));
     $crumbs->addAction(id(new PHUIListItemView())->setName(pht('Create Product'))->setHref($this->getApplicationURI('product/edit/'))->setIcon('fa-plus-square'));
     $crumbs->setBorder(true);
     $product_list = id(new PHUIObjectItemListView())->setUser($viewer)->setNoDataString(pht('No products.'));
     foreach ($products as $product) {
         $view_uri = $this->getApplicationURI('product/view/' . $product->getID() . '/');
         $price = $product->getPriceAsCurrency();
         $item = id(new PHUIObjectItemView())->setObjectName($product->getID())->setHeader($product->getProductName())->setHref($view_uri)->addAttribute($price->formatForDisplay())->setIcon('fa-gift');
         $product_list->addItem($item);
     }
     $box = id(new PHUIObjectBoxView())->setHeaderText(pht('Products'))->setBackground(PHUIObjectBoxView::BLUE_PROPERTY)->setObjectList($product_list);
     $header = id(new PHUIHeaderView())->setHeader(pht('Products'))->setHeaderIcon('fa-gift');
     $view = id(new PHUITwoColumnView())->setHeader($header)->setFooter(array($box, $pager));
     return $this->newPage()->setTitle($title)->setCrumbs($crumbs)->appendChild($view);
 }
 private function buildFeedView(array $phids)
 {
     $request = $this->getRequest();
     $user = $request->getUser();
     $user_phid = $user->getPHID();
     $feed_query = new PhabricatorFeedQuery();
     $feed_query->setViewer($user);
     if ($phids) {
         $feed_query->setFilterPHIDs($phids);
     }
     $pager = new AphrontCursorPagerView();
     $pager->readFromRequest($request);
     $pager->setPageSize(200);
     $feed = $feed_query->executeWithCursorPager($pager);
     $builder = new PhabricatorFeedBuilder($feed);
     $builder->setUser($user);
     $feed_view = $builder->buildView();
     return '<div style="padding: 1em 3em;">' . '<div style="margin: 0 1em;">' . '<h1 style="font-size: 18px; ' . 'border-bottom: 1px solid #aaaaaa; ' . 'padding: 0;">Feed</h1>' . '</div>' . $feed_view->render() . '<div class="phabricator-feed-frame">' . $pager->render() . '</div>' . '</div>';
 }