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

Repair using Typeahead Custom Fields in search interface

Summary:
Looks like rPfd9be992caed4ae1488dddd9bac33b8ea5d5c32e accidentally introduced a UI regression.

Co-authored by @mainframe98.

Closes T16328

Test Plan:
* In `/config/edit/maniphest.custom-field-definitions/`, define a field like `"train.backup": { "name": "Other Assignee", "edit": true, "view": true, "type": "users", "limit": 1, "copy": false, "fulltext": false, "search": true }`
* Go to http://phorge.localhost/maniphest/query/advanced/ and try to type in that field or click its magnifier button
* Go to http://phorge.localhost/typeahead/class/PhabricatorCustomFieldApplicationSearchDatasource/ and still get a 404 error as expected since D26131.

Reviewers: O1 Blessed Committers, mainframe98

Reviewed By: O1 Blessed Committers, mainframe98

Subscribers: mainframe98, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T16328

Differential Revision: https://we.phorge.it/D26480

+8 -7
+8 -7
src/applications/typeahead/controller/PhabricatorTypeaheadModularDatasourceController.php
··· 36 36 if (isset($sources[$class])) { 37 37 $source = $sources[$class]; 38 38 39 - // PhabricatorTypeaheadProxyDatasource requires another data source 40 - // to function as it is merely a proxy. This controller does not 41 - // support setting the target data source. 42 - if ($source instanceof PhabricatorTypeaheadProxyDatasource) { 43 - return new Aphront404Response(); 44 - } 45 - 46 39 $parameters = array(); 47 40 48 41 $raw_parameters = $request->getStr('parameters'); ··· 59 52 $ex->getMessage())) 60 53 ->addCancelButton('/'); 61 54 } 55 + } 56 + 57 + if (!$parameters && 58 + $source instanceof PhabricatorTypeaheadProxyDatasource) { 59 + // PhabricatorTypeaheadProxyDatasource requires another data source 60 + // to function as it is merely a proxy. If no parameters are given 61 + // return a 404 to prevent crawlers from filling up the error log. 62 + return new Aphront404Response(); 62 63 } 63 64 64 65 $source->setParameters($parameters);