* @since [v4.0] * @return boolean */ public function requireAcceptance() { return $this->license->category->require_acceptance; } public function getEula() { return $this->license->getEula(); } /** * Establishes the seat -> license relationship * * @author A. Gianotto * @since [v1.0] * @return \Illuminate\Database\Eloquent\Relations\Relation */ public function license() { return $this->belongsTo('\App\Models\License', 'license_id'); } /** * Establishes the seat -> assignee relationship * * @author A. Gianotto * @since [v1.0] * @return \Illuminate\Database\Eloquent\Relations\Relation */ public function user() { return $this->belongsTo('\App\Models\User', 'assigned_to')->withTrashed(); } /** * Establishes the seat -> asset relationship * * @author A. Gianotto * @since [v4.0] * @return \Illuminate\Database\Eloquent\Relations\Relation */ public function asset() { return $this->belongsTo('\App\Models\Asset', 'asset_id')->withTrashed(); } /** * Determines the assigned seat's location based on user * or asset its assigned to * * @author A. Gianotto * @since [v4.0] * @return string */ public function location() { if (($this->user) && ($this->user->location)) { return $this->user->location; } elseif (($this->asset) && ($this->asset->location)) { return $this->asset->location; } return false; } }