Something went wrong. Try again.
@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
Something went wrong. Try again.
1.9 kB · 75 lines
PHP
at commit dcd7a316
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576<?php
final class DiffusionBranchTableController extends DiffusionController {
public function shouldAllowPublic() { return true; }
public function processRequest() { $drequest = $this->getDiffusionRequest(); $request = $this->getRequest(); $viewer = $request->getUser();
$repository = $drequest->getRepository();
$pager = new AphrontPagerView(); $pager->setURI($request->getRequestURI(), 'offset'); $pager->setOffset($request->getInt('offset'));
// TODO: Add support for branches that contain commit $branches = $this->callConduitWithDiffusionRequest( 'diffusion.branchquery', array( 'offset' => $pager->getOffset(), 'limit' => $pager->getPageSize() + 1 )); $branches = $pager->sliceResults($branches);
$branches = DiffusionRepositoryRef::loadAllFromDictionaries($branches);
$content = null; if (!$branches) { $content = $this->renderStatusMessage( pht('No Branches'), pht('This repository has no branches.')); } else { $commits = id(new DiffusionCommitQuery()) ->setViewer($viewer) ->withIdentifiers(mpull($branches, 'getCommitIdentifier')) ->withRepository($repository) ->execute();
$view = id(new DiffusionBranchTableView()) ->setUser($viewer) ->setBranches($branches) ->setCommits($commits) ->setDiffusionRequest($drequest);
$panel = id(new AphrontPanelView()) ->setNoBackground(true) ->appendChild($view) ->appendChild($pager);
$content = $panel; }
$crumbs = $this->buildCrumbs( array( 'branches' => true, ));
return $this->buildApplicationPage( array( $crumbs, $content, ), array( 'title' => array( pht('Branches'), 'r'.$repository->getCallsign(), ), )); }
}