belongsToMany(LocaleProxy::modelClass(), 'channel_locales'); } /** * Get the default locale */ public function default_locale(): \Illuminate\Database\Eloquent\Relations\BelongsTo { return $this->belongsTo(LocaleProxy::modelClass()); } /** * Get the channel locales. */ public function currencies(): \Illuminate\Database\Eloquent\Relations\BelongsToMany { return $this->belongsToMany(CurrencyProxy::modelClass(), 'channel_currencies'); } /** * Get the channel inventory sources. */ public function inventory_sources(): \Illuminate\Database\Eloquent\Relations\BelongsToMany { return $this->belongsToMany(InventorySourceProxy::modelClass(), 'channel_inventory_sources'); } /** * Get the base currency */ public function base_currency(): \Illuminate\Database\Eloquent\Relations\BelongsTo { return $this->belongsTo(CurrencyProxy::modelClass()); } /** * Get the base currency */ public function root_category(): \Illuminate\Database\Eloquent\Relations\BelongsTo { return $this->belongsTo(CategoryProxy::modelClass(), 'root_category_id'); } /** * Get logo image url. */ public function logo_url() { if (!$this->logo) { return; } return Storage::url($this->logo); } /** * Get logo image url. */ public function getLogoUrlAttribute() { return $this->logo_url(); } /** * Get favicon image url. */ public function favicon_url() { if (!$this->favicon) { return; } return Storage::url($this->favicon); } /** * Get favicon image url. */ public function getFaviconUrlAttribute() { return $this->favicon_url(); } /** * Create a new factory instance for the model * * @return ChannelFactory */ protected static function newFactory(): ChannelFactory { return ChannelFactory::new(); } }