class Php in Views (for Drupal 7) 8.3
Same name in this branch
- 8.3 lib/Drupal/views/Plugin/views/argument_default/Php.php \Drupal\views\Plugin\views\argument_default\Php
- 8.3 lib/Drupal/views/Plugin/views/argument_validator/Php.php \Drupal\views\Plugin\views\argument_validator\Php
Provide PHP code to validate whether or not an argument is ok.
Plugin annotation
@Plugin(
id = "php",
title = @Translation("PHP Code")
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\views\Plugin\views\PluginBase
- class \Drupal\views\Plugin\views\argument_validator\ArgumentValidatorPluginBase
- class \Drupal\views\Plugin\views\argument_validator\Php
- class \Drupal\views\Plugin\views\argument_validator\ArgumentValidatorPluginBase
- class \Drupal\views\Plugin\views\PluginBase
Expanded class hierarchy of Php
Related topics
File
- lib/
Drupal/ views/ Plugin/ views/ argument_validator/ Php.php, line 23 - Definition of Drupal\views\Plugin\views\argument_validator\Php.
Namespace
Drupal\views\Plugin\views\argument_validatorView source
class Php extends ArgumentValidatorPluginBase {
protected function defineOptions() {
$options = parent::defineOptions();
$options['code'] = array(
'default' => '',
);
return $options;
}
public function buildOptionsForm(&$form, &$form_state) {
parent::buildOptionsForm($form, $form_state);
$form['code'] = array(
'#type' => 'textarea',
'#title' => t('PHP validate code'),
'#default_value' => $this->options['code'],
'#description' => t('Enter PHP code that returns TRUE or FALSE. No return is the same as FALSE, so be SURE to return something if you do not want to declare the argument invalid. Do not use <?php ?>. The argument to validate will be "$argument" and the view will be "$view". You may change the argument by setting "$handler->argument". You may change the title used for substitutions for this argument by setting "$handler->validated_title".'),
);
$this
->check_access($form, 'code');
}
/**
* Only let users with PHP block visibility permissions set/modify this
* validate plugin.
*/
public function access() {
return user_access('use PHP for settings');
}
function validate_argument($argument) {
// set up variables to make it easier to reference during the argument.
$view =& $this->view;
$handler =& $this->argument;
ob_start();
$result = eval($this->options['code']);
ob_end_clean();
return $result;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ArgumentValidatorPluginBase:: |
function | If we don't have access to the form but are showing it anyway, ensure that the form is safe and cannot be changed from user input. | ||
ArgumentValidatorPluginBase:: |
public | function | Initialize this plugin with the view and the argument it is linked to. | 1 |
ArgumentValidatorPluginBase:: |
function | Process the summary arguments for displaying. | 2 | |
ArgumentValidatorPluginBase:: |
public | function |
Provide the default form form for submitting options Overrides PluginBase:: |
3 |
ArgumentValidatorPluginBase:: |
public | function |
Provide the default form form for validating options Overrides PluginBase:: |
|
Php:: |
public | function |
Only let users with PHP block visibility permissions set/modify this
validate plugin. Overrides ArgumentValidatorPluginBase:: |
|
Php:: |
public | function |
Provide the default form for setting options. Overrides ArgumentValidatorPluginBase:: |
|
Php:: |
protected | function |
Retrieve the options when this is a new access
control plugin Overrides ArgumentValidatorPluginBase:: |
|
Php:: |
function |
Overrides ArgumentValidatorPluginBase:: |
||
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
public | property | Plugins's definition | |
PluginBase:: |
public | property | The display object this plugin is for. | |
PluginBase:: |
public | property | Options for this plugin will be held here. | |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
protected | property | Denotes whether the plugin has an additional options form. | 8 |
PluginBase:: |
public | property | The top object of a view. | 1 |
PluginBase:: |
public | function | Provide a list of additional theme functions for the theme information page | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function | Clears a plugin. | 2 |
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
PluginBase:: |
public | function | Return the human readable name of the display. | |
PluginBase:: |
public | function | Add anything to the query that we might need to. | 13 |
PluginBase:: |
protected | function | ||
PluginBase:: |
public | function | Returns the summary of the settings in the display. | 6 |
PluginBase:: |
public | function | Provide a full list of possible theme templates used by this style. | 1 |
PluginBase:: |
public | function | Unpack options over our existing defaults, drilling down into arrays so that defaults don't get totally blown away. | |
PluginBase:: |
public | function | Returns the usesOptions property. | 8 |
PluginBase:: |
public | function | Validate that the plugin is correct and can be saved. | 4 |
PluginBase:: |
public | function |
Constructs a Plugin object. Overrides PluginBase:: |
2 |