Add MogLog System

This commit is contained in:
2026-05-06 21:08:51 +02:00
parent fdf26604f3
commit 75f631c3e6
3 changed files with 54 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ namespace App\Livewire;
use App\Enums\UserRole; use App\Enums\UserRole;
use App\Models\Episode; use App\Models\Episode;
use App\Models\ModLog;
use App\Models\User; use App\Models\User;
use App\Notifications\CommentNotification; use App\Notifications\CommentNotification;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests; use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
@@ -71,6 +72,12 @@ class Comment extends Component
$user = Auth::user(); $user = Auth::user();
if ($user->hasRole(UserRole::ADMINISTRATOR) || $user->hasRole(UserRole::MODERATOR)) { if ($user->hasRole(UserRole::ADMINISTRATOR) || $user->hasRole(UserRole::MODERATOR)) {
// Log to ModLog
ModLog::create([
'moderator' => $user->name,
'data' => "Deleted comment {$this->comment->id} written by {$this->comment->user->id} with contents: {$this->comment->body}",
]);
$this->comment->deleted_by_moderator_id = $user->id; $this->comment->deleted_by_moderator_id = $user->id;
$this->comment->save(); $this->comment->save();
$this->dispatch('refresh'); $this->dispatch('refresh');

18
app/Models/ModLog.php Normal file
View File

@@ -0,0 +1,18 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class ModLog extends Model
{
/**
* The attributes that are mass assignable.
*
* @var string[]
*/
protected $fillable = [
'moderator',
'data',
];
}

View File

@@ -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
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('mod_logs', function (Blueprint $table) {
$table->id();
$table->string('moderator');
$table->text('data');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('mod_logs');
}
};