class ForumUninstallValidator implements ModuleUninstallValidatorInterface (View source)

Prevents forum module from being uninstalled whilst any forum nodes exist or there are any terms in the forum vocabulary.

Traits

Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.

Properties

protected TranslationInterface $stringTranslation

The string translation service.

from  StringTranslationTrait
protected EntityTypeManagerInterface $entityTypeManager

The entity type manager.

protected ConfigFactoryInterface $configFactory

The config factory.

Methods

t(string $string, array $args = [], array $options = [])

Translates a string to the current language or to a given language.

formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

getStringTranslation()

Gets the string translation service.

$this
setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

__construct(EntityTypeManagerInterface $entity_type_manager, ConfigFactoryInterface $config_factory, TranslationInterface $string_translation)

Constructs a new ForumUninstallValidator.

string[]
validate(string $module)

Determines the reasons a module can not be uninstalled.

bool
hasForumNodes()

Determines if there are any forum nodes or not.

bool
hasTermsForVocabulary(VocabularyInterface $vocabulary)

Determines if there are any taxonomy terms for a specified vocabulary.

getForumVocabulary()

Returns the vocabulary configured for forums.

Details

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

Parameters

string $string

A string containing the English text to translate.

array $args

(optional) An associative array of replacements to make after translation. Based on the first character of the key, the value is escaped and/or themed. See \Drupal\Component\Render\FormattableMarkup::placeholderFormat() for details.

array $options

(optional) An associative array of additional options, with the following elements:

  • 'langcode' (defaults to the current language): A language code, to translate to a language other than what is used to display the page.
  • 'context' (defaults to the empty context): The context the source string belongs to. See the @link i18n Internationalization topic @endlink for more information about string contexts.

Return Value

TranslatableMarkup

An object that, when cast to a string, returns the translated string.

See also

FormattableMarkup::placeholderFormat
TranslatableMarkup::__construct

protected formatPlural($count, $singular, $plural, array $args = [], array $options = [])

Formats a string containing a count of items.

Parameters

$count
$singular
$plural
array $args
array $options

See also

TranslationInterface::formatPlural

protected getNumberOfPlurals($langcode = NULL)

Returns the number of plurals supported by a given language.

Parameters

$langcode

See also

PluralFormulaInterface::getNumberOfPlurals

protected TranslationInterface getStringTranslation()

Gets the string translation service.

Return Value

TranslationInterface

The string translation service.

$this setStringTranslation(TranslationInterface $translation)

Sets the string translation service to use.

Parameters

TranslationInterface $translation

The string translation service.

Return Value

$this

__construct(EntityTypeManagerInterface $entity_type_manager, ConfigFactoryInterface $config_factory, TranslationInterface $string_translation)

Constructs a new ForumUninstallValidator.

Parameters

EntityTypeManagerInterface $entity_type_manager

The entity type manager.

ConfigFactoryInterface $config_factory

The config factory.

TranslationInterface $string_translation

The string translation service.

string[] validate(string $module)

Determines the reasons a module can not be uninstalled.

Parameters

string $module

A module name.

Return Value

string[]

An array of reasons the module can not be uninstalled, empty if it can. Each reason should not end with any punctuation since multiple reasons can be displayed together.

protected bool hasForumNodes()

Determines if there are any forum nodes or not.

Return Value

bool

TRUE if there are forum nodes, FALSE otherwise.

protected bool hasTermsForVocabulary(VocabularyInterface $vocabulary)

Determines if there are any taxonomy terms for a specified vocabulary.

Parameters

VocabularyInterface $vocabulary

The vocabulary to check for terms.

Return Value

bool

TRUE if there are terms for this vocabulary, FALSE otherwise.

protected VocabularyInterface getForumVocabulary()

Returns the vocabulary configured for forums.

Return Value

VocabularyInterface

The vocabulary entity for forums.