44 lines
959 B
PHP
44 lines
959 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Models;
|
||
|
|
||
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||
|
use Illuminate\Database\Eloquent\Model;
|
||
|
|
||
|
class SiteUri extends Model
|
||
|
{
|
||
|
use HasFactory;
|
||
|
|
||
|
protected $fillable = [
|
||
|
'uri',
|
||
|
];
|
||
|
|
||
|
/* RELATIONS */
|
||
|
|
||
|
public function site()
|
||
|
{
|
||
|
return $this->belongsTo(Site::class);
|
||
|
}
|
||
|
|
||
|
/* ATTRIBUTES */
|
||
|
|
||
|
public function getActiveAttribute(bool $value): bool
|
||
|
{
|
||
|
return $value && (strlen($this->redirect) > 0);
|
||
|
}
|
||
|
|
||
|
public function getDelayAttribute(int $value=NULL): int
|
||
|
{
|
||
|
return $this->active && $value ? $value : $this->site->delay;
|
||
|
}
|
||
|
|
||
|
public function getMessageAttribute(string $value=NULL): string
|
||
|
{
|
||
|
return $this->active && $value ? $value : $this->site->message;
|
||
|
}
|
||
|
|
||
|
public function getRedirectAttribute(string $value=NULL): string
|
||
|
{
|
||
|
return ($x=($this->getRawOriginal('active') && $value ? $value : $this->site->redirect)) ? $x.(request()->getRequestUri() != '/' ? request()->getRequestUri() : '') : '';
|
||
|
}
|
||
|
}
|