public function buildSearchForm(AphrontFormView $form, PhabricatorSavedQuery $saved_query)
 {
     $phids = $saved_query->getParameter('authorPHIDs', array());
     $author_handles = id(new PhabricatorHandleQuery())->setViewer($this->requireViewer())->withPHIDs($phids)->execute();
     $status = $saved_query->getParameter('status');
     $names = implode(', ', $saved_query->getParameter('names', array()));
     $like = $saved_query->getParameter('nameLike');
     $color = $saved_query->getParameter('flagColor', '-1');
     $form->appendChild(id(new AphrontFormSelectControl())->setName('status')->setLabel(pht('Status'))->setOptions(PhabricatorMacroQuery::getStatusOptions())->setValue($status))->appendChild(id(new AphrontFormTokenizerControl())->setDatasource(new PhabricatorPeopleDatasource())->setName('authors')->setLabel(pht('Authors'))->setValue($author_handles))->appendChild(id(new AphrontFormTextControl())->setName('nameLike')->setLabel(pht('Name Contains'))->setValue($like))->appendChild(id(new AphrontFormTextControl())->setName('names')->setLabel(pht('Exact Names'))->setValue($names))->appendChild(id(new AphrontFormSelectControl())->setName('flagColor')->setLabel(pht('Marked with Flag'))->setOptions(PhabricatorMacroQuery::getFlagColorsOptions())->setValue($color));
     $this->buildDateRange($form, $saved_query, 'createdStart', pht('Created After'), 'createdEnd', pht('Created Before'));
 }
 protected function buildCustomSearchFields()
 {
     return array(id(new PhabricatorSearchSelectField())->setLabel(pht('Status'))->setKey('status')->setOptions(PhabricatorMacroQuery::getStatusOptions()), id(new PhabricatorUsersSearchField())->setLabel(pht('Authors'))->setKey('authorPHIDs')->setAliases(array('author', 'authors')), id(new PhabricatorSearchTextField())->setLabel(pht('Name Contains'))->setKey('nameLike'), id(new PhabricatorSearchStringListField())->setLabel(pht('Exact Names'))->setKey('names'), id(new PhabricatorSearchSelectField())->setLabel(pht('Marked with Flag'))->setKey('flagColor')->setDefault('-1')->setOptions(PhabricatorMacroQuery::getFlagColorsOptions()), id(new PhabricatorSearchDateField())->setLabel(pht('Created After'))->setKey('createdStart'), id(new PhabricatorSearchDateField())->setLabel(pht('Created Before'))->setKey('createdEnd'));
 }