| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- namespace Opentalent\OtTemplating\Templating;
- use Opentalent\OtCore\Page\OtPageRepository;
- use TYPO3\CMS\Core\Utility\GeneralUtility;
- /**
- * Class TemplateRepository
- * Provides methods to retrieve data about the current site's template
- *
- * @package Opentalent\OtCore\Templating
- */
- class TemplateRepository
- {
- CONST templates = [
- 'Classic' => [
- 'name' => 'Classique',
- 'description' => "Le thème classique, simple et complet. C'est le thème par défaut.",
- 'picture' => 'EXT:ot_templating/Resources/Public/media/theme_classic.png'
- ],
- 'Modern' => [
- 'name' => 'Moderne',
- 'description' => '[Nouveauté 2020] Un thème moderne et intuitif.',
- 'picture' => 'EXT:ot_templating/Resources/Public/media/theme_modern.png'
- ]
- ];
- CONST defaultTemplate = 'Classic';
- CONST defaultPreferences = [
- 'themeColor' => 'lightblue',
- 'displayCarousel' => '1'
- ];
- /**
- * Returns the current site template's name
- * @return string
- */
- public function getCurrentTemplate() {
- $pageRepository = GeneralUtility::makeInstance(OtPageRepository::class);
- $rootPageUid = $pageRepository->getCurrentSiteRootPageId();
- if (!($rootPageUid >= 0)) {
- return self::defaultTemplate;
- }
- $rootPage = $pageRepository->getPage($rootPageUid);
- $templateName = $rootPage['tx_opentalent_template'];
- if ($templateName==='') {
- return self::defaultTemplate;
- }
- return $templateName;
- }
- /**
- * Returns the current site template's name
- * @return array
- */
- public function getTemplatePreferences() {
- $pageRepository = GeneralUtility::makeInstance(OtPageRepository::class);
- $rootPageUid = $pageRepository->getCurrentSiteRootPageId();
- if (!($rootPageUid >= 0)) {
- return [];
- }
- $rootPage = $pageRepository->getPage($rootPageUid);
- $templatePreferences = $rootPage['tx_opentalent_template_preferences'];
- if ($templatePreferences==='') {
- return self::defaultPreferences;
- }
- return json_decode($templatePreferences, true);
- }
- }
|