move into sonardesk

This commit is contained in:
Mark Gregory
2026-10-12 14:50:13 +01:00
parent 5f0d2ceb72
commit 38b4a7406f
879 changed files with 24021 additions and 1 deletions
@@ -0,0 +1,29 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::create('pages', function (Blueprint $table): void {
$table->id();
$table->string('title');
$table->string('slug');
$table->text('summary')->nullable();
$table->longText('content')->nullable();
$table->string('status')->default('draft');
$table->timestamp('published_at')->nullable();
$table->boolean('is_home')->default(false);
$table->timestamps();
$table->softDeletes();
});
}
public function down(): void
{
Schema::dropIfExists('pages');
}
};
@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('pages', function (Blueprint $table): void {
$table->string('template')->default('default');
$table->timestamp('expires_at')->nullable();
$table->string('preview_token', 64)->nullable()->unique();
$table->foreignId('locked_by')->nullable()->constrained('users')->nullOnDelete();
$table->timestamp('locked_at')->nullable();
});
Schema::create('page_revisions', function (Blueprint $table): void {
$table->id();
$table->foreignId('page_id')->constrained('pages')->cascadeOnDelete();
$table->foreignId('user_id')->nullable()->constrained()->nullOnDelete();
$table->string('title');
$table->longText('content')->nullable();
$table->json('snapshot');
$table->timestamps();
});
}
public function down(): void
{
Schema::dropIfExists('page_revisions');
Schema::table('pages', function (Blueprint $table): void {
$table->dropConstrainedForeignId('locked_by');
$table->dropColumn(['template', 'expires_at', 'preview_token', 'locked_at']);
});
}
};