function TestFieldWidget::onDependencyRemoval
Overrides PluginSettingsBase::onDependencyRemoval
File
- 
              core/
modules/ field/ tests/ modules/ field_test/ src/ Plugin/ Field/ FieldWidget/ TestFieldWidget.php, line 99  
Class
- TestFieldWidget
 - Plugin implementation of the 'test_field_widget' widget.
 
Namespace
Drupal\field_test\Plugin\Field\FieldWidgetCode
public function onDependencyRemoval(array $dependencies) {
  $changed = parent::onDependencyRemoval($dependencies);
  // Only the setting 'role' is resolved here. When the dependency related to
  // this setting is removed, is expected that the widget component will be
  // update accordingly in the display entity. The 'role2' setting is
  // deliberately left out from being updated. When the dependency
  // corresponding to this setting is removed, is expected that the widget
  // component will be disabled in the display entity.
  if (!empty($role_id = $this->getSetting('role'))) {
    if (!empty($dependencies['config']["user.role.{$role_id}"])) {
      $this->setSetting('role', 'anonymous');
      $changed = TRUE;
    }
  }
  return $changed;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.