public function RoleAccessControlRelationsForm::submitForm in Role Access Control 8.2
Form submission handler.
Parameters
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Overrides FormInterface::submitForm
File
- modules/
rac_relations/ src/ Form/ RoleAccessControlRelationsForm.php, line 95
Class
- RoleAccessControlRelationsForm
- Contribute form.
Namespace
Drupal\rac_relations\FormCode
public function submitForm(array &$form, FormStateInterface $form_state) {
$values = $form_state
->getValues();
$roles = user_roles();
foreach ($roles as $rid => $role) {
if ($role
->isAdmin()) {
continue;
}
foreach ($values[$rid] as $srid => $role_grant) {
$permission = 'RAC update ' . $srid;
if ($role_grant && !$role
->hasPermission($permission)) {
$role
->grantPermission($permission);
$role
->save();
}
elseif (!$role_grant && $role
->hasPermission($permission)) {
$role
->revokePermission($permission);
$role
->save();
}
}
}
$this
->messenger()
->addMessage($this
->t('Role Access Relations have been Saved'));
}