feat(main): Add base theme: This is the falcon theme out of the box.
This is falcon v3.1.2
This commit is contained in:
48
falcon/templates/_partials/breadcrumb.tpl
Normal file
48
falcon/templates/_partials/breadcrumb.tpl
Normal file
@ -0,0 +1,48 @@
|
||||
{**
|
||||
* 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='breadcrumb'}
|
||||
{if $breadcrumb.links|count > 1}
|
||||
<nav aria-label="breadcrumb" data-depth="{$breadcrumb.count}">
|
||||
{block name='breadcrumb_list'}
|
||||
<ol class="breadcrumb">
|
||||
{foreach from=$breadcrumb.links item=path name=breadcrumb}
|
||||
{block name='breadcrumb_item'}
|
||||
<li {if $smarty.foreach.breadcrumb.last}class="breadcrumb-item active" aria-current="page"{else}class="breadcrumb-item"{/if}>
|
||||
{if !$smarty.foreach.breadcrumb.last}
|
||||
<a href="{$path.url}">
|
||||
{/if}
|
||||
{$path.title}
|
||||
{if !$smarty.foreach.breadcrumb.last}
|
||||
</a>
|
||||
{/if}
|
||||
</li>
|
||||
{/block}
|
||||
{/foreach}
|
||||
</ol>
|
||||
{/block}
|
||||
</nav>
|
||||
{/if}
|
||||
{/block}
|
||||
45
falcon/templates/_partials/footer.tpl
Normal file
45
falcon/templates/_partials/footer.tpl
Normal file
@ -0,0 +1,45 @@
|
||||
{**
|
||||
* 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)
|
||||
*}
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
{block name='hook_footer_before'}
|
||||
{hook h='displayFooterBefore'}
|
||||
{/block}
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer-container">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
{block name='hook_footer'}
|
||||
{hook h='displayFooter'}
|
||||
{/block}
|
||||
</div>
|
||||
<div class="row">
|
||||
{block name='hook_footer_after'}
|
||||
{hook h='displayFooterAfter'}
|
||||
{/block}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
35
falcon/templates/_partials/form-errors.tpl
Normal file
35
falcon/templates/_partials/form-errors.tpl
Normal file
@ -0,0 +1,35 @@
|
||||
{**
|
||||
* 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)
|
||||
*}
|
||||
{if $errors|count}
|
||||
<div class="help-block mt-2">
|
||||
{block name='form_errors'}
|
||||
<ul>
|
||||
{foreach $errors as $error}
|
||||
<li class="alert alert-danger">{$error|nl2br nofilter}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
</div>
|
||||
{/if}
|
||||
221
falcon/templates/_partials/form-fields.tpl
Normal file
221
falcon/templates/_partials/form-fields.tpl
Normal file
@ -0,0 +1,221 @@
|
||||
{**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* 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.txt.
|
||||
* 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 http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2017 PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
{$autocomplete = [
|
||||
'firstname' => 'given-name',
|
||||
'lastname' => 'family-name',
|
||||
'email'=>'email',
|
||||
'password'=>'current-password',
|
||||
'new_password'=>'new-password',
|
||||
'postcode'=>'postal-code',
|
||||
'birthday'=>'bday',
|
||||
'address1'=>'street-address',
|
||||
'address2'=>'address-line2',
|
||||
'id_state'=>'address-level1',
|
||||
'city'=>'address-level2',
|
||||
'company'=>'organization'
|
||||
]}
|
||||
{if $field.type == 'hidden'}
|
||||
|
||||
{block name='form_field_item_hidden'}
|
||||
<input type="hidden" name="{$field.name}" value="{$field.value|default}">
|
||||
{/block}
|
||||
|
||||
{else}
|
||||
{assign var=uniqId value=10|mt_rand:100000}
|
||||
|
||||
<div class="form-group js-input-column">
|
||||
{if $field.type == 'checkbox' || $field.type == 'radio-buttons'}
|
||||
{if $field.type == 'radio-buttons'}
|
||||
<div class="form-label label mr-3">{$field.label}</div>
|
||||
{/if}
|
||||
{else}
|
||||
<label class="form-label {if $field.required}required{/if}" for="f-{$field.name}_{$uniqId}">
|
||||
{$field.label}
|
||||
{block name='form_field_comment'}
|
||||
{if (!$field.required && !in_array($field.type, ['radio-buttons', 'checkbox']))}
|
||||
<small class="text-muted">({l s='Optional' d='Shop.Forms.Labels'})</small>
|
||||
{/if}
|
||||
{/block}
|
||||
</label>
|
||||
{/if}
|
||||
|
||||
|
||||
{if $field.type === 'select'}
|
||||
|
||||
{block name='form_field_item_select'}
|
||||
<select class="custom-select wide{if !empty($field.errors)} is-invalid{/if}" name="{$field.name}"
|
||||
id="f-{$field.name}_{$uniqId}" {if $field.required} required{/if}>
|
||||
<option value disabled selected>{l s='-- please choose --' d='Shop.Forms.Labels'}</option>
|
||||
{foreach from=$field.availableValues item="label" key="value"}
|
||||
<option value="{$value}" {if $value eq $field.value} selected {/if}>{$label}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'countrySelect'}
|
||||
|
||||
{block name='form_field_item_country'}
|
||||
<select class="custom-select js-country wide{if !empty($field.errors)} is-invalid{/if}" name="{$field.name}"
|
||||
id="f-{$field.name}_{$uniqId}" {if $field.required}required{/if}>
|
||||
<option value disabled selected>{l s='-- please choose --' d='Shop.Forms.Labels'}</option>
|
||||
{foreach from=$field.availableValues item="label" key="value"}
|
||||
<option value="{$value}" {if $value eq $field.value} selected {/if}>{$label}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'radio-buttons'}
|
||||
|
||||
{block name='form_field_item_radio'}
|
||||
{foreach from=$field.availableValues item="label" key="value" name="radiolist"}
|
||||
<div class="custom-control custom-radio custom-control-inline">
|
||||
<input name="{$field.name}" type="radio" value="{$value}"
|
||||
class="custom-control-input {if !empty($field.errors)} is-invalid{/if}"
|
||||
id="f-{$field.name}_{$uniqId}-{$smarty.foreach.radiolist.iteration}" {if $field.required}required{/if}
|
||||
{if $value eq $field.value} checked {/if}>
|
||||
|
||||
<label class="custom-control-label"
|
||||
for="f-{$field.name}_{$uniqId}-{$smarty.foreach.radiolist.iteration}">{$label}</label>
|
||||
</div>
|
||||
{/foreach}
|
||||
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'checkbox'}
|
||||
|
||||
{block name='form_field_item_checkbox'}
|
||||
<div class="custom-control custom-checkbox">
|
||||
<input name="{$field.name}" type="checkbox" value="1" id="f-{$field.name}_{$uniqId}"
|
||||
class="custom-control-input{if !empty($field.errors)} is-invalid{/if}" {if $field.value} checked="checked"
|
||||
{/if}{if $field.required} required{/if}>
|
||||
<label class="custom-control-label" for="f-{$field.name}_{$uniqId}">{$field.label|unescape:'html' nofilter}</label>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'date'}
|
||||
|
||||
{block name='form_field_item_date'}
|
||||
<input
|
||||
name="{$field.name}"
|
||||
class="form-control{if !empty($field.errors)} is-invalid{/if}"
|
||||
type="date"
|
||||
value="{$field.value|default}"
|
||||
placeholder="{if isset($field.availableValues.placeholder)}{$field.availableValues.placeholder}{/if}"
|
||||
id="f-{$field.name}_{$uniqId}" {if isset($autocomplete[$field.name])} autocomplete="{$autocomplete[$field.name]}"
|
||||
{/if}>
|
||||
{if isset($field.availableValues.comment)}
|
||||
<span class="form-text text-muted">
|
||||
{$field.availableValues.comment}
|
||||
</span>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'birthday'}
|
||||
|
||||
{block name='form_field_item_birthday'}
|
||||
<div class="js-parent-focus">
|
||||
{html_select_date
|
||||
field_order=DMY
|
||||
time={$field.value}
|
||||
field_array={$field.name}
|
||||
prefix=false
|
||||
reverse_years=true
|
||||
field_separator='<br>'
|
||||
day_extra='class="form-control form-control-select"'
|
||||
month_extra='class="form-control form-control-select"'
|
||||
year_extra='class="form-control form-control-select"'
|
||||
day_empty={l s='-- day --' d='Shop.Forms.Labels'}
|
||||
month_empty={l s='-- month --' d='Shop.Forms.Labels'}
|
||||
year_empty={l s='-- year --' d='Shop.Forms.Labels'}
|
||||
start_year={'Y'|date}-100 end_year={'Y'|date}
|
||||
}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'password'}
|
||||
|
||||
{block name='form_field_item_password'}
|
||||
<div class="input-group js-parent-focus">
|
||||
<input
|
||||
class="form-control js-child-focus js-visible-password{if !empty($field.errors)} is-invalid{/if}"
|
||||
name="{$field.name}"
|
||||
id="f-{$field.name}_{$uniqId}"
|
||||
type="password"
|
||||
value=""
|
||||
{if isset($configuration.password_policy.minimum_length)}data-minlength="{$configuration.password_policy.minimum_length}"{/if}
|
||||
{if isset($configuration.password_policy.maximum_length)}data-maxlength="{$configuration.password_policy.maximum_length}"{/if}
|
||||
{if isset($configuration.password_policy.minimum_score)}data-minscore="{$configuration.password_policy.minimum_score}"{/if}
|
||||
pattern=".{literal}{{/literal}{$configuration.password_policy.minimum_length},{literal}}{/literal}"
|
||||
{if isset($autocomplete[$field.name])}autocomplete="{$autocomplete[$field.name]}" {/if}
|
||||
{if $field.required}required{/if}>
|
||||
<span class="input-group-append">
|
||||
<button class="btn btn-primary" type="button" data-action="show-password"
|
||||
data-text-show="<span class='material-icons d-block'>visibility</span>" data-text-hide="<span class='material-icons d-block'>visibility_off</span>">
|
||||
<span class="material-icons d-block">visibility</span>
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
{include file='_partials/form-errors.tpl' errors=$field.errors required=$field.required label=$field.label}
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'file'}
|
||||
<div class="custom-file">
|
||||
<input name="{$field.name}" type="file" class="custom-file-input{if !empty($field.errors)} is-invalid{/if}"
|
||||
id="f-{$field.name}_{$uniqId}" {if $field.required} required{/if}>
|
||||
<label class="custom-file-label" for="f-{$field.name}_{$uniqId}">{l s='Choose file' d='Shop.Theme.Actions'}</label>
|
||||
</div>
|
||||
{else}
|
||||
|
||||
{block name='form_field_item_other'}
|
||||
<input
|
||||
class="form-control{if !empty($field.errors)} is-invalid{/if}"
|
||||
name="{$field.name}"
|
||||
type="{if $field.name === "phone"}tel{else}{$field.type}{/if}"
|
||||
value="{$field.value|default}"
|
||||
id="f-{$field.name}_{$uniqId}"
|
||||
{if isset($field.availableValues.placeholder)}placeholder="{$field.availableValues.placeholder}" {/if}
|
||||
{if $field.maxLength}maxlength="{$field.maxLength}" {/if}
|
||||
{if $field.required}required{/if}
|
||||
{if isset($autocomplete[$field.name])} autocomplete="{$autocomplete[$field.name]}" {/if}
|
||||
pattern="^[^\s]+(\s+[^\s]+)*$">
|
||||
{if isset($field.availableValues.comment)}
|
||||
<small class="form-text text-muted">
|
||||
{$field.availableValues.comment}
|
||||
</small>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{/if}
|
||||
|
||||
{block name='form_field_errors'}
|
||||
{if $field.type !== 'password'}
|
||||
{include file='_partials/form-errors.tpl' errors=$field.errors required=$field.required label=$field.label}
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{/if}
|
||||
10
falcon/templates/_partials/head-preload.tpl
Normal file
10
falcon/templates/_partials/head-preload.tpl
Normal file
@ -0,0 +1,10 @@
|
||||
{$themeDir = _PS_THEME_DIR_}
|
||||
{$preloadFilePath = "`$themeDir`assets/preload.html"}
|
||||
{$urlsWithCdn = $urls.img_ps_url|replace:'/img/':'/'}
|
||||
|
||||
{if file_exists($preloadFilePath)}
|
||||
{capture name="preloadBlock"}{include file=$preloadFilePath}{/capture}
|
||||
|
||||
{$smarty.capture.preloadBlock|replace:'/themes/':"`$urlsWithCdn`themes/" nofilter}
|
||||
{/if}
|
||||
|
||||
84
falcon/templates/_partials/head.tpl
Normal file
84
falcon/templates/_partials/head.tpl
Normal file
@ -0,0 +1,84 @@
|
||||
{**
|
||||
* 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='head_charset'}
|
||||
<meta charset="utf-8">
|
||||
{/block}
|
||||
{block name='head_ie_compatibility'}
|
||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
||||
{/block}
|
||||
|
||||
{block name='head_seo'}
|
||||
<title>{block name='head_seo_title'}{$page.meta.title}{/block}</title>
|
||||
{block name='hook_after_title_tag'}
|
||||
{hook h='displayAfterTitleTag'}
|
||||
{/block}
|
||||
<meta name="description" content="{block name='head_seo_description'}{$page.meta.description}{/block}">
|
||||
<meta name="keywords" content="{block name='head_seo_keywords'}{$page.meta.keywords}{/block}">
|
||||
{if $page.meta.robots !== 'index'}
|
||||
<meta name="robots" content="{$page.meta.robots}">
|
||||
{/if}
|
||||
{if $page.canonical}
|
||||
<link rel="canonical" href="{$page.canonical}">
|
||||
{/if}
|
||||
{block name='head_hreflang'}
|
||||
{foreach from=$urls.alternative_langs item=pageUrl key=code}
|
||||
<link rel="alternate" href="{$pageUrl}" hreflang="{$code}">
|
||||
{/foreach}
|
||||
{/block}
|
||||
|
||||
{block name='head_pagination_seo'}
|
||||
{include file="_partials/pagination-seo.tpl"}
|
||||
{/block}
|
||||
{/block}
|
||||
|
||||
{block name='head_viewport'}
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{/block}
|
||||
|
||||
{block name='head_icons'}
|
||||
<link rel="icon" type="image/vnd.microsoft.icon" href="{$shop.favicon}?{$shop.favicon_update_time}">
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{$shop.favicon}?{$shop.favicon_update_time}">
|
||||
{/block}
|
||||
|
||||
{block name='hook_header'}
|
||||
{$HOOK_HEADER nofilter}
|
||||
{/block}
|
||||
|
||||
{block name='head_preload'}
|
||||
{if $shop.logo}
|
||||
<link rel="preload" as="image" href="{$shop.logo}">
|
||||
{/if}
|
||||
{include file="_partials/head-preload.tpl"}
|
||||
{/block}
|
||||
|
||||
{block name='stylesheets'}
|
||||
{include file="_partials/stylesheets.tpl" stylesheets=$stylesheets}
|
||||
{/block}
|
||||
|
||||
{block name='javascript_head'}
|
||||
{include file="_partials/javascript.tpl" javascript=$javascript.head vars=$js_custom_vars}
|
||||
{/block}
|
||||
|
||||
{block name='hook_extra'}{/block}
|
||||
91
falcon/templates/_partials/header.tpl
Normal file
91
falcon/templates/_partials/header.tpl
Normal file
@ -0,0 +1,91 @@
|
||||
{**
|
||||
* 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='header_banner'}
|
||||
<div class="header-banner">
|
||||
{hook h='displayBanner'}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='header_nav'}
|
||||
<nav class="header-nav border-bottom bg-light py-1 d-none d-md-block">
|
||||
<div class="container">
|
||||
<div class="row align-items-center">
|
||||
{hook h='displayNav1'}
|
||||
{hook h='displayNav2'}
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
{/block}
|
||||
|
||||
{block name='header_top'}
|
||||
<div class="js-header-top-wrapper">
|
||||
|
||||
<div class="header-top js-header-top">
|
||||
<div class="header-top__content pt-md-3 pb-md-0 py-2">
|
||||
|
||||
<div class="container">
|
||||
|
||||
<div class="row header-top__row">
|
||||
|
||||
<div class="col flex-grow-0 header-top__block header-top__block--menu-toggle d-block d-md-none">
|
||||
<a
|
||||
class="header-top__link"
|
||||
rel="nofollow"
|
||||
href="#"
|
||||
data-toggle="modal"
|
||||
data-target="#mobile_top_menu_wrapper"
|
||||
>
|
||||
<div class="header-top__icon-container">
|
||||
<span class="header-top__icon material-icons">menu</span>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4 col header-top__block header-top__block--logo">
|
||||
<a href="{$urls.pages.index}">
|
||||
{images_block webpEnabled=$webpEnabled}
|
||||
<img
|
||||
{if !empty($shop.logo_details)}
|
||||
src="{$shop.logo_details.src}"
|
||||
width="{$shop.logo_details.width}"
|
||||
height="{$shop.logo_details.height}"
|
||||
{else}
|
||||
src="{$shop.logo}"
|
||||
{/if}
|
||||
class="logo img-fluid"
|
||||
alt="{$shop.name} {l s='logo' d='Shop.Theme.Global'}">
|
||||
{/images_block}
|
||||
</a>
|
||||
</div>
|
||||
|
||||
{hook h='displayTop'}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{hook h='displayNavFullWidth'}
|
||||
{/block}
|
||||
48
falcon/templates/_partials/javascript.tpl
Normal file
48
falcon/templates/_partials/javascript.tpl
Normal file
@ -0,0 +1,48 @@
|
||||
{**
|
||||
* 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)
|
||||
*}
|
||||
|
||||
{$jsAssetHash = Configuration::get('PS_CCCJS_VERSION')|md5}
|
||||
|
||||
{foreach $javascript.external as $js}
|
||||
<script
|
||||
type="text/javascript"
|
||||
src="{appendParamToUrl url=$js.uri key=v value=$jsAssetHash}"
|
||||
{$js.attribute}></script>
|
||||
{/foreach}
|
||||
|
||||
|
||||
{foreach $javascript.inline as $js}
|
||||
<script type="text/javascript">
|
||||
{$js.content nofilter}
|
||||
</script>
|
||||
{/foreach}
|
||||
|
||||
{if isset($vars) && $vars|@count}
|
||||
<script type="text/javascript">
|
||||
{foreach from=$vars key=var_name item=var_value}
|
||||
var {$var_name} = {$var_value|json_encode nofilter};
|
||||
{/foreach}
|
||||
</script>
|
||||
{/if}
|
||||
6
falcon/templates/_partials/mobile-modals.tpl
Normal file
6
falcon/templates/_partials/mobile-modals.tpl
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
{include file="_partials/modal-search.tpl"}
|
||||
|
||||
{include file="_partials/modal-menu.tpl"}
|
||||
|
||||
{include file="_partials/modal-filters.tpl"}
|
||||
19
falcon/templates/_partials/modal-filters.tpl
Normal file
19
falcon/templates/_partials/modal-filters.tpl
Normal file
@ -0,0 +1,19 @@
|
||||
{extends file='components/modal.tpl'}
|
||||
|
||||
{block name='modal_extra_attribues'}id="mobile_filters" data-modal-hide-mobile{/block}
|
||||
{block name='modal_extra_class'}fixed-right{/block}
|
||||
{block name='modal_dialog_extra_class'}modal-dialog-aside{/block}
|
||||
{block name='modal_title'}{l s='Filters' d='Shop.Theme.Catalog'}{/block}
|
||||
{block name='modal_body_extra_class'}p-0{/block}
|
||||
{block name='modal_body'}
|
||||
<div id="_mobile_filters"></div>
|
||||
{/block}
|
||||
|
||||
{block name='modal_footer'}
|
||||
<button type="button" class="btn btn-block btn-primary" data-dismiss="modal" aria-label="Close">
|
||||
{l s='Show results' d='Shop.Istheme'}
|
||||
</button>
|
||||
{/block}
|
||||
|
||||
|
||||
|
||||
16
falcon/templates/_partials/modal-menu.tpl
Normal file
16
falcon/templates/_partials/modal-menu.tpl
Normal file
@ -0,0 +1,16 @@
|
||||
{extends file='components/modal.tpl'}
|
||||
|
||||
{block name='modal_extra_attribues'}id="mobile_top_menu_wrapper" data-modal-hide-mobile{/block}
|
||||
{block name='modal_extra_class'}fixed-left{/block}
|
||||
{block name='modal_dialog_extra_class'}modal-dialog-aside{/block}
|
||||
{block name='modal_title'}{l s='Menu' d='Shop.Theme.Catalog'}{/block}
|
||||
{block name='modal_body'}
|
||||
<div class="js-top-menu mobile" id="_mobile_top_menu"></div>
|
||||
<div class="js-top-menu-bottom">
|
||||
<div id="_mobile_currency_selector" class="mb-2"></div>
|
||||
<div id="_mobile_language_selector" class="mb-2"></div>
|
||||
<div id="_mobile_contact_link" class="mb-2"></div>
|
||||
</div>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
12
falcon/templates/_partials/modal-search.tpl
Normal file
12
falcon/templates/_partials/modal-search.tpl
Normal file
@ -0,0 +1,12 @@
|
||||
{extends file='components/modal.tpl'}
|
||||
|
||||
{block name='modal_extra_attribues'}id="saerchModal" data-modal-hide-mobile{/block}
|
||||
{block name='modal_extra_class'}modal-fullscreen search-modal{/block}
|
||||
{block name='modal_header'}{/block}
|
||||
{block name='modal_body'}
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
<div id="_mobile_search_from">
|
||||
</div>
|
||||
{/block}
|
||||
78
falcon/templates/_partials/notifications.tpl
Normal file
78
falcon/templates/_partials/notifications.tpl
Normal file
@ -0,0 +1,78 @@
|
||||
{**
|
||||
* 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)
|
||||
*}
|
||||
|
||||
{if isset($notifications)}
|
||||
<aside id="notifications">
|
||||
<div class="container">
|
||||
{if $notifications.error}
|
||||
{block name='notifications_error'}
|
||||
<article class="alert alert-danger" role="alert" data-alert="danger">
|
||||
<ul class="mb-0">
|
||||
{foreach $notifications.error as $notif}
|
||||
<li>{$notif nofilter}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</article>
|
||||
{/block}
|
||||
{/if}
|
||||
|
||||
{if $notifications.warning}
|
||||
{block name='notifications_warning'}
|
||||
<article class="alert alert-warning" role="alert" data-alert="warning">
|
||||
<ul class="mb-0">
|
||||
{foreach $notifications.warning as $notif}
|
||||
<li>{$notif nofilter}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</article>
|
||||
{/block}
|
||||
{/if}
|
||||
|
||||
{if $notifications.success}
|
||||
{block name='notifications_success'}
|
||||
<article class="alert alert-success" role="alert" data-alert="success">
|
||||
<ul class="mb-0">
|
||||
{foreach $notifications.success as $notif}
|
||||
<li>{$notif nofilter}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</article>
|
||||
{/block}
|
||||
{/if}
|
||||
|
||||
{if $notifications.info}
|
||||
{block name='notifications_info'}
|
||||
<article class="alert alert-info" role="alert" data-alert="info">
|
||||
<ul class="mb-0">
|
||||
{foreach $notifications.info as $notif}
|
||||
<li>{$notif nofilter}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</article>
|
||||
{/block}
|
||||
{/if}
|
||||
</div>
|
||||
</aside>
|
||||
{/if}
|
||||
3
falcon/templates/_partials/page-loader.tpl
Normal file
3
falcon/templates/_partials/page-loader.tpl
Normal file
@ -0,0 +1,3 @@
|
||||
<div class="page-loader">
|
||||
<div class="spinner-border text-primary" role="status"><span class="sr-only">{l s='Loading...' d='Shop.Theme.Global'}</span></div>
|
||||
</div>
|
||||
47
falcon/templates/_partials/pagination-seo.tpl
Normal file
47
falcon/templates/_partials/pagination-seo.tpl
Normal file
@ -0,0 +1,47 @@
|
||||
{**
|
||||
* 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)
|
||||
*}
|
||||
|
||||
{if isset($listing.pagination) && $listing.pagination.should_be_displayed}
|
||||
{$page_nb = 1}
|
||||
{if isset($smarty.get.page)}
|
||||
{$page_nb = $smarty.get.page|intval|default:1}
|
||||
{/if}
|
||||
{$queryPage = '?page='|cat:$page_nb}
|
||||
{$page.canonical = $page.canonical|replace:$queryPage:''}
|
||||
|
||||
{$prev = false}
|
||||
{$next = false}
|
||||
{if ($page_nb - 1) == 1}
|
||||
{$prev = $page.canonical}
|
||||
{elseif $page_nb > 2}
|
||||
{$prev = ($page['canonical']|cat:'?page='|cat:($page_nb - 1))}
|
||||
{/if}
|
||||
{if $listing.pagination.total_items > $listing.pagination.items_shown_to}
|
||||
{$next = ($page['canonical']|cat:'?page='|cat:($page_nb + 1))}
|
||||
{/if}
|
||||
|
||||
{if $prev}<link rel="prev" href="{$prev}">{/if}
|
||||
{if $next}<link rel="next" href="{$next}">{/if}
|
||||
{/if}
|
||||
63
falcon/templates/_partials/pagination.tpl
Normal file
63
falcon/templates/_partials/pagination.tpl
Normal file
@ -0,0 +1,63 @@
|
||||
{**
|
||||
* 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='pagination_page_list'}
|
||||
{if $pagination.should_be_displayed}
|
||||
<nav>
|
||||
<ul class="pagination justify-content-center mt-4 mb-2">
|
||||
{foreach from=$pagination.pages item="page"}
|
||||
<li class="page-item{if $page.current} active{/if} {if $page.type === 'spacer'}disabled{/if}">
|
||||
{if $page.type === 'spacer'}
|
||||
<span
|
||||
rel="{if $page.type === 'previous'}prev{elseif $page.type === 'next'}next{else}nofollow{/if}"
|
||||
href="#"
|
||||
class="page-link"
|
||||
>
|
||||
…
|
||||
</span>
|
||||
{else}
|
||||
<a
|
||||
rel="{if $page.type === 'previous'}prev{elseif $page.type === 'next'}next{else}nofollow{/if}"
|
||||
href="{$page.url}"
|
||||
class="page-link {['disabled' => !$page.clickable, 'js-search-link' => true]|classnames}"
|
||||
>
|
||||
{if $page.type === 'previous'}
|
||||
<span class="material-icons font-reset align-middle">keyboard_arrow_left</span>
|
||||
<span class="sr-only">{l s='Previous' d='Shop.Theme.Actions'}</span>
|
||||
{elseif $page.type === 'next'}
|
||||
<span class="material-icons font-reset align-middle">keyboard_arrow_right</span>
|
||||
<span class="sr-only">{l s='Next' d='Shop.Theme.Actions'}</span>
|
||||
{else}
|
||||
{$page.page}
|
||||
{/if}
|
||||
</a>
|
||||
{/if}
|
||||
</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</nav>
|
||||
{/if}
|
||||
{/block}
|
||||
29
falcon/templates/_partials/password-policy-template.tpl
Normal file
29
falcon/templates/_partials/password-policy-template.tpl
Normal file
@ -0,0 +1,29 @@
|
||||
<template id="password-feedback">
|
||||
<div
|
||||
class="js-password-strength-feedback password-strength-feedback mt-1"
|
||||
style="display: none;"
|
||||
>
|
||||
<div class="progress-container">
|
||||
<div class="progress mb-1">
|
||||
<div class="progress-bar js-password-policy-progress-bar" role="progressbar" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript" class="js-hint-password">
|
||||
{if !empty($page['password-policy']['feedbacks'])}
|
||||
{$page['password-policy']['feedbacks']|@json_encode nofilter}
|
||||
{/if}
|
||||
</script>
|
||||
|
||||
<div class="js-password-strength-text password-strength-text"></div>
|
||||
<div class="password-requirements">
|
||||
<p class="js-password-requirements-length password-requirements-length font-sm d-flex align-items-center my-2" data-translation="{l s='Enter a password between %s and %s characters' d='Shop.Theme.Customeraccount'}">
|
||||
<i class="material-icons mr-1 font-size-lg">check_circle</i>
|
||||
<span></span>
|
||||
</p>
|
||||
<p class="js-password-requirements-score password-requirements-score font-sm d-flex align-items-center my-2" data-translation="{l s='The minimum score must be: %s' d='Shop.Theme.Customeraccount'}">
|
||||
<i class="material-icons mr-1 font-size-lg">check_circle</i>
|
||||
<span></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
54
falcon/templates/_partials/stylesheets.tpl
Normal file
54
falcon/templates/_partials/stylesheets.tpl
Normal file
@ -0,0 +1,54 @@
|
||||
{**
|
||||
* 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)
|
||||
*}
|
||||
|
||||
{$cssAssetHash = Configuration::get('PS_CCCCSS_VERSION')|md5}
|
||||
|
||||
{foreach $stylesheets.external as $stylesheet}
|
||||
{$url = {appendParamToUrl url=$stylesheet.uri key=v value=$cssAssetHash}}
|
||||
|
||||
{if $preloadCss|default:false &&
|
||||
($stylesheet.id === 'theme-ccc')
|
||||
||
|
||||
(in_array($stylesheet.id, ['theme-main', 'theme-product', 'theme-listing', 'theme-checkout']) && $stylesheet.server !== 'remote')
|
||||
}
|
||||
<link
|
||||
rel="preload"
|
||||
href="{appendParamToUrl url=$stylesheet.uri key=v value=$cssAssetHash}"
|
||||
as="style"
|
||||
>
|
||||
{/if}
|
||||
|
||||
<link
|
||||
rel="stylesheet"
|
||||
href="{appendParamToUrl url=$stylesheet.uri key=v value=$cssAssetHash}"
|
||||
type="text/css"
|
||||
media="{$stylesheet.media}">
|
||||
{/foreach}
|
||||
|
||||
{foreach $stylesheets.inline as $stylesheet}
|
||||
<style>
|
||||
{$stylesheet.content}
|
||||
</style>
|
||||
{/foreach}
|
||||
Reference in New Issue
Block a user