From c1feccb708f14a991f99b5fc3d6af4c6ad680bff Mon Sep 17 00:00:00 2001 From: Ian Thomas Date: Tue, 8 Oct 2013 22:21:20 +0100 Subject: [PATCH] Straight reroll + uppercase ID --- .../lib/Drupal/node/Plugin/Search/NodeSearch.php | 9 +++-- core/modules/node/node.install | 6 --- .../lib/Drupal/search/Plugin/SearchPluginBase.php | 1 + .../lib/Drupal/search/SearchPluginManager.php | 2 +- .../Plugin/Search/SearchExtraTypeSearch.php | 38 +------------------ 5 files changed, 9 insertions(+), 47 deletions(-) diff --git a/core/modules/node/lib/Drupal/node/Plugin/Search/NodeSearch.php b/core/modules/node/lib/Drupal/node/Plugin/Search/NodeSearch.php index f2848c5..116a01d 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/Search/NodeSearch.php +++ b/core/modules/node/lib/Drupal/node/Plugin/Search/NodeSearch.php @@ -102,7 +102,6 @@ static public function create(ContainerInterface $container, array $configuratio $container->get('database'), $container->get('plugin.manager.entity'), $container->get('module_handler'), - $container->get('config.factory')->get('search.settings'), $container->get('keyvalue')->get('state'), $container->get('current_user') ); @@ -520,11 +519,12 @@ public function buildConfigurationForm(array $form, array &$form_state) { // Note: reversed to reflect that higher number = higher ranking. $options = drupal_map_assoc(range(0, 10)); foreach ($this->moduleHandler->invokeAll('ranking') as $var => $values) { + $rank = $this->configuration['search.plugin.' . $this->pluginId]->get('rank.' . $var); $form['content_ranking']['factors']['node_rank_' . $var] = array( '#title' => $values['title'], '#type' => 'select', '#options' => $options, - '#default_value' => variable_get('node_rank_' . $var, 0), + '#default_value' => isset($rank) ? $rank : 0, ); } return $form; @@ -540,12 +540,13 @@ public function validateConfigurationForm(array &$form, array &$form_state) { * {@inheritdoc} */ public function submitConfigurationForm(array &$form, array &$form_state) { + $config = $this->configuration['search.plugin.' . $this->pluginId]; foreach ($this->moduleHandler->invokeAll('ranking') as $var => $values) { if (isset($form_state['values']['node_rank_' . $var])) { - // @todo Fix when https://drupal.org/node/1831632 is in. - variable_set('node_rank_' . $var, $form_state['values']['node_rank_' . $var]); + $config->set('rank.' . $var, $form_state['values']['node_rank_' . $var]); } } + $config->save(); } } diff --git a/core/modules/node/node.install b/core/modules/node/node.install index 4cafc1f..067bd7e 100644 --- a/core/modules/node/node.install +++ b/core/modules/node/node.install @@ -424,12 +424,6 @@ function node_uninstall() { \Drupal::config('language.settings')->clear('node. ' . $type . '.language.default_configuration')->save(); } - // Delete node search ranking variables. - variable_del('node_rank_relevance'); - variable_del('node_rank_sticky'); - variable_del('node_rank_promote'); - variable_del('node_rank_recent'); - // Delete remaining general module variables. \Drupal::state()->delete('node.node_access_needs_rebuild'); variable_del('node_recent_block_count'); diff --git a/core/modules/search/lib/Drupal/search/Plugin/SearchPluginBase.php b/core/modules/search/lib/Drupal/search/Plugin/SearchPluginBase.php index a33a4f8..0cba8f9 100644 --- a/core/modules/search/lib/Drupal/search/Plugin/SearchPluginBase.php +++ b/core/modules/search/lib/Drupal/search/Plugin/SearchPluginBase.php @@ -9,6 +9,7 @@ use Drupal\Core\Plugin\PluginBase; use Drupal\Core\Plugin\ContainerFactoryPluginInterface; +use Symfony\Component\DependencyInjection\ContainerInterface; /** * Defines a base class for plugins wishing to support search. diff --git a/core/modules/search/lib/Drupal/search/SearchPluginManager.php b/core/modules/search/lib/Drupal/search/SearchPluginManager.php index 52bf637..6216913 100644 --- a/core/modules/search/lib/Drupal/search/SearchPluginManager.php +++ b/core/modules/search/lib/Drupal/search/SearchPluginManager.php @@ -132,7 +132,7 @@ public function createInstance($plugin_id, array $configuration = array()) { * Gets plugin configuration stored in the configuration management system. * * @param string $plugin_id - * The id of the plugin to get configuration for. + * The ID of the plugin to get configuration for. * * @return array * An array of plugin configuration. diff --git a/core/modules/search/tests/modules/search_extra_type/lib/Drupal/search_extra_type/Plugin/Search/SearchExtraTypeSearch.php b/core/modules/search/tests/modules/search_extra_type/lib/Drupal/search_extra_type/Plugin/Search/SearchExtraTypeSearch.php index 2ea35eb..21c8c58 100644 --- a/core/modules/search/tests/modules/search_extra_type/lib/Drupal/search_extra_type/Plugin/Search/SearchExtraTypeSearch.php +++ b/core/modules/search/tests/modules/search_extra_type/lib/Drupal/search_extra_type/Plugin/Search/SearchExtraTypeSearch.php @@ -26,40 +26,6 @@ class SearchExtraTypeSearch extends SearchPluginBase implements PluginFormInterface { /** - * @var \Drupal\Core\Config\Config - */ - protected $configSettings; - - /** - * {@inheritdoc} - */ - static public function create(ContainerInterface $container, array $configuration, $plugin_id, array $plugin_definition) { - return new static( - $container->get('config.factory')->get('search_extra_type.settings'), - $configuration, - $plugin_id, - $plugin_definition - ); - } - - /** - * Creates a SearchExtraTypeSearch object. - * - * @param Config $config_settings - * The extra config settings. - * @param array $configuration - * A configuration array containing information about the plugin instance. - * @param string $plugin_id - * The plugin_id for the plugin instance. - * @param array $plugin_definition - * The plugin implementation definition. - */ - public function __construct(Config $config_settings, array $configuration, $plugin_id, array $plugin_definition) { - $this->configSettings = $config_settings; - parent::__construct($configuration, $plugin_id, $plugin_definition); - } - - /** * {@inheritdoc} */ public function setSearch($keywords, array $parameters, array $attributes) { @@ -140,7 +106,7 @@ public function buildConfigurationForm(array $form, array &$form_state) { 'bi' => t('Bistromathic'), 'ii' => t('Infinite Improbability'), ), - '#default_value' => $this->configSettings->get('boost'), + '#default_value' => $this->configuration['search.plugin.' . $this->pluginId]->get('boost'), ); return $form; } @@ -155,7 +121,7 @@ public function validateConfigurationForm(array &$form, array &$form_state) { * {@inheritdoc} */ public function submitConfigurationForm(array &$form, array &$form_state) { - $this->configSettings + $this->configuration['search.plugin.' . $this->pluginId] ->set('boost', $form_state['values']['extra_type_settings']['boost']) ->save(); } -- 1.7.8.3