StatisticsNumeric
class StatisticsNumeric extends NumericField (View source)
Field handler to display numeric values from the statistics module.
Traits
Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.
Provides dependency injection friendly methods for serialization.
Provides a trait for the messenger service.
Constants
| DERIVATIVE_SEPARATOR |
A string which is used to separate base plugin IDs from the derivative ID. |
| INCLUDE_NEGOTIATED |
Include negotiated languages when listing languages. |
| INCLUDE_ENTITY |
Include entity row languages when listing languages. |
| VIEWS_QUERY_LANGUAGE_SITE_DEFAULT |
Query string to indicate the site default language. |
| RENDER_TEXT_PHASE_SINGLE_ITEM |
Indicator of the renderText() method for rendering a single item. (If no render_item() is present). |
| RENDER_TEXT_PHASE_COMPLETELY |
Indicator of the renderText() method for rendering the whole element. (if no render_item() method is available). |
| RENDER_TEXT_PHASE_EMPTY |
Indicator of the renderText() method for rendering the empty text. |
Properties
| protected string | $pluginId | The plugin_id. |
from PluginBase |
| protected array | $pluginDefinition | The plugin implementation definition. |
from PluginBase |
| protected array | $configuration | Configuration information passed into the plugin. |
from PluginBase |
| protected TranslationInterface | $stringTranslation | The string translation service. |
from StringTranslationTrait |
| protected array | $_serviceIds | An array of service IDs keyed by property name used for serialization. |
from DependencySerializationTrait |
| protected array | $_entityStorages | An array of entity type IDs keyed by the property name of their storages. |
from DependencySerializationTrait |
| protected MessengerInterface | $messenger | The messenger. |
from MessengerTrait |
| array | $options | Options for this plugin will be held here. |
from PluginBase |
| ViewExecutable | $view | The top object of a view. |
from PluginBase |
| DisplayPluginBase | $displayHandler | The display object this plugin is for. |
from PluginBase |
| array | $definition | Plugins's definition. |
from PluginBase |
| protected bool | $usesOptions | Denotes whether the plugin has an additional options form. |
from PluginBase |
| protected RendererInterface | $renderer | Stores the render API renderer. |
from FieldPluginBase |
| QueryPluginBase | $query | Where the $query object will reside. |
from HandlerBase |
| string | $table | The table this handler is attached to. |
from HandlerBase |
| string | $tableAlias | The alias of the table of this handler which is used in the query. |
from HandlerBase |
| string | $realField | The actual field in the database table, maybe different on other kind of query plugins/special handlers. |
from HandlerBase |
| string | $field | With field you can override the realField if the real field is not set. |
from HandlerBase |
| string | $relationship | The relationship used for this field. |
from HandlerBase |
| protected ModuleHandlerInterface | $moduleHandler | The module handler. |
from HandlerBase |
| protected ViewsData | $viewsData | The views data service. |
from HandlerBase |
| string | $field_alias | from FieldPluginBase | |
| $aliases | from FieldPluginBase | ||
| mixed | $original_value | The field value prior to any rewriting. |
from FieldPluginBase |
| array | $additional_fields | Stores additional fields which get added to the query. |
from FieldPluginBase |
| protected LinkGeneratorInterface | $linkGenerator | The link generator. |
from FieldPluginBase |
| protected int|null | $lastRenderIndex | Keeps track of the last render index. |
from FieldPluginBase |
Methods
Constructs a Handler object.
Translates a string to the current language or to a given language.
Formats a string containing a count of items.
Returns the number of plurals supported by a given language.
Gets the string translation service.
Creates an instance of the plugin.
Initialize the plugin.
Information about options for all kinds of purposes will be held here.
Fills up the options of the plugin with defaults.
Filter out stored options depending on the defined options.
Do the work to filter out stored options depending on the defined options.
Unpack options over our existing defaults, drilling down into arrays so that defaults don't get totally blown away.
Default options form that provides the label widget that all fields should have.
Lists the trusted callbacks provided by the implementing class.
Performs some cleanup tasks on the options array before saving it.
Provide a full list of possible theme templates used by this style.
Returns a string with any core tokens replaced.
Replaces Views' tokens in a given string. The resulting string will be sanitized with Xss::filterAdmin.
Returns an array of available token replacements.
Adds elements for available core tokens to a form.
Moves form elements into fieldsets for presentation purposes.
Flattens the structure of form elements.
Makes an array of languages, optionally including special languages.
Returns substitutions for Views queries for languages.
Return a string representing this handler's name in the UI.
Sanitize the value for output.
Perform any necessary changes to the form values prior to storage.
If a handler has 'extra options' it will get a little settings widget and another form called extra_options.
Perform any necessary changes to the form values prior to storage.
Set new exposed option defaults when exposed setting is flipped on.
Render our chunk of the exposed handler form when selecting.
Perform any necessary changes to the form exposes prior to storage.
Called just prior to query(), this lets a handler set up any relationship it needs.
Ensure the main table for this handler is in the query. This is used a lot.
Determine if this item is 'exposed', meaning it provides form elements to let users modify the view.
Define if the exposed input has to be submitted multiple times.
Take input from exposed handlers and assign to this handler, if necessary.
If set to remember exposed input in the session, store it there.
Determines if the handler is considered 'broken', meaning it's a placeholder used when a handler can't be found.
Fetches a handler to join one table to a primary table from the data cache.
Breaks x,y,z and x+y+z into an array.
A submit handler that is used for storing temporary items when using multi-step changes, such as ajax requests.
Calculates options stored on the handler.
Adds an ORDER BY clause to the query for click sort columns.
Returns an HTML element based upon the field's element type.
Returns an HTML element for the label based upon the field's element type.
Returns an HTML element for the wrapper based upon the field's element type.
Replaces a value with tokens from the last field.
Returns the class of the field's label.
Returns the class of the field's wrapper.
Determines if this field will be available as an option to group the result by in the style settings.
Returns all field labels of fields before this field.
Checks if a field value is empty.
Performs an advanced text render for the item.
Trims the field down to the specified length.
Render this field as a link, with the info from a fieldset set by the user.
Gets the 'render' tokens to use for advanced rendering.
Returns a token placeholder for the current field.
Recursive function to add replacements for nested query string parameters.
Add any special tokens this field might use for itself.
Document any special tokens this field might use for itself.
Trims the field down to the specified length.
Details
__construct(array $configuration, string $plugin_id, mixed $plugin_definition)
Constructs a Handler object.
string
getPluginId()
Gets the plugin_id of the plugin instance.
string
getBaseId()
Gets the base_plugin_id of the plugin instance.
string|null
getDerivativeId()
Gets the derivative_id of the plugin instance.
array
getPluginDefinition()
Gets the definition of the plugin implementation.
bool
isConfigurable()
Determines if the plugin is configurable.
protected TranslatableMarkup
t(string $string, array $args = [], array $options = [])
Translates a string to the current language or to a given language.
See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.
In order for strings to be localized, make them available in one of the ways supported by the
protected
formatPlural($count, $singular, $plural, array $args = [], array $options = [])
Formats a string containing a count of items.
protected
getNumberOfPlurals($langcode = NULL)
Returns the number of plurals supported by a given language.
protected TranslationInterface
getStringTranslation()
Gets the string translation service.
$this
setStringTranslation(TranslationInterface $translation)
Sets the string translation service to use.
__sleep()
{@inheritdoc}
__wakeup()
{@inheritdoc}
setMessenger(MessengerInterface $messenger)
Sets the messenger.
MessengerInterface
messenger()
Gets the messenger.
static ContainerFactoryPluginInterface
create(ContainerInterface $container, array $configuration, string $plugin_id, mixed $plugin_definition)
Creates an instance of the plugin.
init(ViewExecutable $view, DisplayPluginBase $display, array $options = NULL)
Initialize the plugin.
protected array
defineOptions()
Information about options for all kinds of purposes will be held here.
protected
setOptionDefaults(array $storage, array $options)
Fills up the options of the plugin with defaults.
filterByDefinedOptions(array $storage)
Filter out stored options depending on the defined options.
protected
doFilterByDefinedOptions(array $storage, array $options)
Do the work to filter out stored options depending on the defined options.
unpackOptions($storage, $options, $definition = NULL, $all = TRUE, $check = TRUE)
Unpack options over our existing defaults, drilling down into arrays so that defaults don't get totally blown away.
destroy()
Clears a plugin.
buildOptionsForm($form, FormStateInterface $form_state)
Default options form that provides the label widget that all fields should have.
static string[]
trustedCallbacks()
Lists the trusted callbacks provided by the implementing class.
Trusted callbacks are public methods on the implementing class and can be invoked via \Drupal\Core\Security\DoTrustedCallbackTrait::doTrustedCallback().
validateOptionsForm($form, FormStateInterface $form_state)
Validate the options form.
submitOptionsForm($form, FormStateInterface $form_state)
Performs some cleanup tasks on the options array before saving it.
query()
Called to add the field to a query.
themeFunctions()
Provide a full list of possible theme templates used by this style.
An
validate()
Validate that the plugin is correct and can be saved.
summaryTitle()
Returns the summary of the settings in the display.
pluginTitle()
Return the human readable name of the display.
This appears on the ui beside each plugin and beside the settings link.
usesOptions()
Returns the usesOptions property.
string
globalTokenReplace(string $string = '', array $options = [])
Returns a string with any core tokens replaced.
protected string
viewsTokenReplace($text, $tokens)
Replaces Views' tokens in a given string. The resulting string will be sanitized with Xss::filterAdmin.
array
getAvailableGlobalTokens(bool $prepared = FALSE, array $types = [])
Returns an array of available token replacements.
globalTokenForm(array $form, FormStateInterface $form_state)
Adds elements for available core tokens to a form.
static array
preRenderAddFieldsetMarkup(array $form)
Moves form elements into fieldsets for presentation purposes.
Many views forms use #tree = TRUE to keep their values in a hierarchy for easier storage. Moving the form elements into fieldsets during form building would break up that hierarchy. Therefore, we wait until the pre_render stage, where any changes we make affect presentation only and aren't reflected in $form_state->getValues().
static array
preRenderFlattenData(array $form)
Flattens the structure of form elements.
If a form element has #flatten = TRUE, then all of its children get moved to the same level as the element itself. So $form['to_be_flattened'][$key] becomes $form[$key], and $form['to_be_flattened'] gets unset.
array
calculateDependencies()
Calculates dependencies for the configured plugin.
Dependencies are saved in the plugin's configuration entity and are used to determine configuration synchronization order. For example, if the plugin integrates with specific user roles, this method should return an array of dependencies listing the specified roles.
string
getProvider()
Returns the plugin provider.
protected array
listLanguages(int $flags = LanguageInterface::STATE_ALL, array $current_values = NULL)
Makes an array of languages, optionally including special languages.
static array
queryLanguageSubstitutions()
Returns substitutions for Views queries for languages.
This is needed so that the language options returned by PluginBase::listLanguages() are able to be used in queries. It is called by the Views module implementation of hook_views_query_substitutions() to get the language-related substitutions.
protected RendererInterface
getRenderer()
Returns the render API renderer.
adminLabel($short = FALSE)
Return a string representing this handler's name in the UI.
getField($field = NULL)
Shortcut to get a handler's raw field value.
This should be overridden for handlers with formulae or other non-standard fields. Because this takes an argument, fields overriding this can just call return parent::getField($formula)
ViewsRenderPipelineMarkup
sanitizeValue($value, $type = NULL)
Sanitize the value for output.
protected string
caseTransform($string, $option)
Transform a string by a certain method.
protected ModuleHandlerInterface
getModuleHandler()
Gets the module handler.
setModuleHandler(ModuleHandlerInterface $module_handler)
Sets the module handler.
usesGroupBy()
Provides the handler some groupby.
buildGroupByForm($form, FormStateInterface $form_state)
Provide a form for aggregation settings.
submitGroupByForm($form, FormStateInterface $form_state)
Perform any necessary changes to the form values prior to storage.
There is no need for this function to actually store the data.
hasExtraOptions()
If a handler has 'extra options' it will get a little settings widget and another form called extra_options.
defineExtraOptions($option)
Provide defaults for the handler.
buildExtraOptionsForm($form, FormStateInterface $form_state)
Provide a form for setting options.
validateExtraOptionsForm($form, FormStateInterface $form_state)
Validate the options form.
submitExtraOptionsForm($form, FormStateInterface $form_state)
Perform any necessary changes to the form values prior to storage.
There is no need for this function to actually store the data.
canExpose()
Determine if a handler can be exposed.
defaultExposeOptions()
Set new exposed option defaults when exposed setting is flipped on.
exposedInfo()
Get information about the exposed form for the form renderer.
buildExposedForm($form, FormStateInterface $form_state)
Render our chunk of the exposed handler form when selecting.
validateExposed($form, FormStateInterface $form_state)
Validate the exposed handler form.
submitExposed($form, FormStateInterface $form_state)
Submit the exposed handler form.
buildExposeForm($form, FormStateInterface $form_state)
Form for exposed handler options.
validateExposeForm($form, FormStateInterface $form_state)
Validate the options form.
submitExposeForm($form, FormStateInterface $form_state)
Perform any necessary changes to the form exposes prior to storage.
There is no need for this function to actually store the data.
showExposeButton($form, FormStateInterface $form_state)
Shortcut to display the expose/hide button.
showExposeForm($form, FormStateInterface $form_state)
Shortcut to display the exposed options form.
bool
access(AccountInterface $account)
Check whether given user has access to this handler.
preQuery()
Run before the view is built.
This gives all the handlers some time to set up before any handler has been fully run.
postExecute($values)
Run after the view is executed, before the result is cached.
This gives all the handlers some time to modify values. This is primarily used so that handlers that pull up secondary data can put it in the $values so that the raw data can be used externally.
protected string
placeholder()
Provides a unique placeholders for handlers.
setRelationship()
Called just prior to query(), this lets a handler set up any relationship it needs.
ensureMyTable()
Ensure the main table for this handler is in the query. This is used a lot.
adminSummary()
Provide extra data to the administration form.
bool
isExposed()
Determine if this item is 'exposed', meaning it provides form elements to let users modify the view.
isAGroup()
Returns TRUE if the exposed filter works like a grouped filter.
multipleExposedInput()
Define if the exposed input has to be submitted multiple times.
This is TRUE when exposed filters grouped are using checkboxes as widgets.
acceptExposedInput($input)
Take input from exposed handlers and assign to this handler, if necessary.
storeExposedInput($input, $status)
If set to remember exposed input in the session, store it there.
getJoin()
Get the join object that should be used for this handler.
This method isn't used a great deal, but it's very handy for easily getting the join if it is necessary to make some changes to it, such as adding an 'extra'.
broken()
Determines if the handler is considered 'broken', meaning it's a placeholder used when a handler can't be found.
string
getDateFormat(string $format)
Creates cross-database SQL date formatting.
string
getDateField()
Creates cross-database SQL dates.
protected ViewsData
getViewsData()
Gets views data service.
setViewsData(ViewsData $views_data)
{@inheritdoc}
static JoinPluginBase
getTableJoin(string $table, string $base_table)
Fetches a handler to join one table to a primary table from the data cache.
string
getEntityType()
Determines the entity type used by this handler.
If this handler uses a relationship, the base class of the relationship is taken into account.
static object
breakString(string $str, bool $force_int = FALSE)
Breaks x,y,z and x+y+z into an array.
displayExposedForm($form, FormStateInterface $form_state)
Displays the Expose form.
submitTemporaryForm($form, FormStateInterface $form_state)
A submit handler that is used for storing temporary items when using multi-step changes, such as ajax requests.
array
submitFormCalculateOptions(array $options, array $form_state_options)
Calculates options stored on the handler.
protected
allowAdvancedRender()
Determine if this field can allow advanced rendering.
Fields can set this to FALSE if they do not wish to allow token based rewriting or link-making.
protected
addAdditionalFields($fields = NULL)
Add 'additional' fields to the query.
clickSort(string $order)
Adds an ORDER BY clause to the query for click sort columns.
bool
clickSortable()
Determines if this field is click sortable.
label()
Gets this field's label.
elementType(bool $none_supported = FALSE, bool $default_empty = FALSE, bool $inline = FALSE)
Returns an HTML element based upon the field's element type.
elementLabelType(bool $none_supported = FALSE, bool $default_empty = FALSE)
Returns an HTML element for the label based upon the field's element type.
elementWrapperType(bool $none_supported = FALSE, bool $default_empty = FALSE)
Returns an HTML element for the wrapper based upon the field's element type.
getElements()
Provides a list of elements valid for field HTML.
This function can be overridden by fields that want more or fewer elements available, though this seems like it would be an incredibly rare occurrence.
elementClasses(bool $row_index = NULL)
Returns the class of the field.
tokenizeValue(string $value, bool $row_index = NULL)
Replaces a value with tokens from the last field.
This function actually figures out which field was last and uses its tokens so they will all be available.
elementLabelClasses(bool $row_index = NULL)
Returns the class of the field's label.
elementWrapperClasses(bool $row_index = NULL)
Returns the class of the field's wrapper.
EntityInterface|null
getEntity(ResultRow $values)
Gets the entity matching the current row and relationship.
getValue(ResultRow $values, string $field = NULL)
Gets the value that's supposed to be rendered.
This api exists so that other modules can easy set the values of the field without having the need to change the render method as well.
bool
useStringGroupBy()
Determines if this field will be available as an option to group the result by in the style settings.
protected array
getPreviousFieldLabels()
Returns all field labels of fields before this field.
preRender(ResultRow[] $values)
Runs before any fields are rendered.
This gives the handlers some time to set up before any handler has been rendered.
string|MarkupInterface
render(ResultRow $values)
Renders the field.
string[]
postRender(ResultRow $row, $output)
Runs after every field has been rendered.
This is meant to be used mainly to deal with field handlers whose output cannot be cached at row level but can be cached at display level. The typical example is the row counter. For completely uncacheable field output placeholders should be used.
string|MarkupInterface
advancedRender(ResultRow $values)
Renders a field using advanced settings.
This renders a field normally, then decides if render-as-link and text-replacement rendering is necessary.
bool
isValueEmpty($value, bool $empty_zero, bool $no_skip_empty = TRUE)
Checks if a field value is empty.
string|MarkupInterface
renderText(array $alter)
Performs an advanced text render for the item.
This is separated out as some fields may render lists, and this allows each item to be handled individually.
protected
renderAltered($alter, $tokens)
Render this field as user-defined altered text.
protected string
renderTrimText(array $alter, string $value)
Trims the field down to the specified length.
protected
renderAsLink($alter, $text, $tokens)
Render this field as a link, with the info from a fieldset set by the user.
array
getRenderTokens(mixed $item)
Gets the 'render' tokens to use for advanced rendering.
This runs through all of the fields and arguments that are available and gets their values. This will then be used in one giant str_replace().
protected string
getFieldTokenPlaceholder()
Returns a token placeholder for the current field.
protected An
getTokenValuesRecursive(array $array, array $parent_keys = [])
Recursive function to add replacements for nested query string parameters.
E.g. if you pass in the following array: array( 'foo' => array( 'a' => 'value', 'b' => 'value', ), 'bar' => array( 'a' => 'value', 'b' => array( 'c' => value, ), ), );
Would yield the following array of tokens: array( '%foo_a' => 'value' '%foo_b' => 'value' '%bar_a' => 'value' '%bar_b_c' => 'value' );
protected
addSelfTokens($tokens, $item)
Add any special tokens this field might use for itself.
This method is intended to be overridden by items that generate fields as a list. For example, the field that displays all terms on a node might have tokens for the tid and the term.
By convention, tokens should follow the format of {{ tokensubtoken }} where token is the field ID and subtoken is the field. If the field ID is terms, then the tokens might be {{ termstid }} and {{ terms__name }}.
protected
documentSelfTokens($tokens)
Document any special tokens this field might use for itself.
string|MarkupInterface
theme(ResultRow $values)
Renders row values using $this->themeFunctions() as #theme.
static string
trimText(array $alter, string $value)
Trims the field down to the specified length.
protected LinkGeneratorInterface
linkGenerator()
Gets the link generator.