. * * The interactive user interfaces in modified source and object code versions * of this program must display Appropriate Legal Notices, as required under * Section 5 of the GNU Affero General Public License version 3. * * In accordance with Section 7(b) of the GNU Affero General Public License version 3, * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ namespace Espo\Entities; use Espo\Core\Field\Link; use Espo\Core\ORM\Entity; use Espo\Repositories\Portal as PortalRepository; class Portal extends Entity { public const ENTITY_TYPE = 'Portal'; /** * @var string[] */ protected $settingsAttributeList = [ 'applicationName', 'companyLogoId', 'tabList', 'quickCreateList', 'dashboardLayout', 'dashletsOptions', 'theme', 'themeParams', 'language', 'timeZone', 'dateFormat', 'timeFormat', 'weekStart', 'defaultCurrency', ]; /** * @return string[] */ public function getSettingsAttributeList(): array { return $this->settingsAttributeList; } public function getUrl(): ?string { if (!$this->has('url') && $this->entityManager) { /** @var PortalRepository $repository */ $repository = $this->entityManager->getRDBRepositoryByClass(Portal::class); $repository->loadUrlField($this); } return $this->get('url'); } public function getAuthenticationProvider(): ?Link { /** @var ?Link */ return $this->getValueObject('authenticationProvider'); } public function getLayoutSet(): ?Link { /** @var ?Link */ return $this->getValueObject('layoutSet'); } public function isActive(): bool { return $this->get('isActive'); } }