File: /var/www/html/sarvodayahospital/app/Models/FaqPage.php
<?php
namespace App\Models;
use App\Scopes\isActiveScope;
use App\Scopes\isPublishedScope;
use App\Scopes\OtherSpecialityScope;
use Illuminate\Database\Eloquent\Model;
class FaqPage extends Model
{
protected $table = 'specialities';
protected $with = ['faqs', 'media'];
protected static function booted()
{
static::addGlobalScope(new isActiveScope());
static::addGlobalScope(new isPublishedScope());
static::addGlobalScope(new OtherSpecialityScope());
}
public function media()
{
return $this->hasOneThrough(
Media::class,
MediaMorph::class,
'related_id',
'id',
'id',
'upload_file_id'
)
->where('related_type', 'specialities')
->where('field', 'SpecialityIcon')
->orderBy('order')
->select('upload_file_morph.id', 'name', 'url', 'formats');
}
public function faqs()
{
return $this->hasManyThrough(
FAQ::class,
SpecialityComponent::class,
'speciality_id',
'id',
'id',
'component_id'
)->where('field', 'FAQ')
->where('component_type', 'components_faq_faqs')
->orderBy('order');
}
}