From ab01ef562e8e46758a85ec4a3d636183d7cb1e89 Mon Sep 17 00:00:00 2001 From: Nick Harper Date: Thu, 6 Sep 2012 20:38:19 -0700 Subject: [PATCH] Don't require working copy to generate URIs in owners tool Summary: Owners packages might include repositories that are no longer tracked (or checked out locally), and there's no reason why we need a working copy to generate a diffusion link. Instead of displaying a red error box, this diff allows the owners tool to render correctly. Test Plan: viewed /owners/view/all/ and /owners/package/395/ and verified no error box for not having a checkout of the repository. Reviewers: epriestley, vrana, wez Reviewed By: epriestley CC: aran, Korvin Differential Revision: https://secure.phabricator.com/D3452 --- .../controller/PhabricatorOwnersDetailController.php | 7 ++----- .../controller/PhabricatorOwnersListController.php | 11 ++++------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/applications/owners/controller/PhabricatorOwnersDetailController.php b/src/applications/owners/controller/PhabricatorOwnersDetailController.php index ea5ca844f9..e0992e99ad 100644 --- a/src/applications/owners/controller/PhabricatorOwnersDetailController.php +++ b/src/applications/owners/controller/PhabricatorOwnersDetailController.php @@ -98,13 +98,10 @@ final class PhabricatorOwnersDetailController $path_links = array(); foreach ($paths as $path) { $repo = $repositories[$path->getRepositoryPHID()]; - $drequest = DiffusionRequest::newFromDictionary( + $href = DiffusionRequest::generateDiffusionURI( array( - 'repository' => $repo, + 'callsign' => $repo->getCallsign(), 'path' => $path->getPath(), - )); - $href = $drequest->generateURI( - array( 'action' => 'browse' )); $repo_name = ''.phutil_escape_html($repo->getName()). diff --git a/src/applications/owners/controller/PhabricatorOwnersListController.php b/src/applications/owners/controller/PhabricatorOwnersListController.php index e4afc5061d..6ac24112c6 100644 --- a/src/applications/owners/controller/PhabricatorOwnersListController.php +++ b/src/applications/owners/controller/PhabricatorOwnersListController.php @@ -262,14 +262,11 @@ final class PhabricatorOwnersListController foreach ($pkg_paths as $key => $path) { $repo = $repositories[$path->getRepositoryPHID()]; if ($repo) { - $drequest = DiffusionRequest::newFromDictionary( + $href = DiffusionRequest::generateDiffusionURI( array( - 'repository' => $repo, - 'path' => $path->getPath(), - )); - $href = $drequest->generateURI( - array( - 'action' => 'browse', + 'callsign' => $repo->getCallsign(), + 'path' => $path->getPath(), + 'action' => 'browse', )); $pkg_paths[$key] = ''.phutil_escape_html($repo->getName()).' '.