Files
Gw0bm/app/Models/ModeratorLog.php
2021-06-25 08:25:11 +00:00

42 lines
1.5 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
/**
* App\Models\ModeratorLog
*
* @property integer $id
* @property integer $user_id
* @property string $type
* @property string $target_type
* @property integer $target_id
* @property \Carbon\Carbon $created_at
* @property \Carbon\Carbon $updated_at
* @property-read User $user
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereId($value)
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereType($value)
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereTargetType($value)
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereTargetId($value)
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereCreatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\App\Models\ModeratorLog whereUpdatedAt($value)
*/
class ModeratorLog extends Model
{
public function user() {
return $this->belongsTo(User::class);
}
public function getTarget() {
$target_type = $this->target_type;
switch ($target_type) {
case 'user': return User::find($this->target_id);
case 'comment': return Comment::find($this->target_id);
case 'video': return Video::find($this->target_id);
default: return null;
}
}
}