Files
Atomcms-edit/app/Models/User/Ban.php
T

43 lines
1.4 KiB
PHP
Executable File

<?php
namespace App\Models\User;
use App\Models\Concerns\BelongsToUser;
use App\Models\User;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Spatie\Activitylog\Models\Concerns\LogsActivity;
use Spatie\Activitylog\Support\LogOptions;
/**
* @method static \Illuminate\Database\Eloquent\Builder<static>|Ban where($column, $operator = null, $value = null)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Ban orderByDesc($column)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Ban whereIn($column, $values, $boolean = 'and', $not = false)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Ban first($columns = ['*'])
* @method static \Illuminate\Database\Eloquent\Builder<static>|Ban exists()
*/
class Ban extends Model
{
use BelongsToUser;
use HasFactory;
use LogsActivity;
#[\Override]
protected $guarded = ['id', 'created_at', 'updated_at', 'user_id', 'ban_expire', 'type', 'reason'];
#[\Override]
public $timestamps = false;
public function staff(): BelongsTo
{
return $this->belongsTo(User::class, 'user_staff_id');
}
public function getActivitylogOptions(): LogOptions
{
return LogOptions::defaults()
->logOnly(['user_id', 'ip', 'ban_expire', 'ban_reason', 'type']);
}
}