// Blocklayered starting code refacto

This commit is contained in:
Jerome Nadaud
2013-12-06 18:12:04 +01:00
parent a569ab7e33
commit c5ff838fca
20 changed files with 2370 additions and 2002 deletions
@@ -1,53 +0,0 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registred Trademark & Property of PrestaShop SA
*/
/* Getting cookie or logout */
include(dirname(__FILE__).'/../../config/config.inc.php');
require_once(dirname(__FILE__).'/../../init.php');
if (substr(Tools::encrypt('blocklayered/index'),0,10) != Tools::getValue('layered_token') || !Module::isInstalled('blocklayered'))
die('Bad token');
if (Tools::getValue('admin_dir', false))
{
define('_PS_ADMIN_DIR_', base64_decode(Tools::getValue('admin_dir')));
define('_PS_BO_ALL_THEMES_DIR_', _PS_ADMIN_DIR_.'/themes/');
}
include(dirname(__FILE__).'/blocklayered.php');
$category_box = Tools::getValue('categoryBox');
/* Clean categoryBox before use */
if (is_array($category_box))
foreach ($category_box AS &$value)
$value = (int)$value;
$blockLayered = new BlockLayered();
echo $blockLayered->ajaxCallBackOffice($category_box, Tools::getValue('id_layered_filter'));
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,25 @@
.bootstrap .filter_list .filter_list_item {
display: table;
width: 100%;
padding: 5px 0;
margin-bottom: 4px;
background-color: white;
-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0 0 3px, rgba(0, 0, 0, 0.1) 0 -2px 0 inset;
box-shadow: rgba(0, 0, 0, 0.3) 0 0 3px, rgba(0, 0, 0, 0.1) 0 -2px 0 inset;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
-ms-border-radius: 3px;
-o-border-radius: 3px;
border-radius: 3px;
}
.bootstrap .filter_panel {
min-height: 20px;
padding: 7px 7px 0px 7px;
margin-bottom: 20px;
background-color: #ebebeb;
border: 1px solid #d9d9d9;
border-radius: 3px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
@@ -0,0 +1,219 @@
function checkForm()
{
var is_category_selected = false;
var is_filter_selected = false;
$('#categories-treeview input[type=checkbox]').each(
function()
{
if ($(this).prop('checked'))
{
is_category_selected = true;
return false;
}
}
);
$('.filter_list_item input[type=checkbox]').each(
function()
{
if ($(this).prop('checked'))
{
is_filter_selected = true;
return false;
}
}
);
if (!is_category_selected)
{
alert(translations['no_selected_categories']);
$('#categories-treeview input[type=checkbox]').first().focus();
return false;
}
if (!is_filter_selected)
{
alert(translations['no_selected_filters']);
$('#filter_list_item input[type=checkbox]').first().focus();
return false;
}
return true;
}
$(document).ready(
function()
{
$('.ajaxcall').click(
function()
{
if (this.legend == undefined)
this.legend = $(this).html();
if (this.running == undefined)
this.running = false;
if (this.running == true)
return false;
$('.ajax-message').hide();
this.running = true;
if (typeof(this.restartAllowed) == 'undefined' || this.restartAllowed)
{
$(this).html(this.legend+translations['in_progress']);
$('#indexing-warning').show();
}
this.restartAllowed = false;
var type = $(this).attr('rel');
$.ajax(
{
url: this.href+'&ajax=1',
context: this,
dataType: 'json',
cache: 'false',
success: function(res)
{
this.running = false;
this.restartAllowed = true;
$('#indexing-warning').hide();
$(this).html(this.legend);
if (type == 'price')
$('#ajax-message-ok span').html(translations['url_indexation_finished']);
else
$('#ajax-message-ok span').html(translations['attribute_indexation_finished']);
$('#ajax-message-ok').show();
return;
},
error: function(res)
{
this.restartAllowed = true;
$('#indexing-warning').hide();
if (type == 'price')
$('#ajax-message-ko span').html(translations['url_indexation_failed']);
else
$('#ajax-message-ko span').html(translations['attribute_indexation_failed']);
$('#ajax-message-ko').show();
$(this).html(this.legend);
this.running = false;
}
}
);
return false;
});
$('.ajaxcall-recurcive').each(
function(it, elm)
{
$(elm).click(
function()
{
if (this.cursor == undefined)
this.cursor = 0;
if (this.legend == undefined)
this.legend = $(this).html();
if (this.running == undefined)
this.running = false;
if (this.running == true)
return false;
$('.ajax-message').hide();
this.running = true;
if (typeof(this.restartAllowed) == 'undefined' || this.restartAllowed)
{
$(this).html(this.legend+translations['in_progress']);
$('#indexing-warning').show();
}
this.restartAllowed = false;
$.ajax(
{
url: this.href+'&ajax=1&cursor='+this.cursor,
context: this,
dataType: 'json',
cache: 'false',
success: function(res)
{
this.running = false;
if (res.result)
{
this.cursor = 0;
$('#indexing-warning').hide();
$(this).html(this.legend);
$('#ajax-message-ok span').html(translations['price_indexation_finished']);
$('#ajax-message-ok').show();
return;
}
this.cursor = parseInt(res.cursor);
$(this).html(this.legend+translations['price_indexation_in_progress'].replace('%s', res.count));
$(this).click();
},
error: function(res)
{
this.restartAllowed = true;
$('#indexing-warning').hide();
$('#ajax-message-ko span').html(translations['price_indexation_failed']);
$('#ajax-message-ko').show();
$(this).html(this.legend);
this.cursor = 0;
this.running = false;
}
});
return false;
}
);
}
);
if (typeof PS_LAYERED_INDEXED !== 'undefined' && PS_LAYERED_INDEXED)
{
$('#url-indexe').click();
$('#full-index').click();
}
$('.sortable').sortable(
{
forcePlaceholderSize: true
});
$('.filter_list_item input[type=checkbox]').click(
function()
{
var current_selected_filters_count = parseInt($('#selected_filters').html());
if ($(this).prop('checked'))
$('#selected_filters').html(current_selected_filters_count+1);
else
$('#selected_filters').html(current_selected_filters_count-1);
}
);
if (typeof filters !== 'undefined')
{
filters = JSON.parse(filters);
for (filter in filters)
{
$('#'+filter).attr("checked","checked");
$('#selected_filters').html(parseInt($('#selected_filters').html())+1);
$('select[name="'+filter+'_filter_type"]').val(filters[filter].filter_type);
$('select[name="'+filter+'_filter_show_limit"]').val(filters[filter].filter_show_limit);
}
}
}
);
+35
View File
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../");
exit;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 280 B

After

Width:  |  Height:  |  Size: 1.0 KiB

+35
View File
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../");
exit;
@@ -1,21 +0,0 @@
#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 { font-size: 11px; padding: 8px 9px 7px 20px; height: 38px; 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: 120px; position: absolute; right: 130px; top: 5px;}
.filter_show_limit { position: absolute; width: 120px; right: 5px; top: 5px; }
#layered-step-3 .alert { width: auto; }
#fancybox-content {
height: 400px !important;
overflow: auto !important;
}
+35
View File
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../");
exit;
@@ -0,0 +1,373 @@
{$message}
<div class="panel" id="new-filters-template">
<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>
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../../../");
exit;
@@ -0,0 +1,291 @@
{$message}
<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 id="table-filter-templates" 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>&nbsp;
</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">&nbsp;</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>
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../../../");
exit;
@@ -0,0 +1,82 @@
{*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registred Trademark & Property of PrestaShop SA
*}
<div class="form-group">
<label class="control-label col-lg-3">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="'.$this->l('Invalid characters:').' <>;=#{}_">{l s='URL:' mod='blockfacette'}</span>
</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific URL format in block layered generation' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">{l s='Meta title:' mod='blockfacette'}</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">';
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific format for meta title' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
@@ -0,0 +1,105 @@
{*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registred Trademark & Property of PrestaShop SA
*}
<div class="form-group">
<label class="control-label col-lg-3">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="'.$this->l('Invalid characters:').' <>;=#{}_">{l s='URL:' mod='blockfacette'}</span>
</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific URL format in block layered generation' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">{l s='Meta title:' mod='blockfacette'}</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">';
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific format for meta title' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3" for="">{l s='Indexable:' mod='blockfacette'}</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="layered_indexable" id="indexable_on" value="1"{if $is_indexable} checked="checked"{/if}>
<label for="indexable_on" class="radioCheck">
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blockfacette'}
</label>
<input type="radio" name="layered_indexable" id="indexable_off" value="0"{if !$is_indexable} checked="checked"{/if}>
<label for="indexable_off" class="radioCheck">
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blockfacette'}
</label>
<a class="slide-button btn btn-default"></a>
</span>
</div>
</div>
</div>
<div class="col-lg-9 col-lg-push-3">
<p class="help-block">{l s='Use this attribute in URL generated by the layered navigation module' mod='blockfacette'}</p>
</div>
</div>
@@ -0,0 +1,105 @@
{*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registred Trademark & Property of PrestaShop SA
*}
<div class="form-group">
<label class="control-label col-lg-3">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="'.$this->l('Invalid characters:').' <>;=#{}_">{l s='URL:' mod='blockfacette'}</span>
</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific URL format in block layered generation' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">{l s='Meta title:' mod='blockfacette'}</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">';
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific format for meta title' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3" for="">{l s='Indexable:' mod='blockfacette'}</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="layered_indexable" id="indexable_on" value="1"{if $is_indexable} checked="checked"{/if}>
<label for="indexable_on">
<i class="icon-check-sign color_success"></i> {l s='Yes' mod='blockfacette'}
</label>
<input type="radio" name="layered_indexable" id="indexable_off" value="0"{if !$is_indexable} checked="checked"{/if}>
<label for="indexable_off">
<i class="icon-ban-circle color_danger"></i> {l s='No' mod='blockfacette'}
</label>
<a class="slide-button btn btn-default"></a>
</span>
</div>
</div>
</div>
<div class="col-lg-9 col-lg-push-3">
<p class="help-block">{l s='Use this attribute in URL generated by the layered navigation module' mod='blockfacette'}</p>
</div>
</div>
@@ -0,0 +1,82 @@
{*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registred Trademark & Property of PrestaShop SA
*}
<div class="form-group">
<label class="control-label col-lg-3">
<span class="label-tooltip" data-toggle="tooltip" data-html="true" title="" data-original-title="'.$this->l('Invalid characters:').' <>;=#{}_">{l s='URL:' mod='blockfacette'}</span>
</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="64" name="url_name_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['url_name'])}{$values[$language['id_lang']]['url_name']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific URL format in block layered generation' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">{l s='Meta title:' mod='blockfacette'}</label>
<div class="col-lg-9">
<div class="row">
{foreach $languages as $language}
<div class="translatable-field lang-{$language['id_lang']}" style="display: {if $language['id_lang'] == $default_form_language}block{else}none{/if};">
<div class="col-lg-9">
<input type="text" size="70" name="meta_title_{$language['id_lang']}" value="{if isset($values[$language['id_lang']]) && isset($values[$language['id_lang']]['meta_title'])}{$values[$language['id_lang']]['meta_title']|escape:'htmlall':'UTF-8'}{/if}" />
</div>
<div class="col-lg-2">
<button type="button" class="btn btn-default dropdown-toggle" tabindex="-1" data-toggle="dropdown">
{$language['iso_code']}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">';
{foreach $languages as $language}
<li><a href="javascript:hideOtherLanguage({$language['id_lang']});" tabindex="-1">{$language['name']}</a></li>
{/foreach}
</ul>
</div>
</div>
{/foreach}
<div class="col-lg-9">
<p class="help-block">{l s='Specific format for meta title' mod='blockfacette'}</p>
</div>
</div>
</div>
</div>
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../../../");
exit;
@@ -0,0 +1,35 @@
<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../../../");
exit;