class ViewsAddButtonDefault in Views Add Button 2.0.x
Same name and namespace in other branches
- 8 src/Plugin/views_add_button/ViewsAddButtonDefault.php \Drupal\views_add_button\Plugin\views_add_button\ViewsAddButtonDefault
Default plugin for Views Add Button.
Plugin annotation
@ViewsAddButton(
id = "views_add_button_default",
label = @Translation("ViewsAddButtonDefault"),
target_entity = ""
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\views_add_button\Plugin\views_add_button\ViewsAddButtonDefault implements ViewsAddButtonInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of ViewsAddButtonDefault
2 files declare their use of ViewsAddButtonDefault
- ViewsAddButtonArea.php in src/
Plugin/ views/ area/ ViewsAddButtonArea.php - ViewsAddButtonField.php in src/
Plugin/ views/ field/ ViewsAddButtonField.php
File
- src/
Plugin/ views_add_button/ ViewsAddButtonDefault.php, line 19
Namespace
Drupal\views_add_button\Plugin\views_add_buttonView source
class ViewsAddButtonDefault extends PluginBase implements ViewsAddButtonInterface {
/**
* Plugin description.
*
* @return string
* A string description.
*/
public function description() {
return $this
->t('Default Views Add Button URL Generator for entitites which do not have a dedicated ViewsAddButton plugin');
}
/**
* Generate the add button URL.
*
* @param string $entity_type
* Entity type ID.
* @param string $bundle
* Bundle ID.
* @param array $options
* Array of options to be passed to the Url object.
* @param string $context
* Module-specific context string.
*
* @return \Drupal\Core\Url
* Url object which is used to construct the add button link.
*/
public static function generateUrl($entity_type, $bundle, array $options, $context = '') {
/*
* Since the create route is difficult to determine
* from entity annotations (there is not a standard
* name for a create/register form), We will make
* an assumption that a no-bundle entity has the format
* {entity_type}/add , and bundled entities are of the
* type {entity_type}/add/{bundle} . Differences are
* handled in other ViewsAddButton plugins.
*/
$u = $entity_type === $bundle ? '/' . $entity_type . '/add' : '/' . $entity_type . '/add/' . $bundle;
// Create URL from the data above.
$url = Url::fromUserInput($u, $options);
return $url;
}
/**
* Generate the add button link.
*
* @param $text
* The link text.
* @param Url $url
* The Url for constructing the link.
* @param array $options
* Array of options from the VAB settings.
*
* @return \Drupal\Core\Link
* Link object which is used to construct the add button.
*/
public static function generateLink($text, Url $url, array $options = []) {
return Link::fromTextAndUrl($text, $url);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DependencySerializationTrait:: |
protected | property | ||
DependencySerializationTrait:: |
protected | property | ||
DependencySerializationTrait:: |
public | function | 2 | |
DependencySerializationTrait:: |
public | function | 2 | |
MessengerTrait:: |
protected | property | The messenger. | 27 |
MessengerTrait:: |
public | function | Gets the messenger. | 27 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
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:: |
2 |
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 | Constructs a \Drupal\Component\Plugin\PluginBase object. | 98 |
StringTranslationTrait:: |
protected | property | The string translation service. | 4 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
ViewsAddButtonDefault:: |
public | function |
Plugin description. Overrides ViewsAddButtonInterface:: |
|
ViewsAddButtonDefault:: |
public static | function | Generate the add button link. | |
ViewsAddButtonDefault:: |
public static | function | Generate the add button URL. |