@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
at upstream/main 35 lines 890 B view raw
1<?php 2 3final class PhabricatorSearchOrderController 4 extends PhabricatorSearchBaseController { 5 6 public function handleRequest(AphrontRequest $request) { 7 $viewer = $this->getViewer(); 8 $engine_class = $request->getURIData('engine'); 9 10 $request->validateCSRF(); 11 12 $base_class = 'PhabricatorApplicationSearchEngine'; 13 if (!is_subclass_of($engine_class, $base_class)) { 14 return new Aphront400Response(); 15 } 16 17 $engine = newv($engine_class, array()); 18 $engine->setViewer($viewer); 19 20 $queries = $engine->loadAllNamedQueries(); 21 $queries = mpull($queries, null, 'getQueryKey'); 22 23 $order = $request->getStrList('order'); 24 $queries = array_select_keys($queries, $order) + $queries; 25 26 $sequence = 1; 27 foreach ($queries as $query) { 28 $query->setSequence($sequence++); 29 $query->save(); 30 } 31 32 return id(new AphrontAjaxResponse()); 33 } 34 35}