PriceInfo
Расширение priceInfo for Virtuemart является вариантом реализации мультивалютности в Virtuemart. Расширение выводит не только цену в основной валюте, но и его цены в остальных настроенных валютах.
Предполагается, что все цены интернет магазина вводятся в админ. панели долларах США, а выводится на фронт-энде сайта как долларовая, так и гривневая и рублевая цена, а также цена в евро. Курс валют устанавливается в админ панели сайта и храниться в базе данных.
Расширение внедрено и успешно работает на 47 сайтах (по состоянию на 8.01.2011), расширение в работе можно посмотреть на сайтах starsokol.com.ua и avatara.kiev.ua.
Включение или отключение вывода цен в той или иной валюте, а также переносы строк, цвет и начертание альтернативной цены выполняется путем редактирования простого HTML шаблона.
Дополнительные цены позиционируются как информационные и фигурируют на фронт-энде сайта при заказе товара, а также в письме-уведомлении о размещении заказа.
28 января 2010 года была выпущена новая версия расширения — 1.2 — в которой была улучшена функциональность шаблона цен, добавлена поддержка дочерних товаров и внесены некоторые функциональные улучшения.
Галерея внедрения расширений:
| starsokol.com.ua: | |||
| avatara.kiev.ua | |||
| alonda.vseries.ru | |||
| climatteh.77.dp.ua, it-digit.ru | |||
| shop.varich.com | |||

Авторизация













