@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.

Add "Subscribers" to Maniphest application search

Summary: Fixes T3883. This is already supported in the query, expose it in the UI.

Test Plan: Ran some queries with and without subscribers.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T3883

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

+19 -1
+19 -1
src/applications/maniphest/query/ManiphestTaskSearchEngine.php
··· 20 20 'authorPHIDs', 21 21 $this->readUsersFromRequest($request, 'authors')); 22 22 23 + $saved->setParameter( 24 + 'subscriberPHIDs', 25 + $this->readUsersFromRequest($request, 'subscribers')); 26 + 23 27 $saved->setParameter('statuses', $request->getArr('statuses')); 24 28 $saved->setParameter('priorities', $request->getArr('priorities')); 25 29 $saved->setParameter('group', $request->getStr('group')); ··· 77 81 $author_phids = $saved->getParameter('authorPHIDs'); 78 82 if ($author_phids) { 79 83 $query->withAuthors($author_phids); 84 + } 85 + 86 + $subscriber_phids = $saved->getParameter('subscriberPHIDs'); 87 + if ($subscriber_phids) { 88 + $query->withSubscribers($subscriber_phids); 80 89 } 81 90 82 91 $with_unassigned = $saved->getParameter('withUnassigned'); ··· 184 193 $user_project_phids = $saved->getParameter( 185 194 'userProjectPHIDs', 186 195 array()); 196 + $subscriber_phids = $saved->getParameter('subscriberPHIDs', array()); 187 197 188 198 $all_phids = array_merge( 189 199 $assigned_phids, ··· 191 201 $all_project_phids, 192 202 $any_project_phids, 193 203 $exclude_project_phids, 194 - $user_project_phids); 204 + $user_project_phids, 205 + $subscriber_phids); 195 206 196 207 if ($all_phids) { 197 208 $handles = id(new PhabricatorHandleQuery()) ··· 210 221 $handles, 211 222 $exclude_project_phids); 212 223 $user_project_handles = array_select_keys($handles, $user_project_phids); 224 + $subscriber_handles = array_select_keys($handles, $subscriber_phids); 213 225 214 226 $with_unassigned = $saved->getParameter('withUnassigned'); 215 227 $with_no_projects = $saved->getParameter('withNoProject'); ··· 291 303 ->setName('authors') 292 304 ->setLabel(pht('Authors')) 293 305 ->setValue($author_handles)) 306 + ->appendChild( 307 + id(new AphrontFormTokenizerControl()) 308 + ->setDatasource('/typeahead/common/accounts/') 309 + ->setName('subscribers') 310 + ->setLabel(pht('Subscribers')) 311 + ->setValue($subscriber_handles)) 294 312 ->appendChild($status_control) 295 313 ->appendChild($priority_control) 296 314 ->appendChild(