Differential D14889 Diff 35997 src/applications/search/engine/PhabricatorApplicationSearchEngine.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/search/engine/PhabricatorApplicationSearchEngine.php
Show First 20 Lines • Show All 1,075 Lines • ▼ Show 20 Lines | public function getSearchFieldsForConduit() { | ||||
$viewer = $this->requireViewer(); | $viewer = $this->requireViewer(); | ||||
foreach ($fields as $key => $field) { | foreach ($fields as $key => $field) { | ||||
$field->setViewer($viewer); | $field->setViewer($viewer); | ||||
} | } | ||||
return $fields; | return $fields; | ||||
} | } | ||||
public function buildConduitResponse(ConduitAPIRequest $request) { | public function buildConduitResponse( | ||||
ConduitAPIRequest $request, | |||||
ConduitAPIMethod $method) { | |||||
$viewer = $this->requireViewer(); | $viewer = $this->requireViewer(); | ||||
$query_key = $request->getValue('queryKey'); | $query_key = $request->getValue('queryKey'); | ||||
if (!strlen($query_key)) { | if (!strlen($query_key)) { | ||||
$saved_query = new PhabricatorSavedQuery(); | $saved_query = new PhabricatorSavedQuery(); | ||||
} else if ($this->isBuiltinQuery($query_key)) { | } else if ($this->isBuiltinQuery($query_key)) { | ||||
$saved_query = $this->buildSavedQueryFromBuiltin($query_key); | $saved_query = $this->buildSavedQueryFromBuiltin($query_key); | ||||
} else { | } else { | ||||
▲ Show 20 Lines • Show All 74 Lines • ▼ Show 20 Lines | if ($objects) { | ||||
$attachment_map = array(); | $attachment_map = array(); | ||||
foreach ($attachments as $key => $attachment) { | foreach ($attachments as $key => $attachment) { | ||||
$attachment_map[$key] = $attachment->getAttachmentForObject( | $attachment_map[$key] = $attachment->getAttachmentForObject( | ||||
$object, | $object, | ||||
$attachment_data[$key], | $attachment_data[$key], | ||||
$attachment_specs[$key]); | $attachment_specs[$key]); | ||||
} | } | ||||
// If this is empty, we still want to emit a JSON object, not a | |||||
// JSON list. | |||||
if (!$attachment_map) { | |||||
$attachment_map = (object)$attachment_map; | |||||
} | |||||
$id = (int)$object->getID(); | $id = (int)$object->getID(); | ||||
$phid = $object->getPHID(); | $phid = $object->getPHID(); | ||||
$data[] = array( | $data[] = array( | ||||
'id' => $id, | 'id' => $id, | ||||
'type' => phid_get_type($phid), | 'type' => phid_get_type($phid), | ||||
'phid' => $phid, | 'phid' => $phid, | ||||
'fields' => $field_map, | 'fields' => $field_map, | ||||
'attachments' => $attachment_map, | 'attachments' => $attachment_map, | ||||
); | ); | ||||
} | } | ||||
} | } | ||||
return array( | return array( | ||||
'data' => $data, | 'data' => $data, | ||||
'maps' => $method->getQueryMaps($query), | |||||
'query' => array( | 'query' => array( | ||||
'queryKey' => $saved_query->getQueryKey(), | 'queryKey' => $saved_query->getQueryKey(), | ||||
), | ), | ||||
'cursor' => array( | 'cursor' => array( | ||||
'limit' => $pager->getPageSize(), | 'limit' => $pager->getPageSize(), | ||||
'after' => $pager->getNextPageID(), | 'after' => $pager->getNextPageID(), | ||||
'before' => $pager->getPrevPageID(), | 'before' => $pager->getPrevPageID(), | ||||
'order' => $request->getValue('order'), | 'order' => $request->getValue('order'), | ||||
▲ Show 20 Lines • Show All 178 Lines • Show Last 20 Lines |