@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
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Clean up Diffusion repository list

Summary: Simplify rendering of the repository list. For inactive repositories, mark them disabled.

Test Plan: {F57615}

Reviewers: btrahan, rockybean

Reviewed By: btrahan

CC: aran

Differential Revision: https://secure.phabricator.com/D6921

+40 -62
+36 -62
src/applications/diffusion/controller/DiffusionRepositoryListController.php
··· 31 31 32 32 $viewer = $this->getRequest()->getUser(); 33 33 34 - $rows = array(); 34 + $list = new PhabricatorObjectItemListView(); 35 35 foreach ($repositories as $repository) { 36 36 $id = $repository->getID(); 37 37 38 + $item = id(new PhabricatorObjectItemView()) 39 + ->setUser($viewer) 40 + ->setHeader($repository->getName()) 41 + ->setHref($this->getApplicationURI($repository->getCallsign().'/')); 42 + 43 + $commit = $repository->getMostRecentCommit(); 44 + if ($commit) { 45 + $commit_link = DiffusionView::linkCommit( 46 + $repository, 47 + $commit->getCommitIdentifier(), 48 + $commit->getSummary()); 49 + $item->setSubhead($commit_link); 50 + $item->setEpoch($commit->getEpoch()); 51 + } 52 + 53 + $item->addAttribute( 54 + PhabricatorRepositoryType::getNameForRepositoryType( 55 + $repository->getVersionControlSystem())); 56 + 38 57 $size = $repository->getCommitCount(); 39 58 if ($size) { 40 - $size = hsprintf( 41 - '<a href="%s">%s</a>', 42 - DiffusionRequest::generateDiffusionURI(array( 59 + $history_uri = DiffusionRequest::generateDiffusionURI( 60 + array( 43 61 'callsign' => $repository->getCallsign(), 44 62 'action' => 'history', 45 - )), 46 - pht('%s Commits', new PhutilNumber($size))); 47 - } 63 + )); 48 64 49 - $datetime = ''; 50 - $most_recent_commit = $repository->getMostRecentCommit(); 51 - if ($most_recent_commit) { 52 - $date = phabricator_date($most_recent_commit->getEpoch(), $viewer); 53 - $time = phabricator_time($most_recent_commit->getEpoch(), $viewer); 54 - $datetime = $date.' '.$time; 65 + $item->addAttribute( 66 + phutil_tag( 67 + 'a', 68 + array( 69 + 'href' => $history_uri, 70 + ), 71 + pht('%s Commit(s)', new PhutilNumber($size)))); 72 + } else { 73 + $item->addAttribute(pht('No Commits')); 55 74 } 56 75 57 - $rows[] = array( 58 - $repository->getName(), 59 - ('/diffusion/'.$repository->getCallsign().'/'), 60 - PhabricatorRepositoryType::getNameForRepositoryType( 61 - $repository->getVersionControlSystem()), 62 - $size ? $size : null, 63 - $most_recent_commit 64 - ? DiffusionView::linkCommit( 65 - $repository, 66 - $most_recent_commit->getCommitIdentifier(), 67 - $most_recent_commit->getSummary()) 68 - : pht('No Commits'), 69 - $datetime 70 - ); 71 - } 76 + if (!$repository->isTracked()) { 77 + $item->setDisabled(true); 78 + $item->addIcon('disable-grey', pht('Inactive')); 79 + } 72 80 73 - $repository_tool_uri = PhabricatorEnv::getProductionURI('/repository/'); 74 - $repository_tool = phutil_tag('a', 75 - array( 76 - 'href' => $repository_tool_uri, 77 - ), 78 - 'repository tool'); 79 - $preface = pht('This instance of Phabricator does not have any '. 80 - 'configured repositories.'); 81 - if ($viewer->getIsAdmin()) { 82 - $no_repositories_txt = hsprintf( 83 - '%s %s', 84 - $preface, 85 - pht( 86 - 'To setup one or more repositories, visit the %s.', 87 - $repository_tool)); 88 - } else { 89 - $no_repositories_txt = hsprintf( 90 - '%s %s', 91 - $preface, 92 - pht( 93 - 'Ask an administrator to setup one or more repositories '. 94 - 'via the %s.', 95 - $repository_tool)); 96 - } 97 - 98 - $list = new PHUIObjectItemListView(); 99 - foreach ($rows as $row) { 100 - $item = id(new PHUIObjectItemView()) 101 - ->setHeader($row[0]) 102 - ->setSubHead($row[4]) 103 - ->setHref($row[1]) 104 - ->addAttribute(($row[2] ? $row[2] : pht('No Information'))) 105 - ->addAttribute(($row[3] ? $row[3] : pht('0 Commits'))) 106 - ->addIcon('none', $row[5]); 107 81 $list->addItem($item); 108 82 } 109 83
+4
src/infrastructure/internationalization/PhabricatorBaseEnglishTranslation.php
··· 677 677 'Old (%s days)', 678 678 ), 679 679 680 + '%s Commit(s)' => array( 681 + '%s Commit', 682 + '%s Commits', 683 + ), 680 684 681 685 ); 682 686 }