eb57be730b
- Settings Key-Value Store (DB + Cache) - Einstellungen → Layout: Seitenname, Logo, Button-Farbe, Dark/Light-Mode - Hilfe-Menü (Ebene 0): Handbuch + Changelog im Browser - Navigation erweitert: Einstellungen-Dropdown + Hilfe-Dropdown - CHANGELOG v0.4.0 Version: 0.4.0
26 lines
569 B
PHP
26 lines
569 B
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
|
|
class Setting extends Model
|
|
{
|
|
protected $fillable = ['key', 'value'];
|
|
|
|
public static function get(string $key, mixed $default = null): mixed
|
|
{
|
|
return static::where('key', $key)->value('value') ?? $default;
|
|
}
|
|
|
|
public static function set(string $key, mixed $value): void
|
|
{
|
|
static::updateOrCreate(['key' => $key], ['value' => $value]);
|
|
}
|
|
|
|
public static function allAsArray(): array
|
|
{
|
|
return static::pluck('value', 'key')->toArray();
|
|
}
|
|
}
|