unset($attributes['storeGuidArray']);
// Проверяем права на изменение group_id
- $originalGroupId = $attributes['group_id'] ?? $model->group_id;
- $canChangeGroupId = Yii::$app->user->can("updateAdminSettingsGroupId", ['group_id' => $originalGroupId]);
+ // Если group_id не передан в POST, используем текущий из модели
+ $newGroupId = $attributes['group_id'] ?? $model->group_id;
- // Если нет прав на изменение group_id - используем текущий group_id из модели
- if (!$canChangeGroupId) {
- $attributes['group_id'] = $model->group_id;
+ // Проверяем права только если group_id действительно меняется
+ if ($newGroupId != $model->group_id) {
+ $canChangeGroupId = Yii::$app->user->can("updateAdminSettingsGroupId", ['group_id' => $newGroupId]);
+
+ // Если нет прав на изменение group_id - используем текущий group_id из модели
+ if (!$canChangeGroupId) {
+ $attributes['group_id'] = $model->group_id;
+ }
}
if (!Yii::$app->user->can("updateAdminSettingsOnlyByHrAndAdministrator")) {