![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/rentpix.corals.io/Corals/modules/Entity/Models/ |
<?php namespace Corals\Modules\Entity\Models; use Corals\Foundation\Models\BaseModel; use Corals\Foundation\Search\Indexable; use Corals\Foundation\Transformers\PresentableTrait; use Corals\Modules\Entity\Facades\EntityFacade; use Corals\Modules\Utility\Traits\Category\ModelHasCategory; use Corals\Modules\Utility\Traits\Rating\ReviewRateable; use Corals\Modules\Utility\Traits\Tag\HasTags; use Corals\Modules\Utility\Traits\Wishlist\Wishlistable; use Spatie\Activitylog\Traits\LogsActivity; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; class Entry extends BaseModel implements HasMedia { use PresentableTrait, LogsActivity, InteractsWithMedia, HasTags, ModelHasCategory, Indexable, Wishlistable, ReviewRateable; protected $table = 'entity_entries'; /** * Model configuration. * * @var string */ public $config = 'entity.models.entry'; protected $casts = [ 'properties' => 'json', 'values' => 'json', ]; protected $guarded = ['id']; public $galleryMediaCollection = 'entry-gallery'; public function getIndexContent() { $titles = EntityFacade::getFullTextSearchEntityFields($this->entity, 'content'); $columns = array_map(function ($item) { return 'values.'.$item['name']; }, $titles); return $this->getIndexDataFromColumns($columns); } public function getIndexTitle() { $titles = EntityFacade::getFullTextSearchEntityFields($this->entity, 'title'); $columns = array_map(function ($item) { return 'values.'.$item['name']; }, $titles); return $this->getIndexDataFromColumns($columns); } /** * @return \Illuminate\Database\Eloquent\Relations\BelongsTo */ public function entity() { return $this->belongsTo(Entity::class); } public function getModuleName() { return 'Entity'; } /** * @param null $key * @return string */ public function getIdentifier($key = null) { $identifiers = []; foreach (EntityFacade::getEntityIdentifiers($this->entity) as $column) { $identifiers[] = data_get($this->values, $column); } return implode(', ', $identifiers); } }