Блок Многоуровневой Навигации, Фильтр по цене

Автор energysx, 12 мая 2016, 15:50:37

« назад - далее »

energysx

Здравствуйте уважаемые,

включил модуль Блок Многоуровневой Навигации, для фильтра цены выбрал ползунок(slider). Цена и валюта пишутся слитно, например "150USD", хочу чтоб писалось раздельно "150 USD". Подскажите пожалуйста, откуда можно это исправить. Благодарю за внимание.

Adik

Поменять можно в файле /modules/blocklayered/blocklayered.js в функции blocklayeredFormatCurrency.

energysx

Цитата: Adik от 12 мая 2016, 16:40:24
Поменять можно в файле /modules/blocklayered/blocklayered.js в функции blocklayeredFormatCurrency.

Спсибо за ответ Adik. Я сделал изменения в этом файле, в этой функции, но ничто не изменилось. Затем я удалил целиком эту функцию чтоб проверить, опять ничего не изменилось. Затем я удалил сам файл, опять ничего не изменилось, всё работает по прежнему. Может быть дело в Кэшэ? Все настройки кэша я отключил, но опять тоже самое.

Adik

У вас наверное этот файл в папке темы находиться
/themes/ваша тема/js/modules/blocklayered/blocklayered.js

energysx

#4
Цитата: Adik от 13 мая 2016, 09:00:40
У вас наверное этот файл в папке темы находиться
/themes/ваша тема/js/modules/blocklayered/blocklayered.js

Adik, я открыл этот файл /themes/ваша тема/js/modules/blocklayered/blocklayered.js, какжется то что мне нужно находится в функции initSliders() . Я в коде js разбираюсь не очень, попробовал добавить пробел между slider['format'] и slider['unit'], но в результате слайдер просто исчезает. Подскажите пожалуйста что надо изменить в этом коде?

function initSliders()
{
$(sliderList).each(function(i, slider){
$('#layered_'+slider['type']+'_slider').slider(slider['data']);

var from = '';
var to = '';
switch (slider['format'])
{
case 1:
case 2:
case 3:
case 4:
from = formatCurrency($('#layered_'+slider['type']+'_slider').slider('values', 0), slider['format'], slider['unit']);
to = formatCurrency($('#layered_'+slider['type']+'_slider').slider('values', 1), slider['format'], slider['unit']);
break;
case 5:
from =  $('#layered_'+slider['type']+'_slider').slider('values', 0)+slider['unit']
to = $('#layered_'+slider['type']+'_slider').slider('values', 1)+slider['unit'];
break;
}
$('#layered_'+slider['type']+'_range').html(from+' - '+to);
});
}

Adik

Нужно найти где в вашей теме объявление функции formatCurrency. Эта функция возвращает значение цены и валюты, в ней и нужно добавить пробел.
У меня это файл tools.js
blank = '';
...
return (FormatNumber(price, priceDisplayPrecision, ',', '.') + blank + currencySign);

Изменить нужно
blank = ' ';

Виталий

Цитата: energysx от 13 мая 2016, 11:42:08
Adik, я открыл этот файл /themes/ваша тема/js/modules/blocklayered/blocklayered.js, какжется то что мне нужно находится в функции initSliders()
Если у вас есть такой файл и в нем нет определения функции formatCurrency, то вам нужно изменить в файле /js/tools.js код
function formatCurrency(price, currencyFormat, currencySign, currencyBlank)
{
// if you modified this function, don't forget to modify the PHP function displayPrice (in the Tools.php class)
var blank = ' '; /* вот тут добавьте пробел */
Cоздание интернет сайтов Webstudio UwK

energysx

#7
Цитата: Виталий от 13 мая 2016, 12:09:50
Цитата: energysx от 13 мая 2016, 11:42:08
Adik, я открыл этот файл /themes/ваша тема/js/modules/blocklayered/blocklayered.js, какжется то что мне нужно находится в функции initSliders()
Если у вас есть такой файл и в нем нет определения функции formatCurrency, то вам нужно изменить в файле /js/tools.js код
function formatCurrency(price, currencyFormat, currencySign, currencyBlank)
{
// if you modified this function, don't forget to modify the PHP function displayPrice (in the Tools.php class)
var blank = ' '; /* вот тут добавьте пробел */


Adik, Виталий, сделал по вашей инструкции, заработало. Благодарю за помощь!