feat(main): Add base theme: This is the falcon theme out of the box.

This commit is contained in:
2025-11-18 14:04:01 +01:00
parent 3a7f2db331
commit 85f9b038a7
604 changed files with 49818 additions and 0 deletions

View File

@ -0,0 +1,44 @@
{**
* Copyright since 2007 PrestaShop SA and Contributors
* PrestaShop is an International Registered Trademark & Property of PrestaShop SA
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
* that is bundled with this package in the file LICENSE.md.
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to https://devdocs.prestashop.com/ for more information.
*
* @author PrestaShop SA and Contributors <contact@prestashop.com>
* @copyright Since 2007 PrestaShop SA and Contributors
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
*}
{block name='sitemap_item'}
<div class="list-group list-group-flush list-group-collapse">
{foreach $links as $link}
{if !empty($link.children)}
<div class="list-group-item list-group-item-action-dropdown">
<a class="text-reset stretched-link" id="{$link.id}" href="{$link.url}" title="{$link.label}">
{$link.label}
</a>
</div>
{include file='cms/_partials/sitemap-nested-list.tpl' links=$link.children}
{else}
<a class="list-group-item list-group-item-action" id="{$link.id}" href="{$link.url}" title="{$link.label}">
{$link.label}
</a>
{/if}
{/foreach}
</div>
{/block}

View File

@ -0,0 +1,53 @@
{**
* Copyright since 2007 PrestaShop SA and Contributors
* PrestaShop is an International Registered Trademark & Property of PrestaShop SA
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
* that is bundled with this package in the file LICENSE.md.
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to https://devdocs.prestashop.com/ for more information.
*
* @author PrestaShop SA and Contributors <contact@prestashop.com>
* @copyright Since 2007 PrestaShop SA and Contributors
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
*}
{extends file='page.tpl'}
{block name='page_title'}
{$cms_category.name}
{/block}
{block name='page_content'}
{block name='cms_sub_categories'}
{if $sub_categories}
<p>{l s='List of sub categories in %name%:' d='Shop.Theme.Global' sprintf=['%name%' => $cms_category.name]}</p>
<ul>
{foreach from=$sub_categories item=sub_category}
<li><a href="{$sub_category.link}">{$sub_category.name}</a></li>
{/foreach}
</ul>
{/if}
{/block}
{block name='cms_sub_pages'}
{if $cms_pages}
<p>{l s='List of pages in %category_name%:' d='Shop.Theme.Global' sprintf=['%category_name%' => $cms_category.name]}</p>
<ul>
{foreach from=$cms_pages item=cms_page}
<li><a href="{$cms_page.link}">{$cms_page.meta_title}</a></li>
{/foreach}
</ul>
{/if}
{/block}
{/block}

49
templates/cms/page.tpl Normal file
View File

@ -0,0 +1,49 @@
{**
* Copyright since 2007 PrestaShop SA and Contributors
* PrestaShop is an International Registered Trademark & Property of PrestaShop SA
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
* that is bundled with this package in the file LICENSE.md.
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to https://devdocs.prestashop.com/ for more information.
*
* @author PrestaShop SA and Contributors <contact@prestashop.com>
* @copyright Since 2007 PrestaShop SA and Contributors
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
*}
{extends file='page.tpl'}
{block name='page_title'}
{$cms.meta_title}
{/block}
{block name='page_content_container'}
<section id="content" class="page-content cms-content page-cms page-cms-{$cms.id}">
{block name='cms_content'}
{cms_images_block webpEnabled=$webpEnabled}
{$cms.content nofilter}
{/cms_images_block}
{/block}
{block name='hook_cms_dispute_information'}
{hook h='displayCMSDisputeInformation'}
{/block}
{block name='hook_cms_print_button'}
{hook h='displayCMSPrintButton'}
{/block}
</section>
{/block}

74
templates/cms/sitemap.tpl Normal file
View File

@ -0,0 +1,74 @@
{**
* Copyright since 2007 PrestaShop SA and Contributors
* PrestaShop is an International Registered Trademark & Property of PrestaShop SA
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
* that is bundled with this package in the file LICENSE.md.
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to https://devdocs.prestashop.com/ for more information.
*
* @author PrestaShop SA and Contributors <contact@prestashop.com>
* @copyright Since 2007 PrestaShop SA and Contributors
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
*}
{extends file='page.tpl'}
{block name='page_title'}
{l s='Sitemap' d='Shop.Theme.Global'}
{/block}
{block name='page_content_container'}
<div class="row">
<div class="col-lg-3 col-sm-6 col-12 mb-4">
<div class="card">
<div class="card-header">
<h2 class="card-title h5 mb-0">
{$our_offers}
</h2>
</div>
{include file='cms/_partials/sitemap-nested-list.tpl' links=$links.offers}
</div>
</div>
<div class="col-lg-3 col-sm-6 col-12 mb-4">
<div class="card">
<div class="card-header">
<h2 class="card-title h5 mb-0">
{$categories}
</h2>
</div>
{include file='cms/_partials/sitemap-nested-list.tpl' links=$links.categories}
</div>
</div>
<div class="col-lg-3 col-sm-6 col-12 mb-4">
<div class="card">
<div class="card-header">
<h2 class="card-title h5 mb-0">
{$your_account}
</h2>
</div>
{include file='cms/_partials/sitemap-nested-list.tpl' links=$links.user_account}
</div>
</div>
<div class="col-lg-3 col-sm-6 col-12 mb-4">
<div class="card">
<div class="card-header">
<h2 class="card-title h5 mb-0">
{$pages}
</h2>
</div>
{include file='cms/_partials/sitemap-nested-list.tpl' links=$links.pages}
</div>
</div>
</div>
{/block}

