/** * Get related module page URL * * @param \XLite\Model\Language $entity Language object * * @return string */ protected function getModulePageURL($entity) { $url = null; $module = $entity->getModule(); if (!empty($module) && preg_match('/(\\w+)\\\\(\\w+)/', $module, $match)) { $moduleObj = \XLite\Core\Database::getRepo('XLite\\Model\\Module')->findModuleByName($module); $url = $moduleObj->getInstalledURL(); } return $url; }
/** * Get related module page URL * * @param \XLite\Model\Language $entity Language object * * @return string */ protected function getModulePageURL($entity) { $url = null; $module = $entity->getModule(); if (!empty($module) && preg_match('/(\\w+)\\\\(\\w+)/', $module, $match)) { $params = array('clearCnd' => 1); $limit = \XLite\View\Pager\Admin\Module\Manage::getInstance()->getItemsPerPage(); $pageId = \XLite\Core\Database::getRepo('XLite\\Model\\Module')->getInstalledPageId($match[1], $match[2], $limit); if (!is_null($pageId)) { if (0 < $pageId) { $params[\XLite\View\Pager\APager::PARAM_PAGE_ID] = $pageId; } $url = $this->buildURL('addons_list_installed', '', $params) . '#' . $match[2]; } } return $url; }
/** * Return true if entity is used as a default for admin or customer interfaces * * @param \XLite\Model\Language $entity Language object * * @return boolean */ protected function isUsedAsDefault($entity) { return $entity->getDefaultCustomer() || $entity->getDefaultAdmin(); }
/** * Check if language is requried or not * * @param \XLite\Model\Language $language Language_ * * @return boolean */ public function isRequiredLanguage(\XLite\Model\Language $language) { return $language->getCode() === static::getDefaultLanguage(); }
/** * Get link to change language * * @param \XLite\Model\Language $language Language object * * @return string */ protected function getChangeLanguageLink(\XLite\Model\Language $language) { return $this->buildURL($this->getTarget(), 'change_language', array('language' => $language->getCode()) + $this->getAllParams(), false); }
/** * Check if language is selected * * @param \XLite\Model\Language $language Language to check * * @return boolean */ protected function isLanguageSelected(\XLite\Model\Language $language) { return $language->getCode() === \XLite\Core\Session::getInstance()->getLanguage()->getCode(); }
/** * {@inheritDoc} */ public function prepareEntityBeforeCommit($type) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'prepareEntityBeforeCommit', array($type)); return parent::prepareEntityBeforeCommit($type); }