getCode()); } public function getAdminIncludesTranslationDomain() { return $this->getTranslationDomain().'.ai'; } public function getAbsoluteBackOfficeTemplatePath($subdir) { return sprintf("%s".DS."%s".DS."%s", $this->getAbsoluteTemplateBasePath(), TemplateDefinition::BACK_OFFICE_SUBDIR, $subdir ); } public function getAbsoluteBackOfficeI18nTemplatePath($subdir) { return sprintf("%s".DS."%s".DS."%s", $this->getAbsoluteI18nPath(), TemplateDefinition::BACK_OFFICE_SUBDIR, $subdir ); } public function getBackOfficeTemplateTranslationDomain($templateName) { return $this->getTranslationDomain(). '.bo.' . $templateName; } public function getAbsoluteFrontOfficeTemplatePath($subdir) { return sprintf("%s".DS."%s".DS."%s", $this->getAbsoluteTemplateBasePath(), TemplateDefinition::FRONT_OFFICE_SUBDIR, $subdir ); } public function getAbsoluteFrontOfficeI18nTemplatePath($subdir) { return sprintf("%s".DS."%s".DS."%s", $this->getAbsoluteI18nPath(), TemplateDefinition::FRONT_OFFICE_SUBDIR, $subdir ); } public function getFrontOfficeTemplateTranslationDomain($templateName) { return $this->getTranslationDomain(). '.fo.' . $templateName; } /** * @return the module's base directory path, relative to THELIA_MODULE_DIR */ public function getBaseDir() { return ucfirst($this->getCode()); } /** * @return the module's base directory path, relative to THELIA_MODULE_DIR */ public function getAbsoluteBaseDir() { return THELIA_MODULE_DIR . $this->getBaseDir(); } /** * @return the module's config directory path, relative to THELIA_MODULE_DIR */ public function getConfigPath() { return $this->getBaseDir() . DS . "Config"; } /** * @return the module's config absolute directory path */ public function getAbsoluteConfigPath() { return THELIA_MODULE_DIR . $this->getConfigPath(); } /** * @return the module's i18N directory path, relative to THELIA_MODULE_DIR */ public function getI18nPath() { return $this->getBaseDir() . DS . "I18n"; } /** * @return the module's i18N absolute directory path */ public function getAbsoluteI18nPath() { return THELIA_MODULE_DIR . $this->getI18nPath(); } /** * @return the module's AdminIncludes absolute directory path */ public function getAbsoluteAdminIncludesPath() { return $this->getAbsoluteBaseDir() . DS . self::ADMIN_INCLUDES_DIRECTORY_NAME; } /** * @return the module's AdminIncludes i18N absolute directory path */ public function getAbsoluteAdminIncludesI18nPath() { return THELIA_MODULE_DIR . $this->getI18nPath() . DS . self::ADMIN_INCLUDES_DIRECTORY_NAME; } /** * Return the absolute path to the module's template directory * * @return string a path */ public function getAbsoluteTemplateBasePath() { return $this->getAbsoluteBaseDir() . DS . 'templates'; } /** * Return the absolute path to one of the module's template directories * * @param int $templateSubdirName the name of the, probably one of TemplateDefinition::xxx_SUBDIR constants * @return string a path */ public function getAbsoluteTemplateDirectoryPath($templateSubdirName) { return $this->getAbsoluteTemplateBasePath() .DS. $templateSubdirName; } /** * Calculate next position relative to module type */ protected function addCriteriaToPositionQuery($query) { $query->filterByType($this->getType()); } /** * {@inheritDoc} */ public function preInsert(ConnectionInterface $con = null) { $this->setPosition($this->getNextPosition()); return true; } }