148
templates/cms/stores.tpl Normal file
View File

@ -0,0 +1,148 @@
{**
* Copyright since 2007 PrestaShop SA and Contributors
* PrestaShop is an International Registered Trademark & Property of PrestaShop SA
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
* that is bundled with this package in the file LICENSE.md.
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to https://devdocs.prestashop.com/ for more information.
*
* @author PrestaShop SA and Contributors <contact@prestashop.com>
* @copyright Since 2007 PrestaShop SA and Contributors
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
*}
{extends file='page.tpl'}
{block name='page_title'}
{l s='Our stores' d='Shop.Theme.Global'}
{/block}
{block name='page_content_container'}
<section id="content" class="page-content page-stores">
{foreach $stores as $store}
<article id="store-{$store.id}" class="store-item card mb-4">
<div class="card-body">
<div class="row align-items-center">
<div class="col-auto store-picture hidden-sm-down">
<img
src="{$store.image.bySize.stores_default.url}"
{if !empty($store.image.legend)}
alt="{$store.image.legend}"
title="{$store.image.legend}"
{else}
alt="{$store.name}"
{/if}
>
</div>
<div class="col-md col-sm-7 col-12 store-description">
<p class="h4 card-title">{$store.name}</p>
<address class="mb-0">{$store.address.formatted nofilter}</address>
</div>
<div class="col-md-auto col-sm-5 col-12 mt-2 mt-sm-0">
{$daysFormated = []}
{foreach $store.business_hours as $day}
{$daysFormatedCount = $daysFormated|count}
{$daysFormatedIndex = $daysFormatedCount - 1}
{$isPrevValueTheSame = false}
{if $daysFormatedCount > 0 && isset($daysFormated[$daysFormatedIndex][0]) && $daysFormated[$daysFormatedIndex][0].hours == $day.hours[0]}
{$isPrevValueTheSame = true}
{/if}
{if $daysFormatedCount == 0 || !$isPrevValueTheSame}
{$daysFormated[][]= [
'day' => $day.day,
'hours' => $day.hours[0]
]}
{elseif $isPrevValueTheSame}
{$daysFormated[$daysFormatedIndex][] = [
'day' => $day.day,
'hours' => $day.hours
]}
{/if}
{/foreach}
{foreach $daysFormated as $fDay}
{if $fDay[0].hours == ''}
{continue}
{/if}
{$daysCount = $fDay|count}
{$suffix = ''}
{if $daysCount > 1}
{$suffix = "- `$fDay[$daysCount-1].day|truncate:'4':'.'`"}
{/if}
{if $daysCount == 1}
<span class="text-muted">{$fDay[0].day}</span> {$fDay[0].hours}
{else}
<span class="text-muted">{$fDay[0].day|truncate:'4':'.'} {$suffix}</span> {$fDay[0].hours}
{/if}
<br>
{/foreach}
</div>
{if $store.note || $store.phone || $store.fax || $store.email}
<div class="col-12">
<div class="pt-3 mt-4 border-top text-center">
<a data-toggle="collapse" class="icon-collapse d-inline-flex" href="#about-{$store.id}" aria-expanded="false" aria-controls="about-{$store.id}">
{l s='About and Contact' d='Shop.Theme.Global'}
<span class="material-icons"></span>
</a>
</div>
</div>
{/if}
</div>
</div>
<footer id="about-{$store.id}" class="collapse">
<div class="card-footer">
{if $store.note}
<p>{$store.note}</p>
{/if}
<ul class="card-block mb-0 row">
{if $store.phone}
<li class="col-md-4 d-flex align-items-center mt-1">
<span class="material-icons mr-2 font-reset">
call
</span>
<a href="tel:{$store.phone}">{$store.phone}</a>
</li>
{/if}
{if $store.fax}
<li class="col-md-4 d-flex align-items-center mt-1">
<span class="material-icons mr-2 font-reset">
local_printshop
</span>
<span>{$store.fax}</span>
</li>
{/if}
{if $store.email}
<li class="col-md-4 d-flex align-items-center mt-1">
<span class="material-icons mr-2 font-reset">
mail
</span>
<a href="mailto:{$store.email}">
{$store.email}
</a>
</li>
{/if}
</ul>
</div>
</footer>
</article>
{/foreach}
</section>
{/block}