sent_date)) { $status = ctrans('texts.invitation_status_sent'); } if (isset($this->opened_date)) { $status = ctrans('texts.invitation_status_opened'); } if (isset($this->viewed_date)) { $status = ctrans('texts.invitation_status_viewed'); } return $status; } public function getLink() :string { $entity_type = Str::snake(class_basename($this->entityType())); if(Ninja::isHosted()) $domain = isset($this->company->portal_domain) ? $this->company->portal_domain : $this->company->domain(); else $domain = config('ninja.app_url'); switch ($this->company->portal_mode) { case 'subdomain': return $domain.'/client/'.$entity_type.'/'.$this->key; break; case 'iframe': return $domain.'/client/'.$entity_type.'/'.$this->key; //return $domain . $entity_type .'/'. $this->contact->client->client_hash .'/'. $this->key; break; case 'domain': return $domain.'/client/'.$entity_type.'/'.$this->key; break; default: return ''; break; } } public function getPortalLink() :string { if(Ninja::isHosted()) $domain = isset($this->company->portal_domain) ? $this->company->portal_domain : $this->company->domain(); else $domain = config('ninja.app_url'); switch ($this->company->portal_mode) { case 'subdomain': return $domain.'/client/'; break; case 'iframe': return $domain.'/client/'; //return $domain . $entity_type .'/'. $this->contact->client->client_hash .'/'. $this->key; break; case 'domain': return $domain.'/client/'; break; default: return ''; break; } } public function getAdminLink() :string { return $this->getLink().'?silent=true'; } }