Долго мучился с отображением нескольких валют в virtuemart. Наконец поставил расширение priceInfo и оно решило эту проблему. Супер.
P.S. Установилось без проблем да и в настройках все понятно.
В общем огромное спасибо автору!
[Ответить]
Здравствуйте.
Я через форму «Задать вопрос» отправлял сообщение. Не получил ответа.
Будет ли работать расширение priceInfo в связке Joomla 1.5.15 и VirtueMart 1.1.4?
И как можно с Вами связаться, кроме формы обратной связи, для того, чтобы обсудить возможное сотрудничество?
Спасибо.
[Ответить]
Здравствуйте.
К сожалению Вашего вопроса не получал, обязательно разберемся в чем проблема.
Расширение уже протестировано под 1.1.4, работает полностью корректно.
Для связи можно использовать адрес alex_krylov [@] inbox.ru или ICQ 286658375
[Ответить]
Спасибо за ответ и за координаты.
[Ответить]
Здравствуйте.
Сегодня купил расширение, сделал все по инструкции, файлы залил, скрипт выполнил, вернулся ответ об успешной установке, но ни в админке ничего не появилось, ни в базе данных не появилась таблица, указанная в скрипте. Также, судя по всему, в таблицу jos_components также не было ничего добавлено.
Подскажите, пожалуйста, в чем может быть проблема?
Спасибо.
[Ответить]
Сейчас выполнил «вручную» запрос, который в скрипте, через phpMyAdmin, появилось и меню в админке, и курс можно устанавливать, только с кодировкой что-то не то сначала было. Пересохранил kdtcurr.php в кодировке UTF-8 без BOM, все встало на свои места.
Теперь вопрос: какой шаблон необходимо править, чтобы появились несколько валют?
[Ответить]
здравствуйте.
Перепроверим инсталлятор. Несколько валют появляется при перезаписи файлов в папке components/com_virtuemart/themes.
По умолчанию активированы все четыре валюты (рубль, гривна, евро, доллар) при основной валюте цен — доллар. Шаблон отображения цен лежит в файле components/com_virtuemart/themes/default/templates/common/altcur_template.php
Необходимо также учитывать, что расширение патчит файлы в папке components/com_virtuemart/themes/default/ — основной дефолтной темы виртумарта. Если используется другая тема — необходимо перезаписать файлы и в ней.
[Ответить]
Здравствуйте.
Проблема была действительно в том, что я использую не дефолтную тему. Перезаписал файлы в своей теме, валюты появились. Спасибо за ответ.
Только Вы пишете, что по умолчанию активированы все ЧЕТЫРЕ валюты, но в инсталляторе их прописано только 3 — евро, доллар и рубль. Они же только и светятся в таблице jos_currencies. Гривны не было, но на сайте цена отображается и в долларах, и в гривне. В гривне отображается весьма корректно по установленному в админке курсу. Откуда берется гривна?
Извините за дотошность, просто хочу разобраться, чтоб не вылезли проблемы в дальнейшем.
И вопрос — как добавить дополнительную валюту? Достаточно внести ее в jos_currencies и внести изменения в kdt_inothercurrencies.php или необходимо предпринять еще какие-либо действия.
Спасибо.
[Ответить]
а я не зря давал ссылку на шаблон вывода цен:
components/com_virtuemart/themes/default/templates/common/altcur_template.php
В стартовой поставке там указаны 2 цены: долларовая и гривневая. Указаны они просто метками, которые при выводе заменяются ценами.
Доступный перечень меток
- {UAH_PRICE} — гривневая цена
- {USD_PRICE} — долларовая цена
- {EUR_PRICE} — цена в евро
- {RUB_PRICE} — цена в рублях
- {ORIG_PRICE} — исходная цена
Соответственно, если вы вставите метки в шаблон цены, расширение будет автоматически выводить цены в нужной валюте. Там же вы можете установить и оформление для цен.
А вот добавление пользователем валют самостоятельно пока расширением не поддерживается. Тут без нашего вмешательства не обойтись.
[Ответить]
Большое спасибо за ответы!
Рекомендую всем этот модуль!
[Ответить]
Добрый день!
Купил, скачал, сделал все по инструкции — ничего (только пропали цены в столбце цена), в sql ничего судя по всему не добавилось при попытке вручную добавить вылазит
Error
SQL query:
$queries = «INSERT INTO `jos_components` (`name`, `link`, `menuid`, `parent`, `admin_menu_link`, `admin_menu_alt`, `option`, `ordering`, `admin_menu_img`, `iscore`, `params`, `enabled`) VALUES (‘Установка курсов валют’, ‘option=com_kdtcurr’, 0, 0, ‘option=com_kdtcurr’, ‘Установка курсов валют’, ‘com_kdtcurr’, 0, ‘js/ThemeOffice/component.png’, 0, », 1);
CREATE TABLE IF NOT EXISTS `jos_currencies` (
`jc_id` int(11) NOT NULL auto_increment,
`jc_code` varchar(50) NOT NULL,
`jc_rate` float NOT NULL,
PRIMARY KEY (`jc_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `jos_currencies` (`jc_id`, `jc_code`, `jc_rate`) VALUES
(1, ‘USD’, 8.18),
(2, ‘EUR’, 12.05),
(3, ‘RUB’, 0.0347); «;
MySQL said:
#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘$queries = «INSERT INTO `jos_components` (`name`, `link`, `menuid`, `parent`, `a’ at line 1
хостер :
MySQL
Server: Localhost via UNIX socket
Server version: 5.0.51a-24+lenny2
Protocol version: 10
User: medok@localhost
MySQL charset: UTF-8 Unicode (utf8)
Web server
Apache/2.2.9 (Debian) mod_fastcgi/2.4.6
MySQL client version: 5.0.51a
PHP extension: mysql
phpMyAdmin
Version information: 3.2.1
Documentation
Wiki
Official Homepage
[ChangeLog] [Subversion] [Lists]
как с этим бороться ?
[Ответить]
Проблема решена всавлял sql не так (, это прошло:
INSERT INTO `jos_components` (`name`, `link`, `menuid`, `parent`, `admin_menu_link`, `admin_menu_alt`, `option`, `ordering`, `admin_menu_img`, `iscore`, `params`, `enabled`) VALUES (‘Установка курсов валют’, ‘option=com_kdtcurr’, 0, 0, ‘option=com_kdtcurr’, ‘Установка курсов валют’, ‘com_kdtcurr’, 0, ‘js/ThemeOffice/component.png’, 0, », 1);# 1 row(s) affected.
CREATE TABLE IF NOT EXISTS `jos_currencies` (
`jc_id` int(11) NOT NULL auto_increment,
`jc_code` varchar(50) NOT NULL,
`jc_rate` float NOT NULL,
PRIMARY KEY (`jc_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;# MySQL returned an empty result set (i.e. zero rows).
INSERT INTO `jos_currencies` (`jc_id`, `jc_code`, `jc_rate`) VALUES
(1, ‘USD’, 8.18),
(2, ‘EUR’, 12.05),
(3, ‘RUB’, 0.0347);
[Ответить]
Найдена такая проблемма , как только цена выше $1000 (т.е. 4 знака) она не отображается на сайте вообще, в виртумарте в списках товаров цена видна.
код вывода html с ценой и без соответственно
$ 900.00 (7650.00 грн.)
Как решить проблему?
[Ответить]
В настройках Virtuemart рядом с настройками основной валюты и символа валюты есть настройка, касающаяся разделителя тысяч, т.е. чтобы цены больше тысячи имели вид X XXX.XX. Дефолтное значение — пробел. Скорее всего проблема именно в этом. Пробел необходимо убрать, цены больше тысячи примут вид ХХХХ.ХХ и все заработает.
[Ответить]
Спасибо, проблема решена.
[Ответить]
Здравствуйте! Собираюсь приобрести ваш модуль, волнует следующий вопрос сейчас идет настройка магазина по адресу test./название сайта/.com.ua, после переноса сайта на /название сайта/.com.ua все манипуляции нужно будет производить заново?
[Ответить]
Здравствуйте.
Нет, никаких манипуляций после первоначальной установки производить не нужно, набор скриптов никак не привязывается к месторасположению сайта, будь то домен или поддомен.
Вы же в любом случае будете переносить сайт из поддомена в домен через копирование всех файлов сайта. Соответственно будут скопированы и файлы установленного расширения
[Ответить]
Спасибо за ответ. Модуль я приобрел, столкнулся со следующим (вопрос задавал в письме, но ответа не получил). Где нужно поменять, что-бы основной валютой была Евро, а цена в гривнах округлялась до 2 знаков а не до 3 как сейчас. Если сейчас в настройках магазина основной валютой выбрать Евро, то цена вообще не отображается.
[Ответить]
Для отображения цены свыше 1000$ выставил символы как вы уже писали выше (ХХХХ.ХХ) но к сожалению ничего не поменялось (((
Можете по подробнее описать проблему чтобы я мог с ним разобраться?
Заранее спасибо!
[Ответить]
…… а цена в гривнах округлялась до 2 знаков а не до 3 как сейчас.
необходимо в файл components/com_virtuemart/themes/default/templates/common/kdt_inothercurrencies.php добавить следующее в строку 54
$uah_price = round($uah_price, 2);
$eur_price = round($eur_price, 2);
$rub_price = round($rub_price, 2);
если не получится, напишите, пожалуйста, на адрес alex_krylov [@] inbox.ru
[Ответить]
…. Где нужно поменять, что-бы основной валютой была Евро
Расширение в стартовой поставке поддерживает исключительно доллар как основную валюту. Для перехода на основную валюту евро нужно сделать следующее.
1. изменить основную валюту магазина
2. установить символ валюты в настройках
3. провести поиск по тексту в скриптах расширения. Текст для поиска — «in_other_currencies(str_replace(‘$’, » , »
4. заменить в каждом найденном случае знак доллара на символ евро, который определили в п.2
если не получится, напишите, пожалуйста, на адрес alex_krylov [@] inbox.ru
[Ответить]
Для отображения цены свыше 1000$ выставил символы как вы уже писали выше (ХХХХ.ХХ) но к сожалению ничего не поменялось (((
Можете по подробнее описать проблему чтобы я мог с ним разобраться?
Проблема по большому счету в том, что влезть в механизм формирования цен Виртуамарта крайне проблемно, поэтому при реализации расширения было принято решение парсить уже сформированные Виртуамартом цены. Такое решение является достаточно гибким и удобным, но имеет и недостаток — а именно — выводящаяся Виртумартом (и настраиваемая в настройках магазина) цена должна быть именно в том формате, на который настроено нами при разработке расширение.
Пожалуйста, перепроверьте еще раз настройки, они должны в точности повторять наши рекомендации. В течении множества интеграций расширения в различным сайты, проблема с ценами больше 1000 у.е. была только в этом. Если не получится, напишите, пожалуйста, по адресу alex_krylov [@] inbox.ru — поможем
[Ответить]
У меня отлично работает всё, хотя в начале много чего не понимал. Но у меня вопрос, как сделать основной валютой гривну, чтоб и весь расчёт был относительно неё?
[Ответить]
посмотрите мой же коммент от 19 марта 2010 в 7:10 на этой же странице. Там описывается переход с основной валюты доллар на евро. Собственно, между гривной и евро всей разницы — разные названия)
Но если вы перейдете с доллара на гривну, придется менять еще файл kdt_inothercurrencies.php, а именно поменять знаки некоторых операций
[Ответить]
Здравствуйте,у меня расширение priceInfo for Virtuemart при измене курса валют в администрировании сайта
компоненты-установка курса валют видает ошибку: Fatal error: Call to undefined function: str_ireplace() in /home/lstnet/public_html/administrator/components/com_kdtcurr/kdtcurr.php on line 30 подскажите как исправить?
[Ответить]
Скажите, у меня ВиртуМат 1.1.2 stable. Можно ли на разных категориях товара выставлять где то гривны без долларов, а где то доллары без гривен??? на какое количество валют рассчитан данный модуль, как можно его приобрести если нет счета ни электронного ни в банке, может можно пополнить какой то ваш счет через банк. И самый важный вопрос. Скажите данный модуль встанет на версию ВиртуМата 1.1.2 с версией джумлы 1.5.8??? так как столкнулся с тем что многие модули не устанавливаются на многие версии.
[Ответить]
расширение рассчитано на работу с joomla 1.5 с любыми соответствующими версиями Виртмарта.
что касается различных шаблонов отображения, то в стартовой поставке расширения это не предусмотрено, однако у нас есть подобная разработка.
расширение рассчитано на 4 валюты — гривни, рубли, доллары и евро, однако под заказ возможно расширение перечня валют.
в случае, если электронные деньги отсутствуют, можно воспользоваться автоматами системы ibox.
[Ответить]
у меня таже проблема что и у Леонида. Fatal error: Call to undefined function: str_ireplace() in /home/gpsworld/public_html/administrator/components/com_kdtcurr/kdtcurr.php on line 30 Можете подсказать?
[Ответить]
функция str_ireplace() относится к стандартным функциям PHP5
Возможно, у вас на хостинге до сих пор используется устаревшая версия PHP 4. Я бы рекомендовал обратиться с проблемой к хостеру, думаю он ее решит
[Ответить]
Версия PHP 5.2.5, в принципе все работает курс только получается править нужно в базе.
[Ответить]
если версия php — 5, следовательно в этом вопросе все в порядке, однако возможно установлены какие то ограничения на использование функций. Рекомендую все же обратиться с таким вопросом к хостеру.
[Ответить]
[...] разработаны два варианта развития нашего расширения priceInfo, реализующего мультивалютность для популярного [...]
PHP Warning: mysql_query(): Access denied for user ‘technointer2000′@’localhost’ (using password: NO) in /hsphere/local/home/technointer2000/technointer.com.ua/components/com_virtuemart/themes/default/templates/common/kdt_inothercurrencies.php on line 26
PHP Warning: mysql_query(): A link to the server could not be established in /hsphere/local/home/technointer2000/technointer.com.ua/components/com_virtuemart/themes/default/templates/common/kdt_inothercurrencies.php on line 26
не коннектиться к базе, на хосте говорят что у Вас проблемы с кодом.
{code}
setQuery( $query );
$rows = $db->loadAssocList();
if(count($rows) > 0)
{
$rate = Array();
foreach ($rows as $row)
{
switch($row->jc_code)
{
case ‘USD’; $rate['usd'] = $row->jc_rate; break;
case ‘EUR’; $rate['eur'] = $row->jc_rate; break;
case ‘RUB’; $rate['rub'] = $row->jc_rate; break;
}
}
foreach ($rate as $c_rate)
{ if(!is_numeric($c_rate)) { $c_rate = 1; } }
// 1. пересчитываем цену в Евро в гривны
$uah_price = $summ * $rate['eur'];
// 2. пересчитываем гривны в альтернативные валюты
$usd_price = $summ * 1.24;
$eur_price = $summ;
$rub_price = $summ;
$uah_price = round($uah_price, 2);
$usd_price = round($usd_price, 2);
$eur_price = round($eur_price, 2);
$rub_price = round($rub_price, 2);
if($show_zeros == ‘true’)
{
if(stristr($uah_price, ‘.’) == false) { $uah_price = $uah_price.’.00′; }
if(stristr($usd_price, ‘.’) == false) { $usd_price = $usd_price.’.00′; }
if(stristr($eur_price, ‘.’) == false) { $eur_price = $eur_price.’.00′; }
if(stristr($rub_price, ‘.’) == false) { $rub_price = $rub_price.’.00′; }
}
// 3. генерируем текстовку
$text_price = read_template();
$text_price = str_replace(‘{UAH_PRICE}’, $uah_price , $text_price);
$text_price = str_replace(‘{USD_PRICE}’, $usd_price , $text_price);
$text_price = str_replace(‘{EUR_PRICE}’, $eur_price , $text_price);
$text_price = str_replace(‘{RUB_PRICE}’, $rub_price , $text_price);
$text_price = str_replace(‘{ORIG_PRICE}’, $summ , $text_price);
return $text_price;
}
else { return false; }
}
else
{ return false; }
}
?>
{/code}
В итоге, вот так $uah_price = $summ * $rate['eur'];
не работает, значение цены ноль.
А водтак $uah_price = $summ * 9,75; работает. Я же писал вам письма но мне приходят автоматический возврат. Прошу помочь в решении этой проблемы.
[Ответить]
а мы же вроде уж решали эту проблему. что то изменилось? этой траблой мы уже точно занимались
[Ответить]
Нет проблема как была так и осталась, я уже говорил… что письма на Вашу почту не доходят!
[Ответить]
странно, вроде не у кого проблем нет.
Ну напишите на резервный адрес — kdtbizua [@] kdt.biz.ua — будем решать вопрос
[Ответить]
Скажите,данные модуль, отображает 3х различных курса,и при покупке товара он автоматически ведет пересчет всех валют и показывает общуюю цену в 3х валютах?или просто добавляет еще одну цену? и есть ли в данном модуле функция или строчка где для людей указать что курсов есть три разных, а оплачивать только в национальной валюте, ну вдруг кто по без-налу про платит.
[Ответить]
такую модификацию можно сделать под заказ. Вообще, данное расширение позволяет вводить все цены в гривне, одновременно показывая пользователю сколько данный товар стоит в других валютах. Курсы являются общими и устанавливаются вручную в админке.
[Ответить]
Скажите, то есть я выставлю в админке все 3и цены на товар. Если я добавлю различные товары, то каждая цена будет прибавлятся одна к другой, и выведет мне одну итоговую сумму в (грн, доллар и евро)
Но вот что я заметил на одном из сайтов. когда итоговая сумма, например в гривнах, переваливает за 1000грн. то вместо (1100,25грн) я вижу вот такой подсчет
Промежуточный итог: 1 050.00 грн.
Итого: 1 грн.
(0.13 $, 4 руб.)
как такое может быть и где это можно исправить.
[Ответить]
Здравствуйте.
В феврале купил расширение, все работает нормально. Сейчас увидел информацию о вариантах развития расширения.
У меня основная валюта доллар, но хочу использовать варианты оплаты «безналичный для физ.лиц» и «безналичный для юр.лиц». Квитанции и счета, естественно, должны выставляться в грн., а сейчас у меня квитанция распечатывается в виде «100$», а счет-фактура на тот же товар вообще выдает «100грн.».
Скажите пожалуйста, смогут ли мне помочь свежие варианты расширения? Если нет, то можно ли как-то безболезненно для работоспособности сайта решить эту проблему?
[Ответить]
да, конечно, можно, но потребуется,видимо, индивидуальная правка расширения под ваш конкретный сайт.
[Ответить]
Спасибо за ответ.
Каким образом тогда сделать эту правку? И сколько это будет стоить, если услуга платная?
[Ответить]
платная
давайте эти вопросы обсудим вне сайта, icq 286658375
[Ответить]
Здравствуйте. Вопрос в том, решит ли этот хак мою проблему:
Joomla 1.5.18 + VirtueMart 1.1.4
Никак не могу прикрутить форму оплаты через PayPal, т.к. на завершающем этапе подтверждения заказа, при переключении клиента на страницу PayPal выдает ошибку о том, что валюта UAH (гривна) не известна платежной системе.
На сайте главная валюта гривна, товары добавляются в долларах (USD), конвертятся в выводятся в гривне на сайт.
Мне нужно, чтобы на сайте товары были в гривне, но при этом работал модуль оплаты через PayPal.
C вашим хаком я смогу пользоваться PayPal?
PS у меня сейчас конвертация производиться через файл convertHARD, это как-то повлияет на работу вашего хака?
[Ответить]
в вашей ситуации скорее всего необходимо править исходный код того что есть, с тем чтобы на финальном этапе сумма пересчитывалась в валюту известную paypal. просто установкой расширения проблемы не решить.
[Ответить]
Не могу определиться с тем какой именно модуль решит вопрос вывода цены.
У меня товары в админке вводятся в 3х валютах (некоторые в евро, некоторые в гривне, некоторые в долларах) выводить во фронтенде надо в гривне (и для информации в долларах и в евро желательно), при этом на сайте должен быть виден текущий курс и возможность установки его из админки вручную…
Этот модуль вроде подходит, но смущает фраза в описании «Предполагается, что все цены интернет магазина вводятся в админ. панели долларах США» — тоесть в 3х валютах вводить я не смогу?
[Ответить]
сможете, но необходима небольшая доработка расширения. Стукните в аську, обсудим этот вопрос
[Ответить]
Вопрос: можно вместо гривны ввести валюту тенге?
[Ответить]
Добрый день, сегодня купил Ваш компонент, при первой установке была проблема с кодировкой,сохранил kdtcurr.php в UTF-8 без BOM, но в списке компонентов опять кодировка не та. Так-же отсутствуют иконки валют в Установке курсов валют. Подскажите как это решить?
[Ответить]
добрый
скорее всего у вас БД в нестандартной кодировке — не в юникоде. Необходимо зайти в таблицу jos_components и вручную поправить название компонента. Что касается отсутствия картинок — тут необходимо смотреть по месту, сложно угадать.
[Ответить]