Initial commit: Pireon Admin — headless admin panel and public API
Laravel 13 + Filament 5 admin panel and REST API for a non-profit developer collective, backed by the Pireon OAuth identity server. The public site is a separate, server-rendered application consuming /api/public/v1. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
29
app/Models/Concerns/BumpsContentVersion.php
Normal file
29
app/Models/Concerns/BumpsContentVersion.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\Models\Concerns;
|
||||
|
||||
use App\Support\ContentVersion;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
/**
|
||||
* Moves the content version on when something a visitor can see changes.
|
||||
*
|
||||
* Applied to the models the public API serves, so the frontend's cache can
|
||||
* expire the moment the site really changed rather than when a timer says so.
|
||||
*/
|
||||
trait BumpsContentVersion
|
||||
{
|
||||
public static function bootBumpsContentVersion(): void
|
||||
{
|
||||
$bump = function (Model $model): void {
|
||||
if (ContentVersion::shouldBumpFor($model)) {
|
||||
ContentVersion::bump();
|
||||
}
|
||||
};
|
||||
|
||||
static::saved($bump);
|
||||
static::deleted($bump);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user