function allowed_languages_field_widget_language_select_form_alter in Allowed Languages 2.x
Same name and namespace in other branches
- 8 allowed_languages.module \allowed_languages_field_widget_language_select_form_alter()
Implements hook_field_widget_WIDGET_TYPE_form_alter().
Apply a pre-render function to the language select field widget.
File
- ./
allowed_languages.module, line 58 - Contains allowed_languages.module.
Code
function allowed_languages_field_widget_language_select_form_alter(&$element, FormStateInterface $form_state, $context) {
$form_object = $form_state
->getFormObject();
// We're only interested in altering forms for content entities.
if (!$form_object instanceof ContentEntityFormInterface) {
return;
}
// We can translate all languages.
if (\Drupal::currentUser()
->hasPermission('translate all languages')) {
return;
}
// Only alter translatable entity types.
$entity = $form_object
->getEntity();
if (!$entity
->isTranslatable()) {
return;
}
$element['#pre_render'][] = [
AllowedLanguagesTrustedCallbacks::class,
'languageSelectWidgetPreRender',
];
}