This commit is contained in:
2025-04-01 00:38:54 +02:00
parent d4d4c0c09d
commit 87da06293a
22351 changed files with 5168854 additions and 7538 deletions

View File

@@ -0,0 +1,11 @@
<?php
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../');
exit;

View File

@@ -0,0 +1,28 @@
{**
* 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.
*
* @author PrestaShop SA <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)
*}
{function get_limit_select element=''}
{assign var="name" value="{$element}_filter_show_limit"}
<select name="{$name}">
<option value="0">{l s='No limit' d='Modules.Facetedsearch.Admin'}</option>
{for $index=2 to 20}
<option value="{$index}">{$index}</option>
{/for}
</select>
{/function}

View File

@@ -0,0 +1,31 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group form-group-categories">
<label class="control-label col-lg-3">{l s='Categories used for this template:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
{if trim($categories_tree) != ''}
{$categories_tree}
{else}
<div class="alert alert-warning">
{l s='Categories selection is disabled because you have no categories or you are in a "all shops" context.' d='Modules.Facetedsearch.Admin'}
</div>
{/if}
<p class="help-block">{l s='Effective only if category pages are selected above.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>

View File

@@ -0,0 +1,29 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group">
<label class="control-label col-lg-3">{l s='Pages using this template:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
{foreach $controller_options as $controller => $data}
<div class="checkbox">
<label for="fs_controller_{$controller}"><input id="fs_controller_{$controller}" type="checkbox" name="controllers[]" value="{$controller}"
{if isset($data.checked) && $data.checked == true} checked {/if}>{$data.name}</label>
</div>
{/foreach}
</div>
</div>

View File

@@ -0,0 +1,32 @@
{**
* 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.
*
* @author PrestaShop SA <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="panel-footer" id="toolbar-footer">
<button class="btn btn-default pull-right" id="submit-filter" name="SubmitFilter" type="submit"><i class="process-icon-save"></i> <span>{l s='Save' d='Admin.Actions'}</span></button>
<a class="btn btn-default" href="{$current_url}">
<i class="process-icon-cancel"></i> <span>{l s='Cancel' d='Admin.Actions'}</span>
</a>
</div>
<script type="text/javascript">
var translations = new Array();
{if isset($filters)}var filters = '{$filters|@json_encode}';{/if}
translations['no_selected_categories'] = "{l s='You must select at least one category' d='Modules.Facetedsearch.Admin'}";
translations['no_selected_controllers'] = "{l s='You must select at least one page' d='Modules.Facetedsearch.Admin'}";
translations['no_selected_filters'] = "{l s='You must select at least one filter' d='Modules.Facetedsearch.Admin'}";
</script>

View File

@@ -0,0 +1,25 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group">
<label class="control-label col-lg-3">{l s='Template name:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<input type="text" id="layered_tpl_name" name="layered_tpl_name" maxlength="64" value="{$template_name}" />
<p class="help-block">{l s='Only as a reminder' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>

View File

@@ -0,0 +1,11 @@
<?php
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../');
exit;

View File

@@ -0,0 +1,43 @@
{**
* 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.
*
* @author PrestaShop SA <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($message)}{$message}{/if}
<div id="ajax-message-ok" class="conf ajax-message alert alert-success" style="display: none">
<span class="message"></span>
</div>
<div id="ajax-message-ko" class="error ajax-message alert alert-danger" style="display: none">
<span class="message"></span>
</div>
{if !empty($limit_warning)}
<div class="alert alert-danger">
{if $limit_warning['error_type'] == 'suhosin'}
{l s='Warning! Your hosting provider is using the Suhosin patch for PHP, which limits the maximum number of fields allowed in a form:' d='Modules.Facetedsearch.Admin'}
<b>{$limit_warning['post.max_vars']}</b> {l s='for suhosin.post.max_vars.' d='Modules.Facetedsearch.Admin'}<br/>
<b>{$limit_warning['request.max_vars']}</b> {l s='for suhosin.request.max_vars.' d='Modules.Facetedsearch.Admin'}<br/>
{l s='Please ask your hosting provider to increase the Suhosin limit to' d='Modules.Facetedsearch.Admin'}
{else}
{l s='Warning! Your PHP configuration limits the maximum number of fields allowed in a form:' d='Modules.Facetedsearch.Admin'}<br/>
<b>{$limit_warning['max_input_vars']}</b> {l s='for max_input_vars.' d='Modules.Facetedsearch.Admin'}<br/>
{l s='Please ask your hosting provider to increase this limit to' d='Modules.Facetedsearch.Admin'}
{/if}
{l s='%s at least, or you will have to edit the translation files manually.' sprintf=$limit_warning['needed_limit'] d='Modules.Facetedsearch.Admin'}
</div>
{/if}

View File

@@ -0,0 +1,24 @@
{**
* 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.
*
* @author PrestaShop SA <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($asso_shops)}
<div class="form-group">
<label class="control-label col-lg-3">{l s='Choose shop association:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">{$asso_shops}</div>
</div>
{/if}

View File

@@ -0,0 +1,376 @@
{**
* 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.
*
* @author PrestaShop SA <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)
*}
{include file='./_partials/messages.tpl'}
{include file='./_functions/show_limit.tpl'}
<div class="panel">
<h3><i class="icon-cogs"></i> {l s='New filters template' d='Modules.Facetedsearch.Admin'}</h3>
<form action="{$current_url}" method="post" class="form-horizontal" onsubmit="return checkForm();">
<input type="hidden" name="id_layered_filter" id="id_layered_filter" value="{$id_layered_filter}" />
{include file='./_partials/header.tpl'}
{include file='./_partials/controllers.tpl'}
{include file='./_partials/categories-tree.tpl'}
{include file='./_partials/shops.tpl'}
<div class="form-group">
<label class="control-label col-lg-3">
<span class="badge" id="selected_filters">0</span>
<span class="label-tooltip" data-toggle="tooltip" title="" data-original-title="{l s='You can drag and drop filters to adjust position' d='Modules.Facetedsearch.Admin'}">{l s='Filters:' d='Modules.Facetedsearch.Admin'}</span>
</label>
<div class="col-lg-9">
<section class="filter_panel">
<header class="clearfix">
<span class="badge pull-right">
{l
s='Total filters: %s'
sprintf=[$total_filters]
d='Modules.Facetedsearch.Admin'
}
</span>
</header>
<section class="filter_list">
<ul class="list-unstyled sortable" id="list-filters">
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_subcategories" id="layered_selection_subcategories" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<h4>{l s='Sub-categories filter' d='Modules.Facetedsearch.Admin'}</h4>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_subcategories"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_subcategories_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_stock" id="layered_selection_stock" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">{l s='Product stock filter' d='Modules.Facetedsearch.Admin'}</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_stock"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_stock_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_extras" id="layered_selection_extras" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">{l s='Product extras filter' d='Modules.Facetedsearch.Admin'}</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_extras"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<input type="hidden" name="layered_selection_extras" value="0">
<p class="form-control-static">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</li>
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_condition" id="layered_selection_condition" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">{l s='Product condition filter' d='Modules.Facetedsearch.Admin'}</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_condition"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_condition_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_manufacturer" id="layered_selection_manufacturer" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">{l s='Product brand filter' d='Modules.Facetedsearch.Admin'}</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_manufacturer"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_manufacturer_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_weight_slider" id="layered_selection_weight_slider" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">{l s='Product weight filter (slider)' d='Modules.Facetedsearch.Admin'}</span>
</div>
<div class="col-lg-3 pull-right">
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<input type="hidden" name="layered_selection_weight_slider_filter_type" value="1">
<p class="form-control-static">{l s='List of ranges' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</li>
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_price_slider" id="layered_selection_price_slider" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">{l s='Product price filter (slider)' d='Modules.Facetedsearch.Admin'}</span>
</div>
<div class="col-lg-3 pull-right">
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<input type="hidden" name="layered_selection_price_slider_filter_type" value="1">
<p class="form-control-static">{l s='List of ranges' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</li>
{if $attribute_groups|count > 0}
{foreach $attribute_groups as $attribute_group}
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}" id="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">
{if $attribute_group['n'] > 1}
{l
s='Attribute group: %name% (%count% attributes)'
sprintf=[
'%name%' => $attribute_group['name'],
'%count%' => $attribute_group['n']
]
d='Modules.Facetedsearch.Admin'
}
{else}
{l
s='Attribute group: %name% (%count% attribute)'
sprintf=[
'%name%' => $attribute_group['name'],
'%count%' => $attribute_group['n']
]
d='Modules.Facetedsearch.Admin'
}
{/if}
{if $attribute_group['is_color_group']}
<img src="../img/admin/color_swatch.png" alt="" title="{l s='This group will allow user to select a color' d='Modules.Facetedsearch.Admin'}" />
{/if}
</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
{/foreach}
{/if}
{if $features|count > 0}
{foreach $features as $feature}
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_feat_{(int)$feature['id_feature']}" id="layered_selection_feat_{(int)$feature['id_feature']}" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">
{if $feature['n'] > 1}
{l
s='Feature: %name% (%count% values)'
sprintf=[
'%name%' => $feature['name'],
'%count%' => $feature['n']
]
d='Modules.Facetedsearch.Admin'
}
{else}
{l
s='Feature: %name% (%count% value)'
sprintf=[
'%name%' => $feature['name'],
'%count%' => $feature['n']
]
d='Modules.Facetedsearch.Admin'
}
{/if}
</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_feat_{(int)$feature['id_feature']}"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
{/foreach}
{/if}
</ul>
</section>
</section>
</div>
</div>
{include file='./_partials/footer.tpl'}
</form>
</div>

View File

@@ -0,0 +1,28 @@
<?php
/**
* 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.
*
* @author PrestaShop SA <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)
*/
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../../../../');
exit;

View File

@@ -0,0 +1,327 @@
{**
* 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.
*
* @author PrestaShop SA <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)
*}
{include file='./_partials/messages.tpl'}
<div class="panel">
<h3><i class="icon-cogs"></i> {l s='Indexes and caches' d='Modules.Facetedsearch.Admin'}</h3>
<div id="indexing-warning" class="alert alert-warning" style="display: none">
{l s='Indexing is in progress. Please do not leave this page' d='Modules.Facetedsearch.Admin'}
</div>
<div class="row">
<p>
<a class="ajaxcall-recurcive btn btn-default" href="{$price_indexer_url}">{l s='Index all missing prices' d='Modules.Facetedsearch.Admin'}</a>
<a class="ajaxcall-recurcive btn btn-default" href="{$full_price_indexer_url}">{l s='Rebuild entire price index' d='Modules.Facetedsearch.Admin'}</a>
<a class="ajaxcall btn btn-default" href="{$attribute_indexer_url}">{l s='Build attributes and features indexes' d='Modules.Facetedsearch.Admin'}</a>
<a class="ajaxcall btn btn-default" href="{$clear_cache_url}">{l s='Clear cache' d='Modules.Facetedsearch.Admin'}</a>
</p>
</div>
<div class="row">
<div class="alert alert-info">
<p>{l s='We recommend to set regular cron tasks to manage the indexes and cache on daily/weekly basis.' d='Modules.Facetedsearch.Admin'}</p>
<br>
{l s='Add missing products to price index:' d='Modules.Facetedsearch.Admin'} <strong>{$price_indexer_url}</strong>
<br>
{l s='Rebuild price index:' d='Modules.Facetedsearch.Admin'} <strong>{$full_price_indexer_url}</strong>
<br>
{l s='Rebuild attribute index:' d='Modules.Facetedsearch.Admin'} <strong>{$attribute_indexer_url}</strong>
<br>
{l s='Flush block cache:' d='Modules.Facetedsearch.Admin'} <strong>{$clear_cache_url}</strong>
<br>
<br>
<p>{l s='A nightly rebuild is recommended.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
<div class="panel">
<h3><i class="icon-cogs"></i> {l s='Filters templates' d='Modules.Facetedsearch.Admin'}<span class="badge">{$filters_templates|count}</span></h3>
{if $filters_templates|count > 0}
<div class="row">
<table class="table">
<thead>
<tr>
<th class="fixed-width-xs center"><span class="title_box">{l s='ID' d='Admin.Global'}</span></th>
<th><span class="title_box text-left">{l s='Name' d='Admin.Global'}</span></th>
<th><span class="title_box">{l s='Pages' d='Admin.Global'}</span></th>
<th class="fixed-width-sm center"><span class="title_box">{l s='Categories' d='Admin.Global'}</span></th>
<th class="fixed-width-lg"><span class="title_box">{l s='Created on' d='Modules.Facetedsearch.Admin'}</span></th>
<th class="fixed-width-sm"><span class="title_box text-right">{l s='Actions' d='Modules.Facetedsearch.Admin'}</span></th>
</tr>
</thead>
<tbody>
{foreach $filters_templates as $template}
<tr>
<td class="center">{$template['id_layered_filter']}</td>
<td class="text-left">{$template['name']}</td>
<td>{$template['controllers']}</td>
<td class="center">{$template['n_categories']}</td>
<td>{$template['date_add']}</td>
<td>
{if empty($limit_warning)}
<div class="btn-group-action">
<div class="btn-group pull-right">
<a href="{$current_url}&amp;edit_filters_template=1&amp;id_layered_filter={(int)$template['id_layered_filter']}" class="btn btn-default">
<i class="icon-pencil"></i> {l s='Edit' d='Admin.Actions'}
</a>
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<span class="caret"></span>&nbsp;
</button>
<ul class="dropdown-menu">
<li>
<a href="{$current_url}&amp;deleteFilterTemplate=1&amp;id_layered_filter={(int)$template['id_layered_filter']}"
onclick="return confirm('{l s='Do you really want to delete this filter template?' d='Modules.Facetedsearch.Admin'}');">
<i class="icon-trash"></i> {l s='Delete' d='Admin.Actions'}
</a>
</li>
</ul>
</div>
</div>
{/if}
</td>
</tr>
{/foreach}
</tbody>
</table>
<div class="clearfix">&nbsp;</div>
</div>
{else}
<div class="row alert alert-warning">{l s='No filter template found.' d='Modules.Facetedsearch.Admin'}</div>
{/if}
{if empty($limit_warning)}
<div class="panel-footer">
<a class="btn btn-default pull-right" href="{$current_url}&amp;add_new_filters_template=1"><i class="process-icon-plus"></i> {l s='Add new template' d='Modules.Facetedsearch.Admin'}</a>
</div>
{/if}
</div>
<div class="panel">
<h3><i class="icon-cogs"></i> {l s='Configuration' d='Admin.Global'}</h3>
<form action="{$current_url}" method="post" class="form-horizontal">
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Enable cache system' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_cache_enabled" id="ps_layered_cache_enabled_on" value="1"{if $cache_enabled} checked="checked"{/if}>
<label for="ps_layered_cache_enabled_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_cache_enabled" id="ps_layered_cache_enabled_off" value="0"{if !$cache_enabled} checked="checked"{/if}>
<label for="ps_layered_cache_enabled_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">
{l s='This option caches filtering blocks, so the module does not have to query for matching products all the time. The cache is invalidated on every modification on your store. If you encounter some incosistencies, disable this cache or make sure to flush it if needed.' d='Modules.Facetedsearch.Admin'}
</div>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Show the number of matching products' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_show_qties" id="ps_layered_show_qties_on" value="1"{if $show_quantities} checked="checked"{/if}>
<label for="ps_layered_show_qties_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_show_qties" id="ps_layered_show_qties_off" value="0"{if !$show_quantities} checked="checked"{/if}>
<label for="ps_layered_show_qties_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">
{l s='Enable or disable display of matching products after filters. Disabling this won\'t bring any performance benefit, because matching products need to be calculated anyway.' d='Modules.Facetedsearch.Admin'}
</div>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Show products from subcategories' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_full_tree" id="ps_layered_full_tree_on" value="1"{if $full_tree} checked="checked"{/if}>
<label for="ps_layered_full_tree_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_full_tree" id="ps_layered_full_tree_off" value="0"{if !$full_tree} checked="checked"{/if}>
<label for="ps_layered_full_tree_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">
{l s='Enable this, if you want to display products from subcategories, even if they are not specifically assigned to the currently browsed category.' d='Modules.Facetedsearch.Admin'}
</div>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Show products only from default category' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_filter_by_default_category" id="ps_layered_filter_by_default_category_on" value="1"{if $filter_by_default_category} checked="checked"{/if}>
<label for="ps_layered_filter_by_default_category_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_filter_by_default_category" id="ps_layered_filter_by_default_category_off" value="0"{if !$filter_by_default_category} checked="checked"{/if}>
<label for="ps_layered_filter_by_default_category_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">
{l s='Works only if "Show products from subcategories" is off.' d='Modules.Facetedsearch.Admin'}
</div>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Category filter depth' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<input type="text" name="ps_layered_filter_category_depth" value="{if $category_depth !== false}{$category_depth}{else}1{/if}" class="fixed-width-sm" />
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">
{l s='This option controls the behavior of category filter block - how deep children of the currently browsed category you want to display? The default value is 1 - only the direct children. Use 0 for unlimited depth.' d='Modules.Facetedsearch.Admin'}
</div>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Use tax to filter price' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_filter_price_usetax" id="ps_layered_filter_price_usetax_on" value="1"{if $price_use_tax} checked="checked"{/if}>
<label for="ps_layered_filter_price_usetax_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_filter_price_usetax" id="ps_layered_filter_price_usetax_off" value="0"{if !$price_use_tax} checked="checked"{/if}>
<label for="ps_layered_filter_price_usetax_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Use rounding to filter price' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_filter_price_rounding" id="ps_layered_filter_price_rounding_on" value="1"{if $price_use_rounding} checked="checked"{/if}/>
<label for="ps_layered_filter_price_rounding_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_filter_price_rounding" id="ps_layered_filter_price_rounding_off" value="0"{if !$price_use_rounding} checked="checked"{/if}/>
<label for="ps_layered_filter_price_rounding_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Show unavailable, out of stock last' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_layered_filter_show_out_of_stock_last" id="ps_layered_filter_show_out_of_stock_last_on" value="1"{if $show_out_of_stock_last} checked="checked"{/if}/>
<label for="ps_layered_filter_show_out_of_stock_last_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_layered_filter_show_out_of_stock_last" id="ps_layered_filter_show_out_of_stock_last_off" value="0"{if !$show_out_of_stock_last} checked="checked"{/if}/>
<label for="ps_layered_filter_show_out_of_stock_last_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
</div>
<div class="form-group">
<label class="col-lg-3 control-label">{l s='Use Jquery UI slider' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="ps_use_jquery_ui_slider" id="ps_use_jquery_ui_slider_on" value="1"{if $use_jquery_ui_slider} checked="checked"{/if}>
<label for="ps_use_jquery_ui_slider_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="ps_use_jquery_ui_slider" id="ps_use_jquery_ui_slider_off" value="0"{if !$use_jquery_ui_slider} checked="checked"{/if}>
<label for="ps_use_jquery_ui_slider_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">
{l s='Switch this off only if your theme does not use Jquery UI slider. It is recommended to keep it on when using classic theme.' d='Modules.Facetedsearch.Admin'}
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">{l s='Default filter template for new categories' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-9">
<select class="form-control fixed-width-xxl" name="ps_layered_default_category_template" id="ps_layered_default_category_template">
<option value="0" {if empty($default_category_template)} selected="selected" {/if}>{l s='None' d='Admin.Global'}</option>
{foreach $filters_templates as $template}
<option value="{$template['id_layered_filter']}" {if $default_category_template == $template['id_layered_filter']} selected="selected" {/if}>{$template['name']}</option>
{/foreach}
</select>
</div>
<div class="col-lg-9 col-lg-offset-3">
<div class="help-block">{l s='If you want to automatically assign a filter template to new categories, select it here.' d='Modules.Facetedsearch.Admin'}</div>
</div>
</div>
<div class="panel-footer">
<button type="submit" class="btn btn-default pull-right" name="submitLayeredSettings"><i class="process-icon-save"></i> {l s='Save' d='Admin.Actions'}</button>
</div>
</form>
</div>
<script type="text/javascript">
{if isset($PS_LAYERED_INDEXED)}var PS_LAYERED_INDEXED = {$PS_LAYERED_INDEXED};{/if}
var token = '{$token}';
var id_lang = {$id_lang};
var base_folder = '{$base_folder}';
var translations = new Object();
translations.in_progress = '{l s='(in progress)' js=1 d='Modules.Facetedsearch.Admin'}';
translations.url_indexation_finished = '{l s='URL indexing finished' js=1 d='Modules.Facetedsearch.Admin'}';
translations.attribute_indexation_finished = '{l s='Attribute indexing finished' js=1 d='Modules.Facetedsearch.Admin'}';
translations.url_indexation_failed = '{l s='URL indexing failed' js=1 d='Modules.Facetedsearch.Admin'}';
translations.attribute_indexation_failed = '{l s='Attribute indexing failed' js=1 d='Modules.Facetedsearch.Admin'}';
translations.price_indexation_finished = '{l s='Price indexing finished' js=1 d='Modules.Facetedsearch.Admin'}';
translations.price_indexation_failed = '{l s='Price indexing failed' js=1 d='Modules.Facetedsearch.Admin'}';
translations.price_indexation_in_progress = '{l s='(in progress, %s products price to index)' js=1 d='Modules.Facetedsearch.Admin'}';
translations.loading = '{l s='Loading...' js=1 d='Modules.Facetedsearch.Admin'}';
translations.delete_all_filters_templates = '{l s='You selected -All categories-: all existing filter templates will be deleted. Is it OK?' js=1 d='Modules.Facetedsearch.Admin'}';
translations.no_selected_categories = '{l s='You must select at least one category' js=1 d='Modules.Facetedsearch.Admin'}';
translations.no_selected_controllers = '{l s='You must select at least one page' js=1 d='Modules.Facetedsearch.Admin'}';
</script>

View File

@@ -0,0 +1,216 @@
{**
* 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.
*
* @author PrestaShop SA <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)
*}
{include file='./_partials/messages.tpl'}
{include file='./_functions/show_limit.tpl'}
<div class="panel">
<h3><i class="icon-cogs"></i> {l s='New filters template' d='Modules.Facetedsearch.Admin'}</h3>
<form action="{$current_url}" method="post" class="form-horizontal" onsubmit="return checkForm();">
<input type="hidden" name="id_layered_filter" id="id_layered_filter" value="{$id_layered_filter}" />
{include file='./_partials/header.tpl'}
{include file='./_partials/controllers.tpl'}
{include file='./_partials/categories-tree.tpl'}
{include file='./_partials/shops.tpl'}
<div class="form-group">
<label class="control-label col-lg-3">
<span class="badge" id="selected_filters">0</span>
<span class="label-tooltip" data-toggle="tooltip" title="" data-original-title="{l s='You can drag and drop filters to adjust position' d='Modules.Facetedsearch.Admin'}">{l s='Filters:' d='Modules.Facetedsearch.Admin'}</span>
</label>
<div class="col-lg-9">
<section class="filter_panel">
<header class="clearfix">
<span class="badge pull-right">
{l
s='Total filters: %s'
sprintf=[$total_filters]
d='Modules.Facetedsearch.Admin'
}
</span>
</header>
<section class="filter_list">
<ul class="list-unstyled sortable" id="list-filters">
{foreach from=$default_filters item=filter key=filterId}
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="{$filterId}" id="{$filterId}" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<h4>{l s=$filter['label'] d='Modules.Facetedsearch.Admin'}</h4>
</div>
<div class="col-lg-3">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
{if !empty($filter['slider'])}
<p class="form-control-static">{l s='List of ranges' d='Modules.Facetedsearch.Admin'}</p>
{else}
<div class="col-lg-6">
<select name="{$filterId}_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
{/if}
</div>
<div class="col-lg-3">
{if empty($filter['slider'])}
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element=$filterId}
</div>
{/if}
</div>
</li>
{/foreach}
{if $attribute_groups|count > 0}
{foreach $attribute_groups as $attribute_group}
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}" id="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">
{if $attribute_group['n'] > 1}
{l
s='Attribute group: %name% (%count% attributes)'
sprintf=[
'%name%' => $attribute_group['name'],
'%count%' => $attribute_group['n']
]
d='Modules.Facetedsearch.Admin'
}
{else}
{l
s='Attribute group: %name% (%count% attribute)'
sprintf=[
'%name%' => $attribute_group['name'],
'%count%' => $attribute_group['n']
]
d='Modules.Facetedsearch.Admin'
}
{/if}
{if $attribute_group['is_color_group']}
<img src="../img/admin/color_swatch.png" alt="" title="{l s='This group will allow user to select a color' d='Modules.Facetedsearch.Admin'}" />
{/if}
</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
{/foreach}
{/if}
{if $features|count > 0}
{foreach $features as $feature}
<li class="filter_list_item row" draggable="true">
<div class="col-lg-2">
<label class="switch-light prestashop-switch fixed-width-lg">
<input name="layered_selection_feat_{(int)$feature['id_feature']}" id="layered_selection_feat_{(int)$feature['id_feature']}" type="checkbox" />
<span>
<span>{l s='Yes' d='Admin.Global'}</span>
<span>{l s='No' d='Admin.Global'}</span>
</span>
<a class="slide-button btn"></a>
</label>
</div>
<div class="col-lg-4">
<span class="module_name">
{if $feature['n'] > 1}
{l
s='Feature: %name% (%count% values)'
sprintf=[
'%name%' => $feature['name'],
'%count%' => $feature['n']
]
d='Modules.Facetedsearch.Admin'
}
{else}
{l
s='Feature: %name% (%count% value)'
sprintf=[
'%name%' => $feature['name'],
'%count%' => $feature['n']
]
d='Modules.Facetedsearch.Admin'
}
{/if}
</span>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter result limit:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
{call get_limit_select element="layered_selection_feat_{(int)$feature['id_feature']}"}
</div>
</div>
<div class="col-lg-3 pull-right">
<label class="control-label col-lg-6">{l s='Filter style:' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-6">
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_type">
<option value="0">{l s='Checkbox' d='Modules.Facetedsearch.Admin'}</option>
<option value="1">{l s='Radio button' d='Modules.Facetedsearch.Admin'}</option>
<option value="2">{l s='Drop-down list' d='Modules.Facetedsearch.Admin'}</option>
</select>
</div>
</div>
</li>
{/foreach}
{/if}
</ul>
</section>
</section>
</div>
</div>
{include file='./_partials/footer.tpl'}
</form>
</div>

View File

@@ -0,0 +1,37 @@
{**
* 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.
*
* @author PrestaShop SA <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)
*}
<section id="js-active-search-filters" class="{if $activeFilters|count}active_filters{else}hide{/if}">
{block name='active_filters_title'}
<p class="h6 {if $activeFilters|count}active-filter-title{else}hidden-xs-up{/if}">{l s='Active filters' d='Shop.Theme.Global'}</p>
{/block}
{if $activeFilters|count}
<ul>
{foreach from=$activeFilters item="filter"}
{block name='active_filters_item'}
<li class="filter-block">
{l s='%1$s:' d='Shop.Theme.Catalog' sprintf=[$filter.facetLabel]}
{$filter.label}
<a class="js-search-link" href="{$filter.nextEncodedFacetsURL}"><i class="material-icons close">&#xE5CD;</i></a>
</li>
{/block}
{/foreach}
</ul>
{/if}
</section>

View File

@@ -0,0 +1,183 @@
{**
* 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.
*
* @author PrestaShop SA <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 $displayedFacets|count}
<div id="search_filters">
{block name='facets_title'}
<p class="text-uppercase h6 hidden-sm-down">{l s='Filter By' d='Shop.Theme.Actions'}</p>
{/block}
{block name='facets_clearall_button'}
{if $activeFilters|count}
<div id="_desktop_search_filters_clear_all" class="hidden-sm-down clear-all-wrapper">
<button data-search-url="{$clear_all_link}" class="btn btn-tertiary js-search-filters-clear-all">
<i class="material-icons">&#xE14C;</i>
{l s='Clear all' d='Shop.Theme.Actions'}
</button>
</div>
{/if}
{/block}
{foreach from=$displayedFacets item="facet"}
<section class="facet clearfix" data-type="{$facet.type}" data-name="{$facet.label}">
<p class="h6 facet-title hidden-sm-down">{$facet.label}</p>
{assign var=_expand_id value=10|mt_rand:100000}
{assign var=_collapse value=true}
{foreach from=$facet.filters item="filter"}
{if $filter.active}{assign var=_collapse value=false}{/if}
{/foreach}
<div class="title hidden-md-up" data-target="#facet_{$_expand_id}" data-toggle="collapse"{if !$_collapse} aria-expanded="true"{/if}>
<p class="h6 facet-title">{$facet.label}</p>
<span class="navbar-toggler collapse-icons">
<i class="material-icons add">&#xE313;</i>
<i class="material-icons remove">&#xE316;</i>
</span>
</div>
{if in_array($facet.widgetType, ['radio', 'checkbox'])}
{block name='facet_item_other'}
<ul id="facet_{$_expand_id}" class="collapse{if !$_collapse} in{/if}">
{foreach from=$facet.filters key=filter_key item="filter"}
{if !$filter.displayed}
{continue}
{/if}
<li>
<label class="facet-label{if $filter.active} active {/if}" for="facet_input_{$_expand_id}_{$filter_key}">
{if $facet.multipleSelectionAllowed}
<span class="custom-checkbox">
<input
id="facet_input_{$_expand_id}_{$filter_key}"
data-search-url="{$filter.nextEncodedFacetsURL}"
type="checkbox"
{if $filter.active }checked{/if}
>
{if isset($filter.properties.color)}
<span class="color" style="background-color:{$filter.properties.color}"></span>
{elseif isset($filter.properties.texture)}
<span class="color texture" style="background-image:url({$filter.properties.texture})"></span>
{else}
<span {if !$js_enabled} class="ps-shown-by-js" {/if}><i class="material-icons rtl-no-flip checkbox-checked">&#xE5CA;</i></span>
{/if}
</span>
{else}
<span class="custom-radio">
<input
id="facet_input_{$_expand_id}_{$filter_key}"
data-search-url="{$filter.nextEncodedFacetsURL}"
type="radio"
name="filter {$facet.label}"
{if $filter.active }checked{/if}
>
<span {if !$js_enabled} class="ps-shown-by-js" {/if}></span>
</span>
{/if}
<a
href="{$filter.nextEncodedFacetsURL}"
class="_gray-darker search-link js-search-link"
rel="nofollow"
>
{$filter.label}
{if $filter.magnitude and $show_quantities}
<span class="magnitude">({$filter.magnitude})</span>
{/if}
</a>
</label>
</li>
{/foreach}
</ul>
{/block}
{elseif $facet.widgetType == 'dropdown'}
{block name='facet_item_dropdown'}
<ul id="facet_{$_expand_id}" class="collapse{if !$_collapse} in{/if}">
<li>
<div class="col-sm-12 col-xs-12 col-md-12 facet-dropdown dropdown">
<a class="select-title" rel="nofollow" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{$active_found = false}
<span>
{foreach from=$facet.filters item="filter"}
{if $filter.active}
{$filter.label}
{if $filter.magnitude and $show_quantities}
({$filter.magnitude})
{/if}
{$active_found = true}
{/if}
{/foreach}
{if !$active_found}
{l s='(no filter)' d='Shop.Theme.Global'}
{/if}
</span>
<i class="material-icons float-xs-right">&#xE5C5;</i>
</a>
<div class="dropdown-menu">
{foreach from=$facet.filters item="filter"}
{if !$filter.active}
<a
rel="nofollow"
href="{$filter.nextEncodedFacetsURL}"
class="select-list js-search-link"
>
{$filter.label}
{if $filter.magnitude and $show_quantities}
({$filter.magnitude})
{/if}
</a>
{/if}
{/foreach}
</div>
</div>
</li>
</ul>
{/block}
{elseif $facet.widgetType == 'slider'}
{block name='facet_item_slider'}
{foreach from=$facet.filters item="filter"}
<ul id="facet_{$_expand_id}"
class="faceted-slider collapse{if !$_collapse} in{/if}"
data-slider-min="{$facet.properties.min}"
data-slider-max="{$facet.properties.max}"
data-slider-id="{$_expand_id}"
data-slider-values="{$filter.value|@json_encode}"
data-slider-unit="{$facet.properties.unit}"
data-slider-label="{$facet.label}"
data-slider-specifications="{$facet.properties.specifications|@json_encode}"
data-slider-encoded-url="{$filter.nextEncodedFacetsURL}"
>
<li>
<p id="facet_label_{$_expand_id}">
{$filter.label}
</p>
<div id="slider-range_{$_expand_id}"></div>
</li>
</ul>
{/foreach}
{/block}
{/if}
</section>
{/foreach}
</div>
{else}
<div id="search_filters" style="display:none;">
</div>
{/if}

View File

@@ -0,0 +1,11 @@
<?php
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../');
exit;

View File

@@ -0,0 +1,28 @@
<?php
/**
* 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.
*
* @author PrestaShop SA <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)
*/
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../../../../');
exit;

View File

@@ -0,0 +1,76 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group">
<label class="control-label col-lg-4">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="{l s='Invalid characters: <>;=#{}_' d='Modules.Facetedsearch.Admin'}">{l s='URL' d='Modules.Facetedsearch.Admin'}</span>
</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed URLs by choosing the word that best represent this attribute. By default, PrestaShop uses the attribute\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-4">{l s='Meta title' d='Admin.Global'}</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed page titles by choosing the word that best represent this attribute. By default, PrestaShop uses the attribute\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,95 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group">
<label class="control-label col-lg-4">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="{l s='Invalid characters: <>;=#{}_' d='Modules.Facetedsearch.Admin'}">{l s='URL' d='Admin.Global'}</span>
</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed URLs by choosing the word that best represent this attribute. By default, PrestaShop uses the attribute\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-4">{l s='Meta title' d='Admin.Global'}</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed page titles by choosing the word that best represent this attribute. By default, PrestaShop uses the attribute\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-4" for="">{l s='Indexable' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-8">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="layered_indexable" id="indexable_on" value="1"{if $is_indexable} checked="checked"{/if}>
<label for="indexable_on" class="radioCheck">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="layered_indexable" id="indexable_off" value="0"{if !$is_indexable} checked="checked"{/if}>
<label for="indexable_off" class="radioCheck">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-push-4">
<p class="help-block">{l s='Use this attribute in URL generated by the Faceted Search module.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>

View File

@@ -0,0 +1,95 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group">
<label class="control-label col-lg-4">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="{l s='Invalid characters: <>;=#{}_' d='Modules.Facetedsearch.Admin'}">{l s='URL' d='Admin.Global'}</span>
</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed URLs by choosing the word that best represent this feature. By default, PrestaShop uses the feature\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-4">{l s='Meta title' d='Admin.Global'}</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed page titles by choosing the word that best represent this feature. By default, PrestaShop uses the feature\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-4" for="">{l s='Indexable' d='Modules.Facetedsearch.Admin'}</label>
<div class="col-lg-8">
<span class="switch prestashop-switch fixed-width-lg">
<input type="radio" name="layered_indexable" id="indexable_on" value="1"{if $is_indexable} checked="checked"{/if}>
<label for="indexable_on">
<i class="color_success"></i> {l s='Yes' d='Admin.Global'}
</label>
<input type="radio" name="layered_indexable" id="indexable_off" value="0"{if !$is_indexable} checked="checked"{/if}>
<label for="indexable_off">
<i class="color_danger"></i> {l s='No' d='Admin.Global'}
</label>
<a class="slide-button btn"></a>
</span>
</div>
<div class="col-lg-9 col-lg-push-4">
<p class="help-block">{l s='Use this attribute in URL generated by the Faceted Search module.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>

View File

@@ -0,0 +1,76 @@
{**
* 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.
*
* @author PrestaShop SA <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="form-group">
<label class="control-label col-lg-4">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="{l s='Invalid characters: <>;=#{}_' d='Modules.Facetedsearch.Admin'}">{l s='URL' d='Modules.Facetedsearch.Admin'}</span>
</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed URLs by choosing the word that best represent this feature\'s value. By default, PrestaShop uses the value\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-4">{l s='Meta title' d='Admin.Global'}</label>
<div class="col-lg-8">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='When the Faceted Search module is enabled, you can get more detailed page titles by choosing the word that best represent this feature\'s value. By default, PrestaShop uses the value\'s name, but you can change that setting using this field.' d='Modules.Facetedsearch.Admin'}</p>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,28 @@
<?php
/**
* 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.
*
* @author PrestaShop SA <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)
*/
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../../../../');
exit;

View File

@@ -0,0 +1,28 @@
<?php
/**
* 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.
*
* @author PrestaShop SA <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)
*/
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', false);
header('Pragma: no-cache');
header('Location: ../../../');
exit;