Make PhabricatorActionListView logged-out user savvy
Summary: Fixes T2691. Now, all PhabricatorActionListViews in the codebase setObjectHref to $request->getRequestURI. This value is passed over to PhabricatorActionItems right before they are rendered. If a PhabricatorActionItem is a workflow and there is no user OR the user is logged out, we used this objectURI to construct a log in URI. Potentially added some undesirable behavior to aggressively setUser (and later setObjectURI) from within the List on Actions... This should be okay-ish unless there was a vision of actions having different user objects associated with them. I think this is a safe assumption. Test Plan: played around with a mock all logged out (Ref T2652) and it worked! Reviewers: epriestley Reviewed By: epriestley CC: aran, Korvin Maniphest Tasks: T2691 Differential Revision: https://secure.phabricator.com/D6416
This commit is contained in:
@@ -860,7 +860,8 @@ final class DiffusionCommitController extends DiffusionController {
|
||||
|
||||
$actions = id(new PhabricatorActionListView())
|
||||
->setUser($user)
|
||||
->setObject($commit);
|
||||
->setObject($commit)
|
||||
->setObjectURI($request->getRequestURI());
|
||||
|
||||
// TODO -- integrate permissions into whether or not this action is shown
|
||||
$uri = '/diffusion/'.$repository->getCallSign().'/commit/'.
|
||||
|
||||
Reference in New Issue
Block a user