// BlockLayered 1.5 backward compatibility
This commit is contained in:
@@ -1495,36 +1495,64 @@ class BlockLayered extends Module
|
||||
$this->context->smarty->assign('asso_shops', $helper->renderAssoShop());
|
||||
}
|
||||
|
||||
$tree_categories_helper = new HelperTreeCategories('categories-treeview');
|
||||
$tree_categories_helper->setRootCategory((Shop::getContext() == Shop::CONTEXT_SHOP ? Category::getRootCategory()->id_category : 0))
|
||||
->setUseCheckBox(true);
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
{
|
||||
$tree_categories_helper = new HelperTreeCategories('categories-treeview');
|
||||
$tree_categories_helper->setRootCategory((Shop::getContext() == Shop::CONTEXT_SHOP ? Category::getRootCategory()->id_category : 0))
|
||||
->setUseCheckBox(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Shop::getContext() == Shop::CONTEXT_SHOP)
|
||||
{
|
||||
$root_category = Category::getRootCategory();
|
||||
$root_category = array('id_category' => $root_category->id_category, 'name' => $root_category->name);
|
||||
}
|
||||
else
|
||||
$root_category = array('id_category' => '0', 'name' => $this->l('Root'));
|
||||
|
||||
$tree_categories_helper = new Helper();
|
||||
}
|
||||
|
||||
$module_url = Tools::getProtocol(Tools::usingSecureMode()).$_SERVER['HTTP_HOST'].$this->getPathUri();
|
||||
|
||||
if (method_exists($this->context->controller, 'addJquery'))
|
||||
{
|
||||
$this->context->controller->addJS($this->_path.'js/blocklayered_admin.js');
|
||||
$this->context->controller->addJS(_PS_JS_DIR_.'vendor/jquery.sortable.js');
|
||||
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
$this->context->controller->addJS(_PS_JS_DIR_.'vendor/jquery.sortable.js');
|
||||
else
|
||||
$this->context->controller->addJS($this->_path.'js/jquery.sortable.js');
|
||||
}
|
||||
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
$this->context->controller->addCSS($this->_path.'css/blocklayered_admin_bt.css');
|
||||
/*else
|
||||
$this->context->controller->addCSS($this->_path.'css/blocklayered_admin.css');*/
|
||||
$this->context->controller->addCSS($this->_path.'css/blocklayered_admin_1.6.css');
|
||||
else
|
||||
$this->context->controller->addCSS($this->_path.'css/blocklayered_admin.css');
|
||||
|
||||
if (Tools::getValue('add_new_filters_template'))
|
||||
{
|
||||
$this->context->smarty->assign(array(
|
||||
'current_url' => $this->context->link->getAdminLink('AdminModules').'&configure=blocklayered&tab_module=front_office_features&module_name=blocklayered',
|
||||
'uri' => $this->getPathUri(),
|
||||
'id_layered_filter' => 0,
|
||||
'template_name' => sprintf($this->l('My template - %s'), date('Y-m-d')),
|
||||
'attribute_groups' => $attribute_groups,
|
||||
'features' => $features,
|
||||
'total_filters' => 6+count($attribute_groups)+count($features),
|
||||
'categories_tree' => $tree_categories_helper->render(),
|
||||
'total_filters' => 6+count($attribute_groups)+count($features)
|
||||
));
|
||||
|
||||
return $this->display(__FILE__, 'views/templates/admin/add.tpl');
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
$this->context->smarty->assign('categories_tree', $tree_categories_helper->render());
|
||||
else
|
||||
$this->context->smarty->assign('categories_tree', $tree_categories_helper->renderCategoryTree(
|
||||
$root_category, array(), 'categoryBox', false, false, array(), true));
|
||||
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
return $this->display(__FILE__, 'views/templates/admin/add_1.6.tpl');
|
||||
else
|
||||
return $this->display(__FILE__, 'views/templates/admin/add.tpl');
|
||||
}
|
||||
else if (Tools::getValue('edit_filters_template'))
|
||||
{
|
||||
@@ -1535,28 +1563,41 @@ class BlockLayered extends Module
|
||||
);
|
||||
|
||||
$filters = unserialize($template['filters']);
|
||||
$tree_categories_helper->setSelectedCategories($filters['categories']);
|
||||
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
{
|
||||
$tree_categories_helper->setSelectedCategories($filters['categories']);
|
||||
$this->context->smarty->assign('categories_tree', $tree_categories_helper->render());
|
||||
}
|
||||
else
|
||||
$this->context->smarty->assign('categories_tree',$tree_categories_helper->renderCategoryTree(
|
||||
$root_category, $filters['categories'], 'categoryBox', false, false, array(), true));
|
||||
|
||||
$select_shops = $filters['shop_list'];
|
||||
unset($filters['categories']);
|
||||
unset($filters['shop_list']);
|
||||
|
||||
$this->context->smarty->assign(array(
|
||||
'current_url' => $this->context->link->getAdminLink('AdminModules').'&configure=blocklayered&tab_module=front_office_features&module_name=blocklayered',
|
||||
'uri' => $this->getPathUri(),
|
||||
'id_layered_filter' => (int)Tools::getValue('id_layered_filter'),
|
||||
'template_name' => $template['name'],
|
||||
'attribute_groups' => $attribute_groups,
|
||||
'features' => $features,
|
||||
'filters' => Tools::jsonEncode($filters),
|
||||
'total_filters' => 6+count($attribute_groups)+count($features),
|
||||
'categories_tree' => $tree_categories_helper->render(),
|
||||
'total_filters' => 6+count($attribute_groups)+count($features)
|
||||
));
|
||||
|
||||
return $this->display(__FILE__, 'views/templates/admin/add.tpl');
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
return $this->display(__FILE__, 'views/templates/admin/add_1.6.tpl');
|
||||
else
|
||||
return $this->display(__FILE__, 'views/templates/admin/add.tpl');
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->context->smarty->assign(array(
|
||||
'message' => $message,
|
||||
'uri' => $this->getPathUri(),
|
||||
'PS_LAYERED_INDEXED' => Configuration::getGlobalValue('PS_LAYERED_INDEXED'),
|
||||
'current_url' => Tools::safeOutput(preg_replace('/&deleteFilterTemplate=[0-9]*&id_layered_filter=[0-9]*/', '', $_SERVER['REQUEST_URI'])),
|
||||
'id_lang' => Context::getContext()->cookie->id_lang,
|
||||
@@ -1577,8 +1618,11 @@ class BlockLayered extends Module
|
||||
'index_mnf' => Configuration::get('PS_LAYERED_FILTER_INDEX_MNF'),
|
||||
'index_cat' => Configuration::get('PS_LAYERED_FILTER_INDEX_CAT')
|
||||
));
|
||||
|
||||
return $this->display(__FILE__, 'views/templates/admin/view.tpl');
|
||||
|
||||
if (version_compare(_PS_VERSION_, '1.6.0', '>=') === TRUE)
|
||||
return $this->display(__FILE__, 'views/templates/admin/view_1.6.tpl');
|
||||
else
|
||||
return $this->display(__FILE__, 'views/templates/admin/view.tpl');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3174,4 +3218,4 @@ class BlockLayered extends Module
|
||||
if ($values)
|
||||
Db::getInstance()->execute(rtrim($sql_to_insert, ','));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,21 +1,53 @@
|
||||
#error-filter-name { display: none; }
|
||||
#layered_container_left ul, #layered_container_right ul { list-style-type: none; padding-left: 0px; }
|
||||
.ui-effects-transfer { border: 1px solid #CCC; }
|
||||
.ui-state-highlight { height: 1.5em; line-height: 1.2em; }
|
||||
ul#selected_filters, #layered_container_right ul { list-style-type: none; margin: 0; padding: 0; }
|
||||
ul#selected_filters li, #layered_container_right ul li { width: 326px; font-size: 11px; padding: 8px 9px 7px 20px; height: 14px; margin-bottom: 5px; }
|
||||
ul#selected_filters li span.ui-icon { position: absolute; margin-top: -2px; margin-left: -18px; }
|
||||
#layered_container_right ul li span { display: none; }
|
||||
#layered_container_right ul li { padding-left: 8px; position: relative; }
|
||||
#layered_container_left ul li { cursor: move; position: relative; }
|
||||
#layered-cat-counter { display: none; }
|
||||
#layered-step-2, #layered-step-3 { display: none; }
|
||||
#layered-step-2 h3 { margin-top: 0; }
|
||||
#table-filter-templates tr th, #table-filter-templates tr td { text-align: center; }
|
||||
.filter_type { width: 70px; position: absolute; right: 53px; top: 5px;}
|
||||
.filter_show_limit { position: absolute; width: 40px; right: 5px; top: 5px; }
|
||||
#layered-step-3 .alert { width: auto; }
|
||||
#fancybox-content {
|
||||
height: 400px !important;
|
||||
overflow: auto !important;
|
||||
.table-filter-templates, .table-configurations {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.table-configurations td {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.table-configurations .label {
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
width: 30%;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.help-block {
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.text-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.text-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.filter_panel header {
|
||||
margin-bottom: 10px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.filter_list {
|
||||
background-color: #fff;
|
||||
padding-top: 1px;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
.filter_list_item {
|
||||
background-color: #E9E9E9;
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.filter_list_item td {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.filter_list_item .filter-title {
|
||||
font-weight: bold;
|
||||
width: 100%;
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 280 B |
Binary file not shown.
|
After Width: | Height: | Size: 473 B |
Binary file not shown.
|
After Width: | Height: | Size: 973 B |
@@ -58,7 +58,7 @@ $(document).ready(
|
||||
if (this.running == true)
|
||||
return false;
|
||||
|
||||
$('.ajax-message').hide();
|
||||
$('.ajax-message').hide();
|
||||
this.running = true;
|
||||
|
||||
if (typeof(this.restartAllowed) == 'undefined' || this.restartAllowed)
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
/*
|
||||
* HTML5 Sortable jQuery Plugin
|
||||
* http://farhadi.ir/projects/html5sortable
|
||||
*
|
||||
* Copyright 2012, Ali Farhadi
|
||||
* Released under the MIT license.
|
||||
*/
|
||||
(function($) {
|
||||
var dragging, placeholders = $();
|
||||
$.fn.sortable = function(options) {
|
||||
var method = String(options);
|
||||
options = $.extend({
|
||||
connectWith: false
|
||||
}, options);
|
||||
return this.each(function() {
|
||||
if (/^enable|disable|destroy$/.test(method)) {
|
||||
var items = $(this).children($(this).data('items')).attr('draggable', method == 'enable');
|
||||
if (method == 'destroy') {
|
||||
items.add(this).removeData('connectWith items')
|
||||
.off('dragstart.h5s dragend.h5s selectstart.h5s dragover.h5s dragenter.h5s drop.h5s');
|
||||
}
|
||||
return;
|
||||
}
|
||||
var isHandle, index, items = $(this).children(options.items);
|
||||
var placeholder = $('<' + (/^ul|ol$/i.test(this.tagName) ? 'li' : 'div') + ' class="sortable-placeholder">');
|
||||
items.find(options.handle).mousedown(function() {
|
||||
isHandle = true;
|
||||
}).mouseup(function() {
|
||||
isHandle = false;
|
||||
});
|
||||
$(this).data('items', options.items)
|
||||
placeholders = placeholders.add(placeholder);
|
||||
if (options.connectWith) {
|
||||
$(options.connectWith).add(this).data('connectWith', options.connectWith);
|
||||
}
|
||||
items.attr('draggable', 'true').on('dragstart.h5s', function(e) {
|
||||
if (options.handle && !isHandle) {
|
||||
return false;
|
||||
}
|
||||
isHandle = false;
|
||||
var dt = e.originalEvent.dataTransfer;
|
||||
dt.effectAllowed = 'move';
|
||||
dt.setData('Text', 'dummy');
|
||||
index = (dragging = $(this)).addClass('sortable-dragging').index();
|
||||
}).on('dragend.h5s', function() {
|
||||
if (!dragging) {
|
||||
return;
|
||||
}
|
||||
dragging.removeClass('sortable-dragging').show();
|
||||
placeholders.detach();
|
||||
if (index != dragging.index()) {
|
||||
dragging.parent().trigger('sortupdate', {item: dragging, start_index: index, end_index: dragging.index()});
|
||||
}
|
||||
dragging = null;
|
||||
}).not('a[href], img').on('selectstart.h5s', function() {
|
||||
this.dragDrop && this.dragDrop();
|
||||
return false;
|
||||
}).end().add([this, placeholder]).on('dragover.h5s dragenter.h5s drop.h5s', function(e) {
|
||||
if (!items.is(dragging) && options.connectWith !== $(dragging).parent().data('connectWith')) {
|
||||
return true;
|
||||
}
|
||||
if (e.type == 'drop') {
|
||||
e.stopPropagation();
|
||||
placeholders.filter(':visible').after(dragging);
|
||||
dragging.trigger('dragend.h5s');
|
||||
return false;
|
||||
}
|
||||
e.preventDefault();
|
||||
e.originalEvent.dataTransfer.dropEffect = 'move';
|
||||
if (items.is(this)) {
|
||||
if (options.forcePlaceholderSize) {
|
||||
placeholder.height(dragging.outerHeight());
|
||||
}
|
||||
dragging.hide();
|
||||
$(this)[placeholder.index() < $(this).index() ? 'after' : 'before'](placeholder);
|
||||
placeholders.not(placeholder).detach();
|
||||
} else if (!placeholders.is(this) && !$(this).children(options.items).length) {
|
||||
placeholders.detach();
|
||||
$(this).append(placeholder);
|
||||
}
|
||||
return false;
|
||||
});
|
||||
});
|
||||
};
|
||||
})(jQuery);
|
||||
@@ -1,373 +1,310 @@
|
||||
{if isset($message)}{$message}{/if}
|
||||
<div class="panel" id="new-filters-template">
|
||||
<h3><i class="icon-cogs"></i> {l s='New filters template' mod='blocklayered'}</h3>
|
||||
<fieldset>
|
||||
<legend><img src="{$uri}/img/cogs.gif" alt="{l s='Configuration' mod='blocklayered'}" /> {l s='New filters template' mod='blocklayered'}</legend>
|
||||
<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}" />
|
||||
<input type="hidden" name="n_existing" id="n_existing" value="{$filters_templates|count}" />
|
||||
<div class="form-group">
|
||||
<label class="control-label col-lg-3">{l s='Template name:' mod='blocklayered'}</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' mod='blockfacette'}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="control-label col-lg-3">{l s='Categories used for this template:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
{$categories_tree}
|
||||
</div>
|
||||
</div>
|
||||
{if isset($asso_shops)}
|
||||
<div class="form-group">
|
||||
<label class="control-label col-lg-3">{l s='Choose shop association:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">{$asso_shops}</div>
|
||||
</div>
|
||||
{/if}
|
||||
<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' mod='blocclayered'}">{l s='Filters:' mod='blocklayered'}</span>
|
||||
</label>
|
||||
<div class="col-lg-9">
|
||||
<section class="filter_panel">
|
||||
<header>
|
||||
<span class="badge pull-right">{l s='Total filters: %s'|sprintf:$total_filters mod='blocklayered'}</span>
|
||||
</header>
|
||||
<section class="filter_list">
|
||||
<ul class="list-unstyled sortable">
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<h4>{l s='Sub-categories filter' mod='blockfacette'}</h4>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_subcategories_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_subcategories_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product stock filter' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_stock_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_stock_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product condition filter' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_condition_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_condition_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product manufacturer filter' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_manufacturer_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_manufacturer_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product weight filter (slider)' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_weight_slider_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_weight_slider_filter_type">
|
||||
<option value="0">{l s='Slider' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Inputs area' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='List of values' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product price filter (slider)' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_price_slider_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_price_slider_filter_type">
|
||||
<option value="0">{l s='Slider' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Inputs area' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='List of values' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{if $attribute_groups|count > 0}
|
||||
{foreach $attribute_groups as $attribute_group}
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<h4>
|
||||
{if $attribute_group['n'] > 1}
|
||||
{l s='Attribute group: %1$s (%2$d attributes)'|sprintf:$attribute_group['name']:$attribute_group['n'] mod='blockfacette'}
|
||||
{else}
|
||||
{l s='Attribute group: %1$s (%2$d attribute)'|sprintf:$attribute_group['name']:$attribute_group['n'] mod='blockfacette'}
|
||||
{/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' mod='blockfacette'}" />
|
||||
{/if}
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</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' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/if}
|
||||
<table class="table-configurations">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="label">{l s='Template name:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<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' mod='blockfacette'}</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">{l s='Categories used for this template:' mod='blocklayered'}</td>
|
||||
<td>{$categories_tree}</td>
|
||||
</tr>
|
||||
{if isset($asso_shops)}
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Choose shop association:' mod='blocklayered'}
|
||||
</td>
|
||||
<td>{$asso_shops}</td>
|
||||
</tr>
|
||||
{/if}
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Filters:' mod='blocklayered'}
|
||||
<p class="help-block">{l s='You can drag and drop filters to adjust position' mod='blocclayered'}</p>
|
||||
</td>
|
||||
<td>
|
||||
<section class="filter_panel">
|
||||
<header>
|
||||
{l s='Total filters: %s'|sprintf:$total_filters mod='blocklayered'} - {l s='Selected filters: <span id=\'selected_filters\'>%s</span>'|sprintf:0 mod='blocklayered'}
|
||||
</header>
|
||||
<section class="filter_list">
|
||||
<ul class="list-unstyled sortable">
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_subcategories" id="layered_selection_subcategories" type="checkbox" /></td>
|
||||
<td class="filter-title">{l s='Sub-categories filter' mod='blockfacette'}</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_subcategories_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_subcategories_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_stock" id="layered_selection_stock" type="checkbox" /></td>
|
||||
<td class="filter-title">{l s='Product stock filter' mod='blockfacette'}</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_stock_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_stock_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_condition" id="layered_selection_condition" type="checkbox" /></td>
|
||||
<td class="filter-title">{l s='Product condition filter' mod='blockfacette'}</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_condition_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_condition_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_manufacturer" id="layered_selection_manufacturer" type="checkbox" /></td>
|
||||
<td class="filter-title">{l s='Product manufacturer filter' mod='blockfacette'}</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_manufacturer_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_manufacturer_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_weight_slider" id="layered_selection_weight_slider" type="checkbox" /></td>
|
||||
<td class="filter-title">{l s='Product weight filter (slider)' mod='blockfacette'}</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_weight_slider_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_weight_slider_filter_type">
|
||||
<option value="0">{l s='Slider' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Inputs area' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='List of values' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_price_slider" id="layered_selection_price_slider" type="checkbox" /></td>
|
||||
<td class="filter-title">{l s='Product price filter (slider)' mod='blockfacette'}</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_price_slider_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_price_slider_filter_type">
|
||||
<option value="0">{l s='Slider' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Inputs area' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='List of values' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
{if $attribute_groups|count > 0}
|
||||
{foreach $attribute_groups as $attribute_group}
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}" id="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}" type="checkbox" /></td>
|
||||
<td class="filter-title">
|
||||
{if $attribute_group['n'] > 1}
|
||||
{l s='Attribute group: %1$s (%2$d attributes)'|sprintf:$attribute_group['name']:$attribute_group['n'] mod='blockfacette'}
|
||||
{else}
|
||||
{l s='Attribute group: %1$s (%2$d attribute)'|sprintf:$attribute_group['name']:$attribute_group['n'] mod='blockfacette'}
|
||||
{/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' mod='blockfacette'}" />
|
||||
{/if}
|
||||
</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/if}
|
||||
|
||||
{if $features|count > 0}
|
||||
{foreach $features as $feature}
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<h4>
|
||||
{if $feature['n'] > 1}{l s='Feature: %1$s (%2$d values)'|sprintf:$feature['name']:$feature['n'] mod='blockfacette'}{else}{l s='Feature: %1$s (%2$d value)'|sprintf:$feature['name']:$feature['n'] mod='blockfacette'}{/if}
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/if}
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
<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' mod='blocklayered'}</span></button>
|
||||
<a class="btn btn-default" href="{$current_url}">
|
||||
<i class="process-icon-cancel "></i> <span>Cancel</span>
|
||||
</a>
|
||||
</div>
|
||||
{if $features|count > 0}
|
||||
{foreach $features as $feature}
|
||||
<li class="filter_list_item" draggable="true">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><input name="layered_selection_feat_{(int)$feature['id_feature']}" id="layered_selection_feat_{(int)$feature['id_feature']}" type="checkbox" /></td>
|
||||
<td class="filter-title">
|
||||
{if $feature['n'] > 1}{l s='Feature: %1$s (%2$d values)'|sprintf:$feature['name']:$feature['n'] mod='blockfacette'}{else}{l s='Feature: %1$s (%2$d value)'|sprintf:$feature['name']:$feature['n'] mod='blockfacette'}{/if}
|
||||
</td>
|
||||
<td>{l s='Filter result limit:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>{l s='Filter style:' mod='blocklayered'}</td>
|
||||
<td>
|
||||
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/if}
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<button class="btn btn-default pull-right" id="submit-filter" name="SubmitFilter" type="submit"><i class="process-icon-save"></i> <span>{l s='Save' mod='blocklayered'}</span></button>
|
||||
<a class="button" href="{$current_url}">
|
||||
<i class="process-icon-cancel "></i> <span>Cancel</span>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<script type="text/javascript">
|
||||
var translations = new Array();
|
||||
{if isset($filters)}var filters = '{$filters}';{/if}
|
||||
translations['no_selected_categories'] = '{l s='You must select at least a category'|addslashes mod='blocklayered'}';
|
||||
translations['no_selected_filters'] = '{l s='You must select at least a filter'|addslashes mod='blocklayered'}';
|
||||
translations['selected_filters'] = '{l s='Selected filters: %s'|addslashes mod='blocklayered'}';
|
||||
buildTreeView();
|
||||
</script>
|
||||
@@ -0,0 +1,373 @@
|
||||
{if isset($message)}{$message}{/if}
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='New filters template' mod='blocklayered'}</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}" />
|
||||
<input type="hidden" name="n_existing" id="n_existing" value="{$filters_templates|count}" />
|
||||
<div class="form-group">
|
||||
<label class="control-label col-lg-3">{l s='Template name:' mod='blocklayered'}</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' mod='blockfacette'}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="control-label col-lg-3">{l s='Categories used for this template:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
{$categories_tree}
|
||||
</div>
|
||||
</div>
|
||||
{if isset($asso_shops)}
|
||||
<div class="form-group">
|
||||
<label class="control-label col-lg-3">{l s='Choose shop association:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">{$asso_shops}</div>
|
||||
</div>
|
||||
{/if}
|
||||
<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' mod='blocclayered'}">{l s='Filters:' mod='blocklayered'}</span>
|
||||
</label>
|
||||
<div class="col-lg-9">
|
||||
<section class="filter_panel">
|
||||
<header>
|
||||
<span class="badge pull-right">{l s='Total filters: %s'|sprintf:$total_filters mod='blocklayered'}</span>
|
||||
</header>
|
||||
<section class="filter_list">
|
||||
<ul class="list-unstyled sortable">
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<h4>{l s='Sub-categories filter' mod='blockfacette'}</h4>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_subcategories_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_subcategories_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product stock filter' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_stock_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_stock_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product condition filter' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_condition_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_condition_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product manufacturer filter' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_manufacturer_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_manufacturer_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product weight filter (slider)' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_weight_slider_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_weight_slider_filter_type">
|
||||
<option value="0">{l s='Slider' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Inputs area' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='List of values' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<span class="module_name">{l s='Product price filter (slider)' mod='blockfacette'}</span>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_price_slider_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_price_slider_filter_type">
|
||||
<option value="0">{l s='Slider' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Inputs area' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='List of values' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{if $attribute_groups|count > 0}
|
||||
{foreach $attribute_groups as $attribute_group}
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<h4>
|
||||
{if $attribute_group['n'] > 1}
|
||||
{l s='Attribute group: %1$s (%2$d attributes)'|sprintf:$attribute_group['name']:$attribute_group['n'] mod='blockfacette'}
|
||||
{else}
|
||||
{l s='Attribute group: %1$s (%2$d attribute)'|sprintf:$attribute_group['name']:$attribute_group['n'] mod='blockfacette'}
|
||||
{/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' mod='blockfacette'}" />
|
||||
{/if}
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_ag_{(int)$attribute_group['id_attribute_group']}_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</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' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/if}
|
||||
|
||||
{if $features|count > 0}
|
||||
{foreach $features as $feature}
|
||||
<li class="filter_list_item" 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' mod='blockfacette'}</span>
|
||||
<span>{l s='No' mod='blockfacette'}</span>
|
||||
</span>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<h4>
|
||||
{if $feature['n'] > 1}{l s='Feature: %1$s (%2$d values)'|sprintf:$feature['name']:$feature['n'] mod='blockfacette'}{else}{l s='Feature: %1$s (%2$d value)'|sprintf:$feature['name']:$feature['n'] mod='blockfacette'}{/if}
|
||||
</h4>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter result limit:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_show_limit">
|
||||
<option value="0">{l s='No limit' mod='blockfacette'}</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="20">20</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 pull-right">
|
||||
<label class="control-label col-lg-6">{l s='Filter style:' mod='blocklayered'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="layered_selection_feat_{(int)$feature['id_feature']}_filter_type">
|
||||
<option value="0">{l s='Checkbox' mod='blockfacette'}</option>
|
||||
<option value="1">{l s='Radio button' mod='blockfacette'}</option>
|
||||
<option value="2">{l s='Drop-down list' mod='blockfacette'}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/if}
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
<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' mod='blocklayered'}</span></button>
|
||||
<a class="btn btn-default" href="{$current_url}">
|
||||
<i class="process-icon-cancel "></i> <span>Cancel</span>
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var translations = new Array();
|
||||
{if isset($filters)}var filters = '{$filters}';{/if}
|
||||
translations['no_selected_categories'] = '{l s='You must select at least a category'|addslashes mod='blocklayered'}';
|
||||
translations['no_selected_filters'] = '{l s='You must select at least a filter'|addslashes mod='blocklayered'}';
|
||||
</script>
|
||||
@@ -5,21 +5,20 @@
|
||||
<div id="ajax-message-ko" class="error ajax-message alert alert-danger" style="display: none">
|
||||
<span class="message"></span>
|
||||
</div>
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='Indexes and caches' mod='blocklayered'}</h3>
|
||||
<fieldset>
|
||||
<legend><img src="{$uri}/img/cogs.gif" alt="{l s='Indexes and caches' mod='blocklayered'}" /> {l s='Indexes and caches' mod='blocklayered'}</legend>
|
||||
<div id="indexing-warning" class="alert alert-warning" style="display: none">
|
||||
{l s='Indexing is in progress. Please do not leave this page' mod='blocklayered'}
|
||||
</div>
|
||||
<div class="row">
|
||||
<p>
|
||||
<a class="ajaxcall-recurcive btn btn-default" href="{$price_indexer_url}">{l s='Index all missing prices' mod='blocklayered'}</a>
|
||||
<a class="ajaxcall-recurcive btn btn-default" href="{$full_price_indexer_url}">{l s='Rebuild entire price index' mod='blocklayered'}</a>
|
||||
<a class="ajaxcall btn btn-default" id="attribute-indexer" rel="attribute" href="{$attribute_indexer_url}">{l s='Build attribute index' mod='blocklayered'}</a>
|
||||
<a class="ajaxcall btn btn-default" id="url-indexer" rel="price" href="{$url_indexer_url}">{l s='Build URL index' mod='blocklayered'}</a>
|
||||
</p>
|
||||
<a type="button" class="ajaxcall-recurcive button" href="{$price_indexer_url}">{l s='Index all missing prices' mod='blocklayered'}</a>
|
||||
<a type="button" class="ajaxcall-recurcive button" href="{$full_price_indexer_url}">{l s='Rebuild entire price index' mod='blocklayered'}</a>
|
||||
<a type="button" class="ajaxcall button" id="attribute-indexer" rel="attribute" href="{$attribute_indexer_url}">{l s='Build attribute index' mod='blocklayered'}</a>
|
||||
<a type="button" class="ajaxcall button" id="url-indexer" rel="price" href="{$url_indexer_url}">{l s='Build URL index' mod='blocklayered'}</a>
|
||||
</div>
|
||||
<div class="clearfix"> </div>
|
||||
<div class="row">
|
||||
<div class="alert alert-info">
|
||||
<div class="info">
|
||||
{l s='You can set a cron job that will rebuild price index using the following URL:' mod='blocklayered'}
|
||||
<br />
|
||||
<strong>{$price_indexer_url}</strong>
|
||||
@@ -36,21 +35,22 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="alert alert-info">{l s='A nightly rebuild is recommended.' mod='blocklayered'}</div>
|
||||
<div class="info">{l s='A nightly rebuild is recommended.' mod='blocklayered'}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='Filters templates' mod='blocklayered'}<span class="badge">{$filters_templates|count}</span></h3>
|
||||
</fieldset>
|
||||
<div class="clearfix"> </div>
|
||||
<fieldset>
|
||||
<legend><img src="{$uri}/img/cogs.gif" alt="{l s='Filters templates' mod='blocklayered'}" /> {l s='Filters templates (%d)'|sprintf:{$filters_templates|count} mod='blocklayered'}</legend>
|
||||
{if $filters_templates|count > 0}
|
||||
<div class="row">
|
||||
<table id="table-filter-templates" class="table">
|
||||
<table class="table table-filter-templates">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="fixed-width-xs center"><span class="title_box">{l s='ID' mod='blocklayered'}</span></th>
|
||||
<th class="center"><span class="title_box">{l s='ID' mod='blocklayered'}</span></th>
|
||||
<th><span class="title_box text-left">{l s='Name' mod='blocklayered'}</span></th>
|
||||
<th class="fixed-width-sm center"><span class="title_box">{l s='Categories' mod='blocklayered'}</span></th>
|
||||
<th class="fixed-width-lg"><span class="title_box">{l s='Created on' mod='blocklayered'}</span></th>
|
||||
<th class="fixed-width-sm"><span class="title_box text-right">{l s='Actions' mod='blocklayered'}</span></th>
|
||||
<th class="center"><span class="title_box">{l s='Categories' mod='blocklayered'}</span></th>
|
||||
<th><span class="title_box">{l s='Created on' mod='blocklayered'}</span></th>
|
||||
<th><span class="title_box text-right">{l s='Actions' mod='blocklayered'}</span></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -60,25 +60,10 @@
|
||||
<td class="text-left">{$template['name']}</td>
|
||||
<td class="center">{(int)$template['n_categories']}</td>
|
||||
<td>{Tools::displayDate($template['date_add'],null , true)}</td>
|
||||
<td>
|
||||
<div class="btn-group-action">
|
||||
<div class="btn-group pull-right">
|
||||
<a href="{$current_url}&edit_filters_template=1&id_layered_filter={(int)$template['id_layered_filter']}" class="btn btn-default">
|
||||
<i class="icon-pencil"></i> {l s='Edit' mod='blocklayered'}
|
||||
</a>
|
||||
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="{$current_url}&deleteFilterTemplate=1&id_layered_filter={(int)$template['id_layered_filter']}"
|
||||
onclick="return confirm('{l s='Do you really want to delete this filter template' mod='blocklayered'}');">
|
||||
<i class="icon-trash"></i> {l s='Delete' mod='blocklayered'}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<td class="text-right">
|
||||
<a href="{$current_url}&edit_filters_template=1&id_layered_filter={(int)$template['id_layered_filter']}" class="btn btn-default"><img src="{$uri}img/edit.gif" alt="{l s='Edit' mod='blocklayered'}" />{l s='Edit' mod='blocklayered'}</a>
|
||||
<a href="{$current_url}&deleteFilterTemplate=1&id_layered_filter={(int)$template['id_layered_filter']}"
|
||||
onclick="return confirm('{l s='Do you really want to delete this filter template' mod='blocklayered'}');"><img src="{$uri}img/cross.png" alt="{l s='Delete' mod='blocklayered'}" />{l s='Delete' mod='blocklayered'}</a>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
@@ -87,188 +72,156 @@
|
||||
<div class="clearfix"> </div>
|
||||
</div>
|
||||
{else}
|
||||
<div class="row alert alert-warning">{l s='No filter template found.' mod='blocklayered'}</div>
|
||||
<div class="info">{l s='No filter template found.' mod='blocklayered'}</div>
|
||||
{/if}
|
||||
<div class="row">
|
||||
<a class="btn btn-default" href="{$current_url}&add_new_filters_template=1"><i class="icon-plus"></i> {l s='Add new filters template' mod='blocklayered'}</a>
|
||||
<a href="{$current_url}&add_new_filters_template=1" class="button">{l s='Add new filters template' mod='blocklayered'}</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='Configuration' mod='blocklayered'}</h3>
|
||||
<form action="{$current_url}" method="post" class="form-horizontal">
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Hide filter values with no product is matching' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_hide_0_values" id="ps_layered_hide_0_values_on" value="1"{if $hide_values} checked="checked"{/if}>
|
||||
<label for="ps_layered_hide_0_values_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_hide_0_values" id="ps_layered_hide_0_values_off" value="0"{if !$hide_values} checked="checked"{/if}>
|
||||
<label for="ps_layered_hide_0_values_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Show the number of matching products' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Show products from subcategories' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Category filter depth (0 for no limits, 1 by default)' mod='blocklayered'}</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>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Use tax to filter price' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use condition filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_condition" id="ps_layered_filter_index_condition_on" value="1"{if $index_cdt} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_condition_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_condition" id="ps_layered_filter_index_condition_off" value="0"{if !$index_cdt} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_condition_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use availability filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_availability" id="ps_layered_filter_index_availability_on" value="1"{if $index_qty} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_availability_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_availability" id="ps_layered_filter_index_availability_off" value="0"{if !$index_qty} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_availability_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use manufacturer filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_manufacturer" id="ps_layered_filter_index_manufacturer_on" value="1"{if $index_mnf} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_manufacturer_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_manufacturer" id="ps_layered_filter_index_manufacturer_off" value="0"{if !$index_mnf} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_manufacturer_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use category filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_category" id="ps_layered_filter_index_category_on" value="1"{if $index_cat} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_category_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_category" id="ps_layered_filter_index_category_off" value="0"{if !$index_cat} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_category_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-9 col-lg-offset-3">
|
||||
<button type="submit" class="btn btn-default" name="submitLayeredSettings"><i class="icon-save"></i> {l s='Save configuration' mod='blocklayered'}</button>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="clearfix"> </div>
|
||||
<fieldset>
|
||||
<legend><img src="{$uri}/img/cogs.gif" alt="{l s='Configuration' mod='blocklayered'}" /> {l s='Configuration' mod='blocklayered'}</legend>
|
||||
<form action="{$current_url}" method="post">
|
||||
<table class="table-configurations">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Hide filter values with no product is matching' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<input type="radio" name="ps_layered_hide_0_values" id="ps_layered_hide_0_values_on" value="1"{if $hide_values} checked="checked"{/if}>
|
||||
<label for="ps_layered_hide_0_values_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_hide_0_values" id="ps_layered_hide_0_values_off" value="0"{if !$hide_values} checked="checked"{/if}>
|
||||
<label for="ps_layered_hide_0_values_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Show the number of matching products' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Show products from subcategories' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Category filter depth (0 for no limits, 1 by default)' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="ps_layered_filter_category_depth" value="{if $category_depth !== false}{$category_depth}{else}1{/if}" class="fixed-width-sm" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Use tax to filter price' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Allow indexing robots (google, yahoo, bing, ...) to use condition filter' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<input type="radio" name="ps_layered_filter_index_condition" id="ps_layered_filter_index_condition_on" value="1"{if $index_cdt} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_condition_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_condition" id="ps_layered_filter_index_condition_off" value="0"{if !$index_cdt} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_condition_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Allow indexing robots (google, yahoo, bing, ...) to use availability filter' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<input type="radio" name="ps_layered_filter_index_availability" id="ps_layered_filter_index_availability_on" value="1"{if $index_qty} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_availability_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_availability" id="ps_layered_filter_index_availability_off" value="0"{if !$index_qty} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_availability_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Allow indexing robots (google, yahoo, bing, ...) to use manufacturer filter' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<input type="radio" name="ps_layered_filter_index_manufacturer" id="ps_layered_filter_index_manufacturer_on" value="1"{if $index_mnf} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_manufacturer_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_manufacturer" id="ps_layered_filter_index_manufacturer_off" value="0"{if !$index_mnf} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_manufacturer_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">
|
||||
{l s='Allow indexing robots (google, yahoo, bing, ...) to use category filter' mod='blocklayered'}
|
||||
</td>
|
||||
<td>
|
||||
<input type="radio" name="ps_layered_filter_index_category" id="ps_layered_filter_index_category_on" value="1"{if $index_cat} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_category_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_category" id="ps_layered_filter_index_category_off" value="0"{if !$index_cat} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_category_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<button type="submit" class="btn btn-default" name="submitLayeredSettings"><i class="icon-save"></i> {l s='Save configuration' mod='blocklayered'}</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<script type="text/javascript">
|
||||
{if isset($PS_LAYERED_INDEXED)}var PS_LAYERED_INDEXED = {$PS_LAYERED_INDEXED};{/if}
|
||||
|
||||
@@ -0,0 +1,291 @@
|
||||
{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>
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='Indexes and caches' mod='blocklayered'}</h3>
|
||||
<div id="indexing-warning" class="alert alert-warning" style="display: none">
|
||||
{l s='Indexing is in progress. Please do not leave this page' mod='blocklayered'}
|
||||
</div>
|
||||
<div class="row">
|
||||
<p>
|
||||
<a class="ajaxcall-recurcive btn btn-default" href="{$price_indexer_url}">{l s='Index all missing prices' mod='blocklayered'}</a>
|
||||
<a class="ajaxcall-recurcive btn btn-default" href="{$full_price_indexer_url}">{l s='Rebuild entire price index' mod='blocklayered'}</a>
|
||||
<a class="ajaxcall btn btn-default" id="attribute-indexer" rel="attribute" href="{$attribute_indexer_url}">{l s='Build attribute index' mod='blocklayered'}</a>
|
||||
<a class="ajaxcall btn btn-default" id="url-indexer" rel="price" href="{$url_indexer_url}">{l s='Build URL index' mod='blocklayered'}</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="alert alert-info">
|
||||
{l s='You can set a cron job that will rebuild price index using the following URL:' mod='blocklayered'}
|
||||
<br />
|
||||
<strong>{$price_indexer_url}</strong>
|
||||
<br/>
|
||||
<br />
|
||||
{l s='You can set a cron job that will rebuild attribute index using the following URL:' mod='blocklayered'}
|
||||
<br />
|
||||
<strong>{$attribute_indexer_url}</strong>
|
||||
<br/>
|
||||
<br />
|
||||
{l s='You can set a cron job that will rebuild URL index using the following URL:' mod='blocklayered'}
|
||||
<br />
|
||||
<strong>{$url_indexer_url}</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="alert alert-info">{l s='A nightly rebuild is recommended.' mod='blocklayered'}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='Filters templates' mod='blocklayered'}<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' mod='blocklayered'}</span></th>
|
||||
<th><span class="title_box text-left">{l s='Name' mod='blocklayered'}</span></th>
|
||||
<th class="fixed-width-sm center"><span class="title_box">{l s='Categories' mod='blocklayered'}</span></th>
|
||||
<th class="fixed-width-lg"><span class="title_box">{l s='Created on' mod='blocklayered'}</span></th>
|
||||
<th class="fixed-width-sm"><span class="title_box text-right">{l s='Actions' mod='blocklayered'}</span></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $filters_templates as $template}
|
||||
<tr>
|
||||
<td class="center">{(int)$template['id_layered_filter']}</td>
|
||||
<td class="text-left">{$template['name']}</td>
|
||||
<td class="center">{(int)$template['n_categories']}</td>
|
||||
<td>{Tools::displayDate($template['date_add'],null , true)}</td>
|
||||
<td>
|
||||
<div class="btn-group-action">
|
||||
<div class="btn-group pull-right">
|
||||
<a href="{$current_url}&edit_filters_template=1&id_layered_filter={(int)$template['id_layered_filter']}" class="btn btn-default">
|
||||
<i class="icon-pencil"></i> {l s='Edit' mod='blocklayered'}
|
||||
</a>
|
||||
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="{$current_url}&deleteFilterTemplate=1&id_layered_filter={(int)$template['id_layered_filter']}"
|
||||
onclick="return confirm('{l s='Do you really want to delete this filter template' mod='blocklayered'}');">
|
||||
<i class="icon-trash"></i> {l s='Delete' mod='blocklayered'}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="clearfix"> </div>
|
||||
</div>
|
||||
{else}
|
||||
<div class="row alert alert-warning">{l s='No filter template found.' mod='blocklayered'}</div>
|
||||
{/if}
|
||||
<div class="row">
|
||||
<a class="btn btn-default" href="{$current_url}&add_new_filters_template=1"><i class="icon-plus"></i> {l s='Add new filters template' mod='blocklayered'}</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel">
|
||||
<h3><i class="icon-cogs"></i> {l s='Configuration' mod='blocklayered'}</h3>
|
||||
<form action="{$current_url}" method="post" class="form-horizontal">
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Hide filter values with no product is matching' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_hide_0_values" id="ps_layered_hide_0_values_on" value="1"{if $hide_values} checked="checked"{/if}>
|
||||
<label for="ps_layered_hide_0_values_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_hide_0_values" id="ps_layered_hide_0_values_off" value="0"{if !$hide_values} checked="checked"{/if}>
|
||||
<label for="ps_layered_hide_0_values_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Show the number of matching products' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Show products from subcategories' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Category filter depth (0 for no limits, 1 by default)' mod='blocklayered'}</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>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Use tax to filter price' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<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="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</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="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use condition filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_condition" id="ps_layered_filter_index_condition_on" value="1"{if $index_cdt} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_condition_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_condition" id="ps_layered_filter_index_condition_off" value="0"{if !$index_cdt} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_condition_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use availability filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_availability" id="ps_layered_filter_index_availability_on" value="1"{if $index_qty} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_availability_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_availability" id="ps_layered_filter_index_availability_off" value="0"{if !$index_qty} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_availability_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use manufacturer filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_manufacturer" id="ps_layered_filter_index_manufacturer_on" value="1"{if $index_mnf} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_manufacturer_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_manufacturer" id="ps_layered_filter_index_manufacturer_off" value="0"{if !$index_mnf} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_manufacturer_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-3 control-label">{l s='Allow indexing robots (google, yahoo, bing, ...) to use category filter' mod='blocklayered'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="row">
|
||||
<div class="input-group col-lg-2">
|
||||
<span class="switch prestashop-switch">
|
||||
<input type="radio" name="ps_layered_filter_index_category" id="ps_layered_filter_index_category_on" value="1"{if $index_cat} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_category_on" class="radioCheck">
|
||||
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blocklayered'}
|
||||
</label>
|
||||
<input type="radio" name="ps_layered_filter_index_category" id="ps_layered_filter_index_category_off" value="0"{if !$index_cat} checked="checked"{/if}>
|
||||
<label for="ps_layered_filter_index_category_off" class="radioCheck">
|
||||
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blocklayered'}
|
||||
</label>
|
||||
<a class="slide-button btn btn-default"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-9 col-lg-offset-3">
|
||||
<button type="submit" class="btn btn-default" name="submitLayeredSettings"><i class="icon-save"></i> {l s='Save configuration' mod='blocklayered'}</button>
|
||||
</div>
|
||||
</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 Array();
|
||||
|
||||
translations['in_progress'] = '{l s='(in progress)'|addslashes mod='blocklayered'}';
|
||||
translations['url_indexation_finished'] = '{l s='URL indexation finished'|addslashes mod='blocklayered'}';
|
||||
translations['attribute_indexation_finished'] = '{l s='Attribute indexation finished'|addslashes mod='blocklayered'}';
|
||||
translations['url_indexation_failed'] = '{l s='URL indexation failed'|addslashes mod='blocklayered'}';
|
||||
translations['attribute_indexation_failed'] = '{l s='Attribute indexation failed'|addslashes mod='blocklayered'}';
|
||||
translations['price_indexation_finished'] = '{l s='Price indexation finished'|addslashes mod='blocklayered'}';
|
||||
translations['price_indexation_failed'] = '{l s='Price indexation failed'|addslashes mod='blocklayered'}';
|
||||
translations['price_indexation_in_progress'] = '{l s='(in progress, %s products price to index)'|addslashes mod='blocklayered'}';
|
||||
translations['loading'] = '{l s='Loading...'|addslashes mod='blocklayered'}';
|
||||
translations['delete_all_filters_templates'] = '{l s='You selected -All categories-, all existing filter templates will be deleted, OK?'|addslashes mod='blocklayered'}';
|
||||
translations['no_selected_categories'] = '{l s='You must select at least a category'|addslashes mod='blocklayered'}';
|
||||
</script>
|
||||
Reference in New Issue
Block a user