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 · 74 lines
PHP
at commit e0faa667
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475<?php
final class DiffusionBranchTableController extends DiffusionController {
public function shouldAllowPublic() { return true; }
protected function processDiffusionRequest(AphrontRequest $request) { $drequest = $this->getDiffusionRequest(); $viewer = $request->getUser();
$repository = $drequest->getRepository();
$pager = new PHUIPagerView(); $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 PHUIObjectBoxView()) ->setHeaderText(pht('Branches')) ->setTable($view);
$content = $panel; }
$crumbs = $this->buildCrumbs( array( 'branches' => true, ));
return $this->buildApplicationPage( array( $crumbs, $content, $pager, ), array( 'title' => array( pht('Branches'), 'r'.$repository->getCallsign(), ), )); }
}