VirtueMart: хак для разделения тысяч


Недавно при работе над проектом создания интернет-магазина на VirtueMart передо мной встали такие задачи:


1. Между символами валюты и ценой поставить пробел.





2. Между тысячами и сотнями поставить неразрывный пробел, чтобы (при уменьшении ценового блока) цифры суммы были нераздельны.



Решения:
1. Первая задача решается просто, заходим: Компоненты - VirtueMart - Store - Edit Store - Currency Display Style - Positive format и выбираем "Symb 00", дабы символы валюты были отделены от цены пробелом.

2. Вторая задача оказалась сложнее. Несмотря на то, что на этой же странице настроек есть пункт Thousands separator, указанный в нем пробел все равно разрывал цену товара на две строки.

Это можно исправить, немного подправив код в файле: /administrator/components
/com_virtuemart/classes/currency/class_currency_display. php
- так чтобы поставить между тысячами и сотнями неразрывный пробел (non-breaking space).

Итак, в этом файле находим строки:

// Else a simple substitution is enough
$res=number_format($nb,$decimals,$this->decimal,$this-
>thousands);
$res=str_replace(',',' ',$res);
}
}
return($res);
}
 
В этом блоке return($res); меняем на return(str_replace(" ", "тут сивол nbsp блогспот его фильрует", $res));

В итоге, при уменьшении ширины ценового блока (например в модуле) символы валюты будут на одной строке, а цена полностью на второй.

5 коммент.:

Анонимный комментирует...

Только с таким хаком перестает работать плагин для динамического изменения цены, при выборе количества и доп. свойств...

Sagio комментирует...

Спасибо за комментарий. Я не проверяла, но Вы уверены, что именно из-за этого не работает плагин?

Анонимный комментирует...

Да, уверен - меняю назад на return($res); и всё работает нормально.

Sagio комментирует...

Странно, ведь тут только один символ подвергается изменению. Но спасибо, что нашли условия, при которых могут выявиться недостатки такого хака.

Если найдете решение и захотите поделиться, напишите, пожалуйста. Все вам будут благодарны.

Анонимный комментирует...

Предоставляю услуги взлома любого почтового ящика.
ВЗЛАМЫВАЮ БЕЗ ПРЕДОПЛАТЫ !!!

Взлом стоит 1000 рублей.
Взломаю любой почтовый ящик в течении 1-6 часов.
Пароль остаётся прежним.Жертва о взломе не узнаёт и не догадывается.
РАБОТАЮ БЕЗ АВАНСА.Отправляете деньги после проделанной работы.
После взлома предоставляю доказательство.
После того как вы убеждаетесь что пароль у меня Вы оплачиваете услугу и получаете пароль.
Оплата происходит через обычный ближайший терминал оплаты.

Мои контакты вы можете посмотреть на этом сайте:
mailsopen.ru

Технологии Blogger.

Followers

Kоличество просмотров