Make Repositories partially policy-aware

Summary: Small step toward repository hosting. No user-visible changes.

Test Plan: Looked at repositories in Diffusion.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T603

Differential Revision: https://secure.phabricator.com/D4227
This commit is contained in:
epriestley
2012-12-19 11:07:06 -08:00
parent fcc5366eff
commit db89e23761
4 changed files with 124 additions and 6 deletions

View File

@@ -42,9 +42,10 @@ final class DiffusionHomeController extends DiffusionController {
$shortcut_panel = null;
}
$repository = new PhabricatorRepository();
$repositories = id(new PhabricatorRepositoryQuery())
->setViewer($user)
->execute();
$repositories = $repository->loadAll();
foreach ($repositories as $key => $repo) {
if (!$repo->isTracked()) {
unset($repositories[$key]);
@@ -56,11 +57,11 @@ final class DiffusionHomeController extends DiffusionController {
$commits = array();
if ($repository_ids) {
$summaries = queryfx_all(
$repository->establishConnection('r'),
id(new PhabricatorRepository())->establishConnection('r'),
'SELECT * FROM %T WHERE repositoryID IN (%Ld)',
PhabricatorRepository::TABLE_SUMMARY,
$repository_ids);
$summaries = ipull($summaries, null, 'repositoryID');
$summaries = ipull($summaries, null, 'repositoryID');
$commit_ids = array_filter(ipull($summaries, 'lastCommitID'));
if ($commit_ids) {