Files
Paymenter-Version-Tracks/app/Events/Setting/Saved.php
Muhammad Tamir b3933b9960 v1.4.0
2025-11-14 10:59:24 +07:00

35 lines
1.1 KiB
PHP

<?php
namespace App\Events\Setting;
use App\Models\Setting;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\Config;
class Saved
{
use Dispatchable, InteractsWithSockets, SerializesModels;
/**
* Create a new event instance.
*/
public function __construct(public Setting $setting)
{
// This event is dispatched after a setting is saved.
// We are gonna overwrite the value of the setting
if ($setting->settingable_type === null) {
$cSetting = \App\Classes\Settings::getSetting($setting->key);
// Set the config value for the setting
$settings = config('settings', []);
$settings[$setting->key] = $setting->value;
Config::set('settings', $settings);
// Does it have overrides?
if (isset($cSetting->override) && config("settings.$cSetting->name") !== null) {
Config::set($cSetting->override, config("settings.$cSetting->name"));
}
}
}
}