diff --git a/layout/startPage.html b/layout/startPage.html index cfced80ef7763ebe3fe8c0f43f43e34d21abad7b..3cd9d3e142fffe0330b4253affe04a88aed6f086 100644 --- a/layout/startPage.html +++ b/layout/startPage.html @@ -1,7 +1,9 @@ - {assign var=prefixContentBricks value=$BricksManager->getBricksByArea('contentPrefix', $Site)} {assign var=suffixContentBricks value=$BricksManager->getBricksByArea('contentSuffix', $Site)} +{assign var=pageTitle value=$Template->getAttribute('pageTitle')} +{assign var=pageShort value=$Template->getAttribute('settings.pageShortDesc')} + <div class="main-start-page"> {if !empty( $prefixContentBricks )} {foreach from=$prefixContentBricks item=Brick} @@ -27,21 +29,25 @@ > <div class="page-content-header-emotion-container"> {if $pageTitle == 'header' || $pageTitle == 'both'} - <h1>{$Site->getAttribute('title')|nl2br}</h1> + <h1>{$Site->getAttribute('title')|nl2br}</h1> + {/if} + {if $pageShort} + <div class="page-content-emotion-short"> + {$Site->getAttribute('short')|nl2br} + </div> {/if} - <div class="page-content-emotion-short"> - {$Site->getAttribute('short')|nl2br} - </div> </div> </header> - {else} + {elseif ($pageTitle == 'header' || $pageTitle == 'header') || $pageShort} <header class="page-content-header"> {if $pageTitle == 'header' || $pageTitle == 'both'} - <h1>{$Site->getAttribute('title')|nl2br}</h1> + <h1>{$Site->getAttribute('title')|nl2br}</h1> + {/if} + {if $pageShort} + <div class="page-content-emotion-short"> + {$Site->getAttribute('short')|nl2br} + </div> {/if} - <div class="page-content-emotion-short"> - {$Site->getAttribute('short')|nl2br} - </div> </header> {/if} {/if} diff --git a/locale.xml b/locale.xml index 8a07b03d38bea563d4caa2bab5a735a189b0bd83..9cbed68f6ca236a12c4c3bfe50782b73699849e1 100644 --- a/locale.xml +++ b/locale.xml @@ -616,6 +616,16 @@ <en><![CDATA[Disabled]]></en> </locale> + <!-- page short description --> + <locale name="settings.pageShortDesc.title"> + <de><![CDATA[Kurzbeschreibung]]></de> + <en><![CDATA[Short description]]></en> + </locale> + <locale name="settings.pageShortDesc.text"> + <de><![CDATA[Die Kurzbeschreibung kann pro Seiten-Layout de- bzw aktiviert werden.]]></de> + <en><![CDATA[The page description can be enabled or disabled per page layout.]]></en> + </locale> + <!-- category menu --> <locale name="settings.categoryMenu.title"> <de><![CDATA[Shop-Kategorie Navigation]]></de> diff --git a/settings.xml b/settings.xml index db4be4abfade35e68c9bafbc27042c94b5b622aa..92d479b81775cd6378814c34a23be20653a77ee5 100644 --- a/settings.xml +++ b/settings.xml @@ -142,6 +142,28 @@ <defaultvalue>breadcrumb</defaultvalue> </conf> + <!-- page short description --> + <conf name="shortDescStartPage"> + <type><![CDATA[bool]]></type> + <defaultvalue>0</defaultvalue> + </conf> + <conf name="shortDescNoSidebar"> + <type><![CDATA[bool]]></type> + <defaultvalue>1</defaultvalue> + </conf> + <conf name="shortDescNoSidebarThin"> + <type><![CDATA[bool]]></type> + <defaultvalue>1</defaultvalue> + </conf> + <conf name="shortDescLeftSidebar"> + <type><![CDATA[bool]]></type> + <defaultvalue>1</defaultvalue> + </conf> + <conf name="shortDescRightSidebar"> + <type><![CDATA[bool]]></type> + <defaultvalue>1</defaultvalue> + </conf> + <!-- header img height position --> <conf name="headerHeight"> <type><![CDATA[integer]]></type> @@ -986,6 +1008,68 @@ </select> </settings> + <!-- page title --> + <settings title="templateCologne.settings" + name="templateCologne.pageShort.settings"> + <title> + <locale group="quiqqer/template-cologne" + var="settings.pageShortDesc.title" + /> + </title> + + + <text> + <locale group="quiqqer/template-cologne" + var="settings.pageShortDesc.text"/> + </text> + + <input conf="templateCologne.settings.shortDescStartPage" + type="checkbox"> + <text> + <locale group="quiqqer/template-cologne" + var="admin.layout.startpage" + /> + </text> + </input> + + <input conf="templateCologne.settings.shortDescNoSidebar" + type="checkbox"> + <text> + <locale group="quiqqer/template-cologne" + var="admin.layout.noSidebar" + /> + </text> + </input> + + <input conf="templateCologne.settings.shortDescNoSidebarThin" + type="checkbox"> + <text> + <locale group="quiqqer/template-cologne" + var="admin.layout.noSidebarThin" + /> + </text> + </input> + + <input conf="templateCologne.settings.shortDescLeftSidebar" + type="checkbox"> + <text> + <locale group="quiqqer/template-cologne" + var="admin.layout.leftSidebar" + /> + </text> + </input> + + <input conf="templateCologne.settings.shortDescRightSidebar" + type="checkbox"> + <text> + <locale group="quiqqer/template-cologne" + var="admin.layout.rightSidebar" + /> + </text> + </input> + + </settings> + <!-- category menu --> <settings title="templateCologne.settings" name="templateCologne.categoryMenu.settings"> diff --git a/src/QUI/TemplateCologne/Utils.php b/src/QUI/TemplateCologne/Utils.php index f11d3bc9f375964db8db9735724cb864a03d4c74..dda1cff542adb815b3174ffb2cfa6f5924651e00 100644 --- a/src/QUI/TemplateCologne/Utils.php +++ b/src/QUI/TemplateCologne/Utils.php @@ -103,6 +103,7 @@ public static function getConfig($params) */ $header = 'hide'; $pageTitle = 'breadcrumb'; // where to show page title: in header, in breadcrumb or both? + $pageShortDesc = false; $showBreadcrumb = false; $showTopBar = true; $showNav = true; @@ -114,6 +115,7 @@ public static function getConfig($params) case 'layout/startPage': $header = $Project->getConfig('templateCologne.settings.headerStartPage'); $pageTitle = $Project->getConfig('templateCologne.settings.pageTitleStartPage'); + $pageShortDesc = $Project->getConfig('templateCologne.settings.shortDescStartPage'); $showBreadcrumb = $Project->getConfig('templateCologne.settings.showBreadcrumbStartPage'); $siteType = 'layout-start-page'; break; @@ -121,6 +123,7 @@ public static function getConfig($params) case 'layout/noSidebar': $header = $Project->getConfig('templateCologne.settings.headerNoSidebar'); $pageTitle = $Project->getConfig('templateCologne.settings.pageTitleNoSidebar'); + $pageShortDesc = $Project->getConfig('templateCologne.settings.shortDescNoSidebar'); $showBreadcrumb = $Project->getConfig('templateCologne.settings.showBreadcrumbNoSidebar'); $siteType = 'layout-no-sidebar'; break; @@ -128,6 +131,7 @@ public static function getConfig($params) case 'layout/noSidebarThin': $header = $Project->getConfig('templateCologne.settings.headerNoSidebarThin'); $pageTitle = $Project->getConfig('templateCologne.settings.pageTitleNoSidebarThin'); + $pageShortDesc = $Project->getConfig('templateCologne.settings.shortDescNoSidebarThin'); $showBreadcrumb = $Project->getConfig('templateCologne.settings.showBreadcrumbNoSidebarThin'); $siteType = 'layout-no-sidebar'; break; @@ -135,6 +139,7 @@ public static function getConfig($params) case 'layout/rightSidebar': $header = $Project->getConfig('templateCologne.settings.headerRightSidebar'); $pageTitle = $Project->getConfig('templateCologne.settings.pageTitleRightSidebar'); + $pageShortDesc = $Project->getConfig('templateCologne.settings.shortDescLeftSidebar'); $showBreadcrumb = $Project->getConfig('templateCologne.settings.showBreadcrumbRightSidebar'); $siteType = 'layout-right-sidebar'; break; @@ -142,13 +147,16 @@ public static function getConfig($params) case 'layout/leftSidebar': $header = $Project->getConfig('templateCologne.settings.headerLeftSidebar'); $pageTitle = $Project->getConfig('templateCologne.settings.pageTitleLeftSidebar'); + $pageShortDesc = $Project->getConfig('templateCologne.settings.shortDescRightSidebar'); $showBreadcrumb = $Project->getConfig('templateCologne.settings.showBreadcrumbLeftSidebar'); $siteType = 'layout-left-sidebar'; break; } - if ($Site->getAttribute('type') === 'quiqqer/order:types/orderingProcess' || - $Site->getAttribute('type') === 'quiqqer/order:types/shoppingCart') { + if ( + $Site->getAttribute('type') === 'quiqqer/order:types/orderingProcess' || + $Site->getAttribute('type') === 'quiqqer/order:types/shoppingCart' + ) { switch ($Project->getConfig('templateCologne.settings.checkoutAppearance')) { case 'compact': $showBreadcrumb = false; @@ -275,7 +283,7 @@ public static function getConfig($params) $showTopbarLanguageSwitch = false; $showTopbarCurrencySwitch = false; break; - + case 'currencyAndLang': default: $showTopbarLanguageSwitch = true; @@ -290,6 +298,7 @@ public static function getConfig($params) $config['header'] = $header; $config['logoHeight'] = $logoHeight; $config['pageTitle'] = $pageTitle; + $config['settings.pageShortDesc'] = $pageShortDesc; $config['showBreadcrumb'] = $showBreadcrumb; $config['minimalDesign'] = $minimalDesign; $config['showTopBar'] = $showTopBar; @@ -337,9 +346,12 @@ private static function getPredefinedFooter($Project) if ($Project->getConfig('templateCologne.settings.predefinedFooter.shortText')) { $shortText = []; - $titles = json_decode($Project->getConfig( - 'templateCologne.settings.predefinedFooter.shortText.title' - ), true); + $titles = json_decode( + $Project->getConfig( + 'templateCologne.settings.predefinedFooter.shortText.title' + ), + true + ); $title = false; @@ -356,9 +368,12 @@ private static function getPredefinedFooter($Project) if ($Project->getConfig('templateCologne.settings.predefinedFooter.urlList')) { $urlList = []; - $titles = json_decode($Project->getConfig( - 'templateCologne.settings.predefinedFooter.urlList.title' - ), true); + $titles = json_decode( + $Project->getConfig( + 'templateCologne.settings.predefinedFooter.urlList.title' + ), + true + ); $title = false; @@ -482,9 +497,12 @@ private static function getPredefinedFooter($Project) $featuredProducts['controlParsed'] = QUI\ControlUtils::parse($FeaturedProduct); - $titles = json_decode($Project->getConfig( - 'templateCologne.settings.predefinedFooter.featuredProducts.title' - ), true); + $titles = json_decode( + $Project->getConfig( + 'templateCologne.settings.predefinedFooter.featuredProducts.title' + ), + true + ); $title = false; @@ -498,17 +516,22 @@ private static function getPredefinedFooter($Project) /** Predefined footer: Payments Control */ $paymentsData = false; - if ($Project->getConfig('templateCologne.settings.predefinedFooter.payments') && - \class_exists('\QUI\ERP\Accounting\Payments\Payments')) { + if ( + $Project->getConfig('templateCologne.settings.predefinedFooter.payments') && + \class_exists('\QUI\ERP\Accounting\Payments\Payments') + ) { $PaymentsControl = new \QUI\TemplateCologne\Controls\Payments([ 'template' => $Project->getConfig('templateCologne.settings.predefinedFooter.payments.layout') ]); $paymentsData['controlParsed'] = QUI\ControlUtils::parse($PaymentsControl); - $titles = json_decode($Project->getConfig( - 'templateCologne.settings.predefinedFooter.payments.title' - ), true); + $titles = json_decode( + $Project->getConfig( + 'templateCologne.settings.predefinedFooter.payments.title' + ), + true + ); $title = false;