/** * Returns array of website translation languages for viewing related to user and all related roles * * @return array|null */ public function getMergedWebsiteTranslationLanguagesView() { if (null === $this->mergedWebsiteTranslationLanguagesView) { $this->mergedWebsiteTranslationLanguagesView = $this->getWebsiteTranslationLanguagesView(); foreach ($this->getRoles() as $role) { /** @var User\UserRole $userRole */ $userRole = User\UserRole::getById($role); $this->mergedWebsiteTranslationLanguagesView = array_merge($this->mergedWebsiteTranslationLanguagesView, $userRole->getWebsiteTranslationLanguagesView()); } $this->mergedWebsiteTranslationLanguagesView = array_values($this->mergedWebsiteTranslationLanguagesView); } return $this->mergedWebsiteTranslationLanguagesView; }
/** * * @param string $permissionName * @return array */ public function getPermission($permissionName) { if ($this->isAdmin()) { return true; } return parent::getPermission($permissionName); }