/** * Add available permission fields to the User form. * Mark default groups as checked for new Users. */ public function formExtendFields($form) { if ($form->getContext() == 'myaccount') { return; } if (!$this->user->isSuperUser()) { $form->removeField('permissions[superuser]'); } /* * Add permissions tab */ $form->addTabFields($this->generatePermissionFields()); /* * Mark default groups */ if (!$form->model->exists) { $defaultGroupIds = UserGroup::where('is_new_user_default', true)->lists('id'); $groupField = $form->getField('groups'); $groupField->value = $defaultGroupIds; } }
/** * Add available permission fields to the User form. * Mark default groups as checked for new Users. */ protected function formExtendFields($form) { if ($form->getContext() == 'myaccount') { return; } $permissionFields = []; foreach (BackendAuth::listPermissions() as $permission) { $fieldName = 'permissions[' . $permission->code . ']'; $fieldConfig = ['label' => $permission->label, 'comment' => $permission->comment, 'type' => 'balloon-selector', 'options' => [1 => 'backend::lang.user.allow', 0 => 'backend::lang.user.inherit', -1 => 'backend::lang.user.deny'], 'attributes' => ['data-trigger' => "input[name='User[permissions][superuser]']", 'data-trigger-type' => 'disable', 'data-trigger-condition' => 'checked'], 'span' => 'auto']; if (isset($permission->tab)) { $fieldConfig['tab'] = $permission->tab; } $permissionFields[$fieldName] = $fieldConfig; } $form->addTabFields($permissionFields); /* * Mark default groups */ if (!$form->model->exists) { $defaultGroupIds = UserGroup::where('is_new_user_default', true)->lists('id'); $groupField = $form->getField('groups'); $groupField->value = $defaultGroupIds; } }