'date', 'activity' => ActivityTypeEnum::class, 'model_lie' => CellModelEnum::class ]; // * RELATIONSHIPS /** * BelongsTo User relation * * @return \Illuminate\Database\Eloquent\Relations\BelongsTo */ public function user() { return $this->belongsTo(User::class); } /** * Relationship to linked objet * * @return \Illuminate\Database\Eloquent\Relations\BelongsTo */ public function relatedModel() { switch ($this->model_lie->value) { case 'sites': return $this->belongsTo(Site::class, 'id_lie'); case 'projects': return $this->belongsTo(Project::class, 'id_lie'); case 'tickets': return $this->belongsTo(Ticket::class, 'id_lie'); default: return new BelongsTo($this->newQuery(), $this, '', '', ''); } } }