Differential D18422 Diff 44365 src/applications/search/controller/PhabricatorApplicationSearchController.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/search/controller/PhabricatorApplicationSearchController.php
| Show First 20 Lines • Show All 121 Lines • ▼ Show 20 Lines | if ($this->queryKey == 'advanced') { | ||||
| $found_query_data = true; | $found_query_data = true; | ||||
| break; | break; | ||||
| } | } | ||||
| } | } | ||||
| if (!$found_query_data) { | if (!$found_query_data) { | ||||
| // Otherwise, there's no query data so just run the user's default | // Otherwise, there's no query data so just run the user's default | ||||
| // query for this application. | // query for this application. | ||||
| $query_key = head_key($engine->loadEnabledNamedQueries()); | $query_key = $engine->getDefaultQueryKey(); | ||||
| } | } | ||||
| } | } | ||||
| if ($engine->isBuiltinQuery($query_key)) { | if ($engine->isBuiltinQuery($query_key)) { | ||||
| $saved_query = $engine->buildSavedQueryFromBuiltin($query_key); | $saved_query = $engine->buildSavedQueryFromBuiltin($query_key); | ||||
| $named_query = idx($engine->loadEnabledNamedQueries(), $query_key); | $named_query = idx($engine->loadEnabledNamedQueries(), $query_key); | ||||
| } else if ($query_key) { | } else if ($query_key) { | ||||
| $saved_query = id(new PhabricatorSavedQueryQuery()) | $saved_query = id(new PhabricatorSavedQueryQuery()) | ||||
| ▲ Show 20 Lines • Show All 256 Lines • ▼ Show 20 Lines | private function processEditRequest() { | ||||
| Javelin::initBehavior( | Javelin::initBehavior( | ||||
| 'search-reorder-queries', | 'search-reorder-queries', | ||||
| array( | array( | ||||
| 'listID' => $list_id, | 'listID' => $list_id, | ||||
| 'orderURI' => '/search/order/'.get_class($engine).'/', | 'orderURI' => '/search/order/'.get_class($engine).'/', | ||||
| )); | )); | ||||
| $default_key = $engine->getDefaultQueryKey(); | |||||
| foreach ($named_queries as $named_query) { | foreach ($named_queries as $named_query) { | ||||
| $class = get_class($engine); | $class = get_class($engine); | ||||
| $key = $named_query->getQueryKey(); | $key = $named_query->getQueryKey(); | ||||
| $item = id(new PHUIObjectItemView()) | $item = id(new PHUIObjectItemView()) | ||||
| ->setHeader($named_query->getQueryName()) | ->setHeader($named_query->getQueryName()) | ||||
| ->setHref($engine->getQueryResultsPageURI($key)); | ->setHref($engine->getQueryResultsPageURI($key)); | ||||
| if ($named_query->getIsBuiltin() && $named_query->getIsDisabled()) { | if ($named_query->getIsBuiltin() && $named_query->getIsDisabled()) { | ||||
| $icon = 'fa-plus'; | $icon = 'fa-plus'; | ||||
| $disable_name = pht('Enable'); | |||||
| } else { | } else { | ||||
| $icon = 'fa-times'; | $icon = 'fa-times'; | ||||
| if ($named_query->getIsBuiltin()) { | |||||
| $disable_name = pht('Disable'); | |||||
| } else { | |||||
| $disable_name = pht('Delete'); | |||||
| } | |||||
| } | } | ||||
| $item->addAction( | $item->addAction( | ||||
| id(new PHUIListItemView()) | id(new PHUIListItemView()) | ||||
| ->setIcon($icon) | ->setIcon($icon) | ||||
| ->setHref('/search/delete/'.$key.'/'.$class.'/') | ->setHref('/search/delete/'.$key.'/'.$class.'/') | ||||
| ->setRenderNameAsTooltip(true) | |||||
| ->setName($disable_name) | |||||
| ->setWorkflow(true)); | ->setWorkflow(true)); | ||||
| if ($named_query->getIsBuiltin()) { | $default_disabled = $named_query->getIsDisabled(); | ||||
| if ($named_query->getIsDisabled()) { | $default_icon = 'fa-thumb-tack'; | ||||
| $item->addIcon('fa-times lightgreytext', pht('Disabled')); | |||||
| $item->setDisabled(true); | if ($default_key === $key) { | ||||
| $default_color = 'green'; | |||||
| } else { | } else { | ||||
| $item->addIcon('fa-lock lightgreytext', pht('Builtin')); | $default_color = null; | ||||
| } | } | ||||
| } else { | |||||
| $item->addAction( | $item->addAction( | ||||
| id(new PHUIListItemView()) | id(new PHUIListItemView()) | ||||
| ->setIcon('fa-pencil') | ->setIcon("{$default_icon} {$default_color}") | ||||
| ->setHref('/search/edit/'.$key.'/')); | ->setHref('/search/default/'.$key.'/'.$class.'/') | ||||
| ->setRenderNameAsTooltip(true) | |||||
| ->setName(pht('Make Default')) | |||||
| ->setWorkflow(true) | |||||
| ->setDisabled($default_disabled)); | |||||
| if ($named_query->getIsBuiltin()) { | |||||
| $edit_icon = 'fa-lock lightgreytext'; | |||||
| $edit_disabled = true; | |||||
| $edit_name = pht('Builtin'); | |||||
| $edit_href = null; | |||||
| } else { | |||||
| $edit_icon = 'fa-pencil'; | |||||
| $edit_disabled = false; | |||||
| $edit_name = pht('Edit'); | |||||
| $edit_href = '/search/edit/'.$key.'/'; | |||||
| } | |||||
| $item->addAction( | |||||
| id(new PHUIListItemView()) | |||||
| ->setIcon($edit_icon) | |||||
| ->setHref($edit_href) | |||||
| ->setRenderNameAsTooltip(true) | |||||
| ->setName($edit_name) | |||||
| ->setDisabled($edit_disabled)); | |||||
| if ($named_query->getIsDisabled()) { | |||||
| $item->setDisabled(true); | |||||
| } | } | ||||
| $item->setGrippable(true); | $item->setGrippable(true); | ||||
| $item->addSigil('named-query'); | $item->addSigil('named-query'); | ||||
| $item->setMetadata( | $item->setMetadata( | ||||
| array( | array( | ||||
| 'queryKey' => $named_query->getQueryKey(), | 'queryKey' => $named_query->getQueryKey(), | ||||
| )); | )); | ||||
| ▲ Show 20 Lines • Show All 162 Lines • ▼ Show 20 Lines | private function newBuiltinUseActions() { | ||||
| $viewer = $request->getUser(); | $viewer = $request->getUser(); | ||||
| $is_dev = PhabricatorEnv::getEnvConfig('phabricator.developer-mode'); | $is_dev = PhabricatorEnv::getEnvConfig('phabricator.developer-mode'); | ||||
| $engine = $this->getSearchEngine(); | $engine = $this->getSearchEngine(); | ||||
| $engine_class = get_class($engine); | $engine_class = get_class($engine); | ||||
| $query_key = $this->getQueryKey(); | $query_key = $this->getQueryKey(); | ||||
| if (!$query_key) { | if (!$query_key) { | ||||
| $query_key = head_key($engine->loadEnabledNamedQueries()); | $query_key = $engine->getDefaultQueryKey(); | ||||
| } | } | ||||
| $can_use = $engine->canUseInPanelContext(); | $can_use = $engine->canUseInPanelContext(); | ||||
| $is_installed = PhabricatorApplication::isClassInstalledForViewer( | $is_installed = PhabricatorApplication::isClassInstalledForViewer( | ||||
| 'PhabricatorDashboardApplication', | 'PhabricatorDashboardApplication', | ||||
| $viewer); | $viewer); | ||||
| if ($can_use && $is_installed) { | if ($can_use && $is_installed) { | ||||
| Show All 34 Lines | |||||