Path: blob/master/src/applications/diffusion/controller/DiffusionCommitBranchesController.php
12242 views
<?php12final class DiffusionCommitBranchesController extends DiffusionController {34public function shouldAllowPublic() {5return true;6}78public function handleRequest(AphrontRequest $request) {9$response = $this->loadDiffusionContext();10if ($response) {11return $response;12}1314$drequest = $this->getDiffusionRequest();15$repository = $drequest->getRepository();1617$branch_limit = 10;18$branches = DiffusionRepositoryRef::loadAllFromDictionaries(19$this->callConduitWithDiffusionRequest(20'diffusion.branchquery',21array(22'contains' => $drequest->getCommit(),23'limit' => $branch_limit + 1,24'branch' => null,25)));2627$has_more_branches = (count($branches) > $branch_limit);28$branches = array_slice($branches, 0, $branch_limit);2930$branch_links = array();31foreach ($branches as $branch) {32$branch_links[] = phutil_tag(33'a',34array(35'href' => $drequest->generateURI(36array(37'action' => 'browse',38'branch' => $branch->getShortName(),39)),40),41$branch->getShortName());42}4344if ($has_more_branches) {45$branch_links[] = phutil_tag(46'a',47array(48'href' => $drequest->generateURI(49array(50'action' => 'branches',51)),52),53pht("More Branches\xE2\x80\xA6"));54}5556return id(new AphrontAjaxResponse())57->setContent($branch_links ? implode(', ', $branch_links) : pht('None'));58}59}606162