You are here

class SystemQueryParam in ThemeKey 8

Provides a 'query param' property.

Plugin annotation


@Property(
  id = "system:query_param",
  name = @Translation("System: Query Parameter"),
  description = @Translation("Every single query parameter other than 'q' and its value, if present. Note that values are url decoded. Example: '?q=node&foo=bar&dummy&filter=tid%3A27' will cause three entries 'foo=bar', 'dummy' and 'filter=tid:27'. For 'q', see property drupal:get_q."),
  page_cache_compatible = TRUE,
)

Hierarchy

Expanded class hierarchy of SystemQueryParam

File

src/Plugin/Property/SystemQueryParam.php, line 22
Contains \Drupal\themekey\Plugin\Property\SystemQueryParam.

Namespace

Drupal\themekey\Plugin\Property
View source
class SystemQueryParam extends PropertyBase {

  /**
   * @return array
   *   array of system:query_param values
   */
  public function getValues() {

    // TODO use safe values from RouteMatch
    $filtered_params = array();
    $query_params = $_GET;

    // unset($query_params['q']);
    foreach ($query_params as $key => $value) {
      $filtered_params[] = $key . (!empty($value) ? '=' . $value : '');
      $filtered_params[$key] = !empty($value) ? $value : '';
    }
    return $filtered_params;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. 92
PropertyBase::$engine protected property
PropertyBase::getConfigFactory public function
PropertyBase::getDescription public function Return the Description of the ThemeKey property. Overrides PropertyInterface::getDescription
PropertyBase::getName public function Return the name of the ThemeKey property. Overrides PropertyInterface::getName
PropertyBase::getRouteMatch public function
PropertyBase::isPageCacheCompatible public function
PropertyBase::setEngine public function
SingletonPluginBase::$instances protected static property
SingletonPluginBase::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create
SystemQueryParam::getValues public function Overrides PropertyInterface::getValues