From ec059717f6e82f4d2c46770c7586307ddbf8bdd7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Mon, 16 Jun 2025 16:01:11 -0700 Subject: [PATCH 1/3] adds id to XML textbox, now updates --- app/Http/Controllers/SettingsController.php | 2 +- resources/views/settings/saml.blade.php | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/SettingsController.php b/app/Http/Controllers/SettingsController.php index b652455a57..5071193efb 100644 --- a/app/Http/Controllers/SettingsController.php +++ b/app/Http/Controllers/SettingsController.php @@ -923,7 +923,7 @@ class SettingsController extends Controller * @since v5.0.0 */ public function postSamlSettings(SettingsSamlRequest $request) : RedirectResponse - { + { if (is_null($setting = Setting::getSettings())) { return redirect()->to('admin')->with('error', trans('admin/settings/message.update.error')); } diff --git a/resources/views/settings/saml.blade.php b/resources/views/settings/saml.blade.php index 63625e5749..c0cdcb5687 100644 --- a/resources/views/settings/saml.blade.php +++ b/resources/views/settings/saml.blade.php @@ -113,6 +113,7 @@
Date: Mon, 16 Jun 2025 16:30:00 -0700 Subject: [PATCH 2/3] saving certs sooner in the stack --- app/Http/Requests/SettingsSamlRequest.php | 4 ++++ resources/views/settings/saml.blade.php | 1 + 2 files changed, 5 insertions(+) diff --git a/app/Http/Requests/SettingsSamlRequest.php b/app/Http/Requests/SettingsSamlRequest.php index 2ab876141a..db554488e2 100644 --- a/app/Http/Requests/SettingsSamlRequest.php +++ b/app/Http/Requests/SettingsSamlRequest.php @@ -130,6 +130,10 @@ class SettingsSamlRequest extends FormRequest 'saml_sp_x509cert' => $x509cert, 'saml_sp_privatekey' => $privateKey, ]); + $setting = Setting::getSettings(); + $setting->saml_sp_x509cert = $x509cert; + $setting->saml_sp_privatekey = $privateKey; + $setting->save(); } } else { $validator->errors()->add('saml_integration', 'openssl.cnf is missing/invalid'); diff --git a/resources/views/settings/saml.blade.php b/resources/views/settings/saml.blade.php index c0cdcb5687..e57218f046 100644 --- a/resources/views/settings/saml.blade.php +++ b/resources/views/settings/saml.blade.php @@ -85,6 +85,7 @@ Date: Tue, 17 Jun 2025 10:59:57 -0700 Subject: [PATCH 3/3] comment merge methods for now --- app/Http/Requests/SettingsSamlRequest.php | 31 ++++++++++++++--------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/app/Http/Requests/SettingsSamlRequest.php b/app/Http/Requests/SettingsSamlRequest.php index db554488e2..f5483df9d2 100644 --- a/app/Http/Requests/SettingsSamlRequest.php +++ b/app/Http/Requests/SettingsSamlRequest.php @@ -41,6 +41,7 @@ class SettingsSamlRequest extends FormRequest public function withValidator($validator) { $validator->after(function ($validator) { + $setting = Setting::getSettings(); if ($this->input('saml_enabled') == '1') { $idpMetadata = $this->input('saml_idp_metadata'); if (! empty($idpMetadata)) { @@ -56,7 +57,7 @@ class SettingsSamlRequest extends FormRequest } } - $was_custom_x509cert = strpos(Setting::getSettings()->saml_custom_settings, 'sp_x509cert') !== false; + $was_custom_x509cert = strpos($setting->saml_custom_settings, 'sp_x509cert') !== false; $custom_x509cert = ''; $custom_privateKey = ''; @@ -126,14 +127,14 @@ class SettingsSamlRequest extends FormRequest } if (! (empty($x509cert) && empty($privateKey))) { - $this->merge([ - 'saml_sp_x509cert' => $x509cert, - 'saml_sp_privatekey' => $privateKey, - ]); - $setting = Setting::getSettings(); +// $this->merge([ +// 'saml_sp_x509cert' => $x509cert, +// 'saml_sp_privatekey' => $privateKey, +// ]); $setting->saml_sp_x509cert = $x509cert; $setting->saml_sp_privatekey = $privateKey; $setting->save(); + } } else { $validator->errors()->add('saml_integration', 'openssl.cnf is missing/invalid'); @@ -149,15 +150,21 @@ class SettingsSamlRequest extends FormRequest } if (! empty($x509certNew)) { - $this->merge([ - 'saml_sp_x509certNew' => $x509certNew, - ]); +// $this->merge([ +// 'saml_sp_x509certNew' => $x509certNew, +// ]); + $setting->saml_sp_x509certNew = $x509certNew; + $setting->save(); } } else { - $this->merge([ - 'saml_sp_x509certNew' => '', - ]); +// $this->merge([ +// 'saml_sp_x509certNew' => '', +// ]); + $setting->saml_sp_x509certNew = ''; + $setting->save(); } + + }); } }