| Current Path : /var/www/html/dynaweb-cms-v1/app/Models/Backend/ |
| Current File : /var/www/html/dynaweb-cms-v1/app/Models/Backend/ContentFeedbackMessage.php |
<?php
namespace App\Models\Backend;
use Illuminate\Database\Eloquent\Attributes\Fillable;
use Illuminate\Database\Eloquent\Attributes\Table;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
#[Table('content_feedback_messages')]
#[Fillable([
'feedback_id',
'message',
'read_status',
'send_to',
'created_user_type',
'created_at',
'created_by',
])]
class ContentFeedbackMessage extends Model
{
use HasFactory;
public $timestamps = false;
protected function casts(): array
{
return [
'created_at' => 'datetime',
];
}
public function feedback(): BelongsTo
{
return $this->belongsTo(ContentFeedbackMain::class, 'feedback_id', 'id');
}
public function sender(): BelongsTo
{
return $this->belongsTo(BackendUser::class, 'created_by');
}
public function getSenderLabelAttribute(): string
{
$name = $this->sender ? trim($this->sender->first_name . ' ' . $this->sender->last_name) : null;
$role = $this->sender?->roles->first()?->name;
return $name && $role ? "$name ($role)" : ($name ?: 'Admin');
}
}