Disable Captcha & Oauth Settings actions when read only (#1968)

This commit is contained in:
MartinOscar 2025-12-08 10:33:29 +00:00 committed by GitHub
parent 7c0d53c796
commit b6aeb954c4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -297,11 +297,13 @@ class Settings extends Page implements HasSchemas
Actions::make([ Actions::make([
Action::make("disable_captcha_$id") Action::make("disable_captcha_$id")
->visible(fn (Get $get) => $get("CAPTCHA_{$id}_ENABLED")) ->visible(fn (Get $get) => $get("CAPTCHA_{$id}_ENABLED"))
->disabled(fn () => !user()?->can('update settings'))
->label(trans('admin/setting.captcha.disable')) ->label(trans('admin/setting.captcha.disable'))
->color('danger') ->color('danger')
->action(fn (Set $set) => $set("CAPTCHA_{$id}_ENABLED", false)), ->action(fn (Set $set) => $set("CAPTCHA_{$id}_ENABLED", false)),
Action::make("enable_captcha_$id") Action::make("enable_captcha_$id")
->visible(fn (Get $get) => !$get("CAPTCHA_{$id}_ENABLED")) ->visible(fn (Get $get) => !$get("CAPTCHA_{$id}_ENABLED"))
->disabled(fn () => !user()?->can('update settings'))
->label(trans('admin/setting.captcha.enable')) ->label(trans('admin/setting.captcha.enable'))
->color('success') ->color('success')
->action(fn (Set $set) => $set("CAPTCHA_{$id}_ENABLED", true)), ->action(fn (Set $set) => $set("CAPTCHA_{$id}_ENABLED", true)),
@ -568,11 +570,13 @@ class Settings extends Page implements HasSchemas
Actions::make([ Actions::make([
Action::make("disable_oauth_$id") Action::make("disable_oauth_$id")
->visible(fn (Get $get) => $get($key)) ->visible(fn (Get $get) => $get($key))
->disabled(fn () => !user()?->can('update settings'))
->label(trans('admin/setting.oauth.disable')) ->label(trans('admin/setting.oauth.disable'))
->color('danger') ->color('danger')
->action(fn (Set $set) => $set($key, false)), ->action(fn (Set $set) => $set($key, false)),
Action::make("enable_oauth_$id") Action::make("enable_oauth_$id")
->visible(fn (Get $get) => !$get($key)) ->visible(fn (Get $get) => !$get($key))
->disabled(fn () => !user()?->can('update settings'))
->label(trans('admin/setting.oauth.enable')) ->label(trans('admin/setting.oauth.enable'))
->color('success') ->color('success')
->steps($schema->getSetupSteps()) ->steps($schema->getSetupSteps())