Уважаемые господа!

Kherson Development Team в данное время готовит к запуску новый ресурс, который станет официальным сайтом команды.
Ресурс будет располагаться по адресу http://kdt.biz.ua.
Запуск нового сайта запланирован на среду, 3 февраля.
После официального запуска текущий сайт gelos.org.ua обновляться не будет, а лишь осуществлять переадресацию на новый сайт.
Заранее просим прощения за возможные неудобства и просим отнестись с пониманием к нашему частичному ребрендингу :-)

До встречи по нашему новому адресу! :)
Июн
09
2009

Мультивалютность в Virtuemart

Мультивалютность в Virtuemart очень странный предмет – вот она есть, но глючит по страшному :)

Итак, что же это такое, с чем его едят и как заставить ее работать украинских условиях ниже.

Virtuemart: движек интернет-магазинов

Virtuemart: движек интернет-магазинов

По словам разработчиков, Virtuemart мультивалютен. На самом деле, вся мультивалютность сводится к конвертации из любой указанной в цене товара валюты в основную валюту интернет магазина. Работает это следующим образом: в настройках магазина указывается основная валюта (в моем случае, украинская гривна), заполняется справочник валют и в дальнейшем любую указанную в справочнике валюту можно использовать, то есть указывать в качестве валюты цены товара. В случае, если валюта используется, Virtuemart “на лету” преобразует ее в указанную основную валюту, даже не упоминая о том, что перевод выполнен. Для преобразования используется файл /administrator/components/com_virtuemart/classes/currency/convertECB.php, который получает данные о курсе валют из XML файла, ежедневно предоставляемого European Central Bank. Сам файл может быть найден здесь. После получения файла встроенный конвертер Virtuemart его кэширует и кладет в /cache/daily.xml и в дальнейшем курсы берет оттуда, обновляя его один раз в сутки.
Только тут есть, как всегда, грабли… ну не знает европейский центральный банк такой валюты как украинская гривна (UAH)  :-)

Следовательно, для того, чтобы модуль перевода работал у нас есть 3 пути:

  • Найти XML файл банка, который знает, что собственно такое есть украинская валюта. Такой файлик, например, можно найти здесь.
  • Использовать текущий механизм для установки курса валют из админки и не возиться со всевозможными экспортами-импортами.
  • Написать свой конвертер, в котором прописать курсы валют.

Столкнувшись в одном из проектов с этой проблемой, было принято решение сделать гибрид: используется встроенный механизм марта (лежит в файле convertECB.php), но берет данные он не из интернета, а из локального XML файла eurofxref-daily.xml, расположенного в корне сайта. Встроенный механизм Virtuemart кэширует его в /cache/daily.xml, который после каждого обновления основного файла необходимо удалять. Изменение курсов производится путем ручного исправления оригинального файла или из специально разработанного модуля админки Joomla. Модуль представляет собой набор PHP скриптов, не зарегистрированных никоим образом в Joomla,  а лежащих в отдельной папке в /administrator/components/<любая-папка>, которые вызываются нажатием на кнопку «Управление курсами валют» и открываются в диалоговом окне Highslide.

Разработанный модуль для управления курсами валют в Virtuemart

Разработанный модуль для управления курсами валют в Virtuemart

Реализовать такое решение можно следующим образом:

1.    Изменить файл – convertECB.php.
Главное изменить строки (привести к следующему виду):

var $document_address = 'http://<URL>/eurofxref-daily.xml';
var $info_address = 'http://<URL>/';

Уже измененный файл можно скачать здесь.
Файл лежит в /administrator/components/com_virtuemart/classes/currency/convertECB.php
Этим изменением мы заставляем Virtuemart брать данные из локального файла на нашем сервере.

2.    Скачать файл с валютами здесь. Файл рассчитан на 3 валюты: гривны, доллары США и евро. В случае необходимости их будет не трудно добавить

3.    В файле /administrator/components/com_virtuemart/
html/admin.curr_list.php после всего текста вставить:

<br /><br />
<table style="border:1px solid #e7e7e7; cursor:pointer;">
<tr>
<td style="background-color:#f9f9f9;"><img src="/administrator/images/
edit_currrate.png" /></td>
<td valign="middle" style="vertical-align:middle;background-color:
#f9f9f9;">
<a onclick="return hs.htmlExpand(this, { objectType: 'ajax',
headingText: 'Управление курсами валют'} )" href="/administrator/
components/<папка>/index.php" >Управление курсами валют</a>
</td>
</tr>
</table>

При этом в шаблон админки Joomla должен быть вставлен код, реализующий открытий Highslide окон, иначе нужный интерфейс будет открыт просто в том же окне, что есть некрасиво.
Как выглядит вышеприведенный код можно посмотреть выше.

4.    Создать папку в /administrator/components/ и создать в ней следующие файлы: index.php, setrates.php, deltemp.php. Рабочее содержимое этих файлов будет приведено ниже. Файлы отвечают за отображение формы редактирования, сохранение данных и удаление временного закэшированного файла соответственно.

Index.php – форма редактирования курсов валют
setrates.php – скрипт установки введенных значений и очистки закешированного содержимого
deltemp.php – скрипт безусловной очистки кешированного содержимого

Внимание! Не используйте вышеприведенные файлы в «чистом» виде, поскольку они служат только для демонстрационных целей!! Для безопасной работы в эти файлы необходимо добавить также функции по распределению полномочий и ограничению несанкционированного доступа Joomla.

Оказавшие помощь ресурсы:
•    http://phpclub.ru/faq/PHP5/XML
•    http://joomlaforum.ru/index.php?topic=26078.90
•    http://joomlaforum.ru/index.php/topic,26078.0.html
•    http://help.mamboserver.com/index.php?option=com_content&task=view&id=377&Itemid=64

Буду рад обсудить найденное решение и ответить на вопросы! В связи с наплывом ботов, комментирование временно отключено, но можете стукнуть в аську: 286-658-375.

UPD.: включил новую систему проверки комментов, посмотрим как работать будет:) прошу отписываться, господа :)

UPD. 2.: После недели тестирования решения на реальном инет-магазине, обнаружился следующий глюк: после первого изменения основной валюты инет-магазина в настройках Virtuemart, символьное обозначение валюты (напр., «грн.») перестает выводиться вообще :( Кроме того, цены округляются (хотя в настройках установлено отображать 2 знака после запятой)… Посколько инет-магазин уже работает, пришлось срочно решать эту задачу…
После некоторого количества чесания репы ( :) ) было обнаружено что форматирование даты выполняется в файле /administrator/components/com_virtuemart/classes/currency/class_currency_display.php
Не мучаясь лукаво, предлагаю следующее решение:
1. закомментировать строки с 259 по 445 (форматирование суммы и обработка отрицательных сумм по образцу, установленному в настройках);
2. В строке 447 вставить:

$res = round($nb,2);

3. Строку 455 привести к виду:

$res = $res." грн.";

После этих изменений все начинает работать правильно.

UPD. 3.: В последнее время участились жалобы на то, что невозможно скачать мой вариант XML файла с валютами. На самом деле собственно скачивание выполняется без проблем, просто браузер не может его пропарсить. Поэтому для сохранения XML файла необходимо выбрать эту ссылку и выбрать пункт меню «Сохранить объект как…» либо скачать этот же файл в .RAR архиве здесь.

UPD. 4. 24 октября 2009 года разработана новая версия хака, реализующего мультивалютность. Более подробное его описание можно найти здесь, а по вопросам консультаций по работе, приобретения и установки обращайтесь сюда, или пишите по ICQ – 286-658-375 – или на e-mail: alex_krylov@inbox.ru

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong

Комментарии (73) »

  • Сегодня пришло письмо по данному посту:

    Здравствуйте.
    Во первых хочу поблагодарить Вас за статью о «Мультивалютности в виртуемарт» (http://gelos.org.ua/2009/06/09/мультивалютность-в-virtuemart/) СПАСИБА *YAHOO* Пригодилось…
    Вот уже несколько дней я ищу информацию о том как можно зделать вывод цены на товар сразу в двух валютах (примерно такого вида $ 100.00 (грн. 760,00) ) в живую пример можно посмотреть здесь http://dynamicconverter.com/examples.php там и для виртуемарт есть решение, но хотелось бы вводить свой курс, а не получать из вне.
    Вы не могли бы подсказать как можно это реализовать (примерно такого вида $ 100.00 (грн. 760,00) ) !? :-[ Я только начинаю изучать вэб программирование, по этому не силён , и буду очень рад любому совету.
    Спасибо ещё раз.

    [Ответить]

    Комментарий | 11 июня 2009
  • и собственно мой ответ:

    Здравствуйте
    Ну во-первых необходимо внедрить мое решение для непосредственного управления курсами
    Во-вторых, когда мультивалютность будет настроена нужно будет переписать файл price.tpl.php в районе вот этого куска:

    < ?php
    if( !empty( $price_info["product_price_id"] )) { ?>
    …..
    < ?php echo $CURRENCY_DISPLAY->
    getFullValue($base_price) ?> грн.
    < ?php echo $text_including_tax ?>
    …..
    < ?php
    }
    echo $price_table;
    ?>

    у меня это строки 48-66, но у меня этот файл не оригинальный
    Впринципе можно покопаться можно ли выводить оригинальную (не пересчитанную цену), но я бы решил все проще, сделав запрос в таблицу #__vm_product_price. А в этой таблице лежит и оригинальная цена, и оригинальная валюта. А конвертировать ее в основную валюту магазина можно так:

    $price = round($price, 2);
    $product_curr = $row["product_currency"]; // это после прямого запроса
    echo round(convertECB::convert($price, $product_curr, «UAH»), 2)

    [Ответить]

    Комментарий | 11 июня 2009
  • Авдей

    class_currency_display.php -234 строки
    VirtueMart 1.1.3 stable
    где искать 447 и 445 строки?

    [Ответить]

    Комментарий | 13 июня 2009
  • Здравствуйте
    Закомментировать нужно вот этот кускок:

    if ($nb == abs($nb)){
    $res=$this->getValue($nb, $decimals);
    // Positive number
    switch ($this->positivePos){
    case 0:
    // 0 = ‘00Symb’
    $res=$res.$this->symbol;
    break;
    case 2:
    // 2 = ‘Symb00′
    $res=$this->symbol.$res;
    break;
    case 3:
    // 3 = ‘Symb 00′
    $res=$this->symbol.’ ‘.$res;
    break;
    case 1:
    default :
    // 1 = ‘00 Symb’
    $res=$res.’ ‘.$this->symbol;
    break;
    }
    } else {
    // Negative number
    $res=$this->getValue(abs($nb), $decimals);
    switch ($this->negativePos){
    case 0:
    // 0 = ‘(Symb00)’
    $res=’(‘.$this->symbol.$res.’)';
    break;
    case 1:
    // 1 = ‘-Symb00′
    $res=’-’.$this->symbol.$res;
    break;
    case 2:
    // 2 = ‘Symb-00′
    $res=$this->symbol.’-’.$res;
    break;
    case 3:
    // 3 = ‘Symb00-’
    $res=$this->symbol.$res.’-';
    break;
    case 4:
    // 4 = ‘(00Symb)’
    $res=’(‘.$res.$this->symbol.’)';
    break;
    case 5:
    // 5 = ‘-00Symb’
    $res=’-’.$res.$this->symbol;
    break;
    case 6:
    // 6 = ‘00-Symb’
    $res=$res.’-’.$this->symbol;
    break;
    case 7:
    // 7 = ‘00Symb-’
    $res=$res.$this->symbol.’-';
    break;
    case 9:
    // 9 = ‘-Symb 00′
    $res=’-’.$this->symbol.’ ‘.$res;
    break;
    case 10:
    // 10 = ‘00 Symb-’
    $res=$res.’ ‘.$this->symbol.’-';
    break;
    case 11:
    // 11 = ‘Symb 00-’
    $res=$this->symbol.’ ‘.$res.’-';
    break;
    case 12:
    // 12 = ‘Symb -00′
    $res=$this->symbol.’ -’.$res;
    break;
    case 13:
    // 13 = ‘00- Symb’
    $res=$res.’- ‘.$this->symbol;
    break;
    case 14:
    // 14 = ‘(Symb 00)’
    $res=’(‘.$this->symbol.’ ‘.$res.’)';
    break;
    case 15:
    // 15 = ‘(00 Symb)’
    $res=’(‘.$res.’ ‘.$this->symbol.’)';
    break;
    case 8:
    default :
    // 8 = ‘-00 Symb’
    $res=’-’.$res.’ ‘.$this->symbol;
    break;
    }
    }
    а следующий после этого кусок привести к следующему виду:

    $res = round($nb,2);
    if( $symbol != » ) {
    $this->symbol = $old_symbol;
    }
    $res = $res.» грн.»;
    return($res);

    Если такого нет – пришлите, посмотрю

    [Ответить]

    Комментарий | 14 июня 2009
  • импортировано с форума joomla-support.ru:

    ВОПРОС:
    Привет!

    Если в настройках магазина («Информация о мгазине») установить основную валюту рубль и цены товаров писать в рублях т вылазиют ошибки:

    Ошибка: Could not resolve host: http://www.ecb.int; No data record of requested type
    Ошибка: Failed to retrieve the Currency Converter XML document.

    А если все в долларах то все нормально отображается, без ошибок.
    В чем проблема?

    ОТВЕТ:
    Это связано с тем, что файл convertECB.php, реализующий мультивалютность в virtuemart не может найти сайт центрального еропейского банка (www.ecb.int). Почему он не может его найти – другой вопрос, мне отсюда не видно

    Однако решить проблему можно просто подменив http://www.ecb.int на IP адрес 195.128.2.97 в convertECB.php.

    [Ответить]

    Комментарий | 14 июня 2009
  • fob

    вопрос: можно ли как то приучить его брать курс с нбу и забыть о редактировании?
    Согласитесь – редактировать курс каждый день – лишняя морока.

    [Ответить]

    Комментарий | 24 июня 2009
  • ну, на мой взгляд, все не так просто
    дело в том, что простое копирование с сайта НБУ устроит далеко не всех. Ну, например, скажем что в вашей компании цены установлены в долларах, но курс доллара не равняется курсу НБУ, а превышает его на 30%-40%. Поэтому даже если и будет написан автоматический импорт курса, то ручную установку курсов все равно считаю необходимым предусмотреть.

    [Ответить]

    Комментарий | 26 июня 2009
  • HOG_Seruj

    Подскажите, а можно ди в виртумарт сделать отображения товаров не в одной валюте а в нескольких, что бы он не переводил а выводил те валюты которые внесены и отображаются в админке? Тоесть у меня на один товар цены в гривне, на друние в евро, а на остальные в доларах, надо чтобы отображалось три валюти……

    [Ответить]

    Комментарий | 9 июля 2009
  • В таком контексте еще не копался.. Стандартными средствами думаю нет.
    Сейчас в разработке расширение Viruemart для работы с любым количеством валют на основе базы данных MySQL, выводом валют в языке интерфейса и прочими вкусностями:) Спасибо за идею, это тоже постараюсь вставить

    [Ответить]

    Комментарий | 9 июля 2009
  • Сергей

    Подскажите, что и как нужно подправить, или сделать, чтобы, если цена равна нулю, то она не отображалась на сайте?
    Возникла проблема со списком однотипных товаров(футболки), которые отличаются, только одним свойством (цвет), но при этом цена у них разная. Я нашел следующее решение: создаю товар с нулевой ценой, но с разными особенностями, и назначаю им цены(+10, +15 и т.д.). В результате от выбранного покупателем свойства цена плюсуется к основной цене товара, то-есть к нулю, и так я получаю реальную стоимость. Но при этом на сайте отображается «Цена: 0 грн.» и как это исключить не знаю. Возможно, вы можете подсказать другое решение проблемы?
    Спасибо.

    [Ответить]

    Комментарий | 9 июля 2009
  • Дмитрий

    Добрый день вот емогу понять вроде и скодировкой все в порядке а глюк таков
    Warning: DOMDocument::load() [domdocument.load]: I/O warning : failed to load external entity «/sata1/home/users/healthyst/www/www.teplobud.kiev.ua/administrator/components/cur/eurofxref-daily.xml» in /sata1/home/users/healthyst/www/www.teplobud.kiev.ua/administrator/components/cur/index.php on line 11

    [Ответить]

    Комментарий | 21 июля 2009
  • Дима

    Я немогу понять почему нету привязки валюты, ствится всеровно левый курс

    [Ответить]

    Комментарий | 21 июля 2009
  • Дмитрий

    Вообщем проблемы решил, терь проблема… почемуто несоздается файл /cach/daily.xml

    [Ответить]

    Комментарий | 22 июля 2009
  • Владимир

    Интересно. Вообще чтение вашего блога это не просто глупое пролистывание последних новостей или чтениеерунды про то, чем человек сегодня занимался, а нахождение реально интересной информации.

    [Ответить]

    Комментарий | 22 июля 2009
  • Iven

    где в админке должна появится Index.php – форма редактирования курсов валют ?

    [Ответить]

    Комментарий | 23 июля 2009
  • Анонимно

    Здравствуйте !!! у меня проблема можно ли как то зделать что бы на сайте при просмотре цен были цены в грн. , а другие цены, на другие товары в евро. Я смотрел уже форумы там одна конвертация мне она не нужна. Хэлп)))

    [Ответить]

    Комментарий | 30 июля 2009
  • 123

    В настройке магизина/валюты, на скрине выше видно

    [Ответить]

    Комментарий | 30 июля 2009
  • Николай

    Добрый день. Во первых хочу поблагодарить автора, за действительно стоящую статью, целую неделю бестолку потратил на форумах и вот наконец набрел на сей сайт. Видать правду деды говорили: тот, кто ищет, тот всегда найдет:))…У меня возникла следующая проблема: где взять файл eurofxref-daily.xml?….У меня его нет. Спасибо

    [Ответить]

    Комментарий | 3 августа 2009
  • Николай

    Теперь пост не в тему): на втором шаге ссылка на закачку неактивна

    [Ответить]

    Комментарий | 3 августа 2009
  • ievgen

    Сделал пошагово всё как описано, но при нажатии в админке виртуалмарта в курсах валют на созданную кнопку «Управление курсами валют» выбивает:
    ————————————————————-
    Object not found!

    The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

    If you think this is a server error, please contact the webmaster.
    ————————————————————-
    проверил правильность путей в ndex.php, deltemp.php и convertECB.php – вроде всё праввильно.. Может это связано как раз с «..в эти файлы необходимо добавить также функции по распределению полномочий и ограничению несанкционированного доступа Joomla»? если да – то как это сделать? спасибо

    [Ответить]

    Комментарий | 6 августа 2009
  • Константин

    Ребятки подскажите, почему «Управление курсами валют» не открывается в Highslide, а на новой странице? и Почему вместо названий валют кракозябы?
    Joomla 1.5.14+Virt 1.1.3 stable
    Спасибо большое заранее

    [Ответить]

    Комментарий | 12 августа 2009
  • Константин

    Подскажите как избавиться от ошибки DOMDocument::load() [domdocument.load]: I/O warning : failed to load external entity «/eurofxref-daily.xml» in /home/podarkid/public_html/administrator/components/money/index.php on line 11

    [Ответить]

    Комментарий | 13 августа 2009
  • Владимир Волчанский

    Вы пишете:

    «Использовать текущий механизм для установки курса валют из админки и не возиться со всевозможными экспортами-импортами.»

    Это бы меня вполне удовлетворило. Но… Обыскал всю админку VirtueMart 1.1.3 не нашёл где управляются курсы валют. Есть список валют, валюты для каждого продавца. Но нигде не устанавливаются курсы. Нет такого раздела или подраздела.

    Может я тупой? Или модуля какого у меня нет?

    Заранее благодарен за ответ.

    [Ответить]

    Комментарий | 18 августа 2009
  • Да нет, как раз все правильно. Virtuemart не предоставляет ручного управления курсами валют – курсы берутся автоматически с центрального европейского банка. Наш компонент реализует управления курсами в том виде, в каком оно описано в заметке и показано на скриншоте, но в массы его пока рано выпускать.

    [Ответить]

    Комментарий | 20 августа 2009
  • shadow

    Сделал всё как написано, поставил курс из локальной папки, пишет «Файл ../../../eurofxref-daily.xml недоступен для записи», что делать в этом случае?

    [Ответить]

    Комментарий | 25 августа 2009
  • скорее всего, тут имеет место проблема с правами. Попробуйте поставить права 777 на этот файл

    [Ответить]

    Комментарий | 3 сентября 2009
  • Марк

    Как реализовать, что бы для разных групп покупателей цена была в разных валютах при отображении?

    [Ответить]

    Комментарий | 8 сентября 2009
  • eric

    Добрый день.
    Во втором пункте не могу скачать eurofxref-daily.xml
    ссылка битая. Подскажите где мона скачать.
    Подскажите чайнику.
    1.Если у меня стоит Denwer на компьютере что нужно прописать в этом параметре

    var $document_address = ‘http:///eurofxref-daily.xml’;
    var $info_address = ‘http:///’;

    2.Если даже я скачаю файл валют eurofxref-daily.xml в какую папку нужно перенести этот файл.
    Спасибо.

    [Ответить]

    Комментарий | 8 сентября 2009
  • andrey

    респект и уважуха. Только с изменением файла /administrator/components/com_virtuemart/classes/currency/class_currency_display.php
    проблема, в комметариях посмотрел изменения данного файла, когда он состоит из 234 строк, но почему-то с данными изменениями даже админка магазина не работает. Пока этот файл не трогаю,глюки еще не обнаружены. Еще раз огромное спасибо.

    [Ответить]

    Комментарий | 9 сентября 2009
  • shadow

    Подскажите пожалуйста, а как сделать так, чтобы допустим курсы берутся с европейского сайта, а затем к ним автоматически прибавляется 2%?
    Например курс доллара=35р + 2% = 35,7
    заранее спасибо.

    [Ответить]

    Комментарий | 9 сентября 2009
  • andrey

    При этом в шаблон админки Joomla должен быть вставлен код, реализующий открытий Highslide окон, иначе нужный интерфейс будет открыт просто в том же окне, что есть некрасиво.
    Как выглядит вышеприведенный код можно посмотреть выше.

    Здравствуйте, как и где можно взять сабж, спасибо.

    [Ответить]

    Комментарий | 12 сентября 2009
  • Игорь

    Можно ли модуль выбора валюты вставить в темплейт ? ЧТо бы пользователь сам мог выбирать валюту сайта?

    [Ответить]

    Комментарий | 14 сентября 2009
  • пока такая функция не реализована. В плане – разработка расширения Virtuemart, где такая функция будет учтена. Разработка расширения начинается буквально на днях

    [Ответить]

    Комментарий | 15 сентября 2009
  • функция уже реализована для другого нашего проекта и войдет в планируемом расширение

    [Ответить]

    Комментарий | 15 сентября 2009
  • Нужно просто взять библиотеку Highslide – http://highslide.com/ – и подключить ее в index.php админпанели джумла
    Примеры подключения есть на вышеприведенном сайте

    [Ответить]

    Комментарий | 15 сентября 2009
  • Это стандартный модуль Virtuemart – mod_virtuemart
    Другой вопрос, что скорее всего, при выводе нормально работать он не будет – необходимо дотачивать напильником:) Мы реализовывали таким образом, что валюта магазина менялась при смене языка сайта через joomfish

    [Ответить]

    Комментарий | 15 сентября 2009
  • lasscal

    Cкажите пожалуйста, почему «Управление курсами валют» не открывается в Highslide, а на новой странице?
    Joomla 1.5.12+Virt 1.1.3 stable
    Я скачала библиотеку Highslide, кинула в корень, в /administrator/templates/khepri/index.php подключила, но почему-то открывается на новой странице, может что то не до писала?
    Подскажите пожалуйста.

    [Ответить]

    Комментарий | 21 сентября 2009
  • Alexei

    Доброго времени суток…
    Очень помогла ваша страничка….все работает кроме как в админке Virtuemarta – при переходе в настройки курса – сразу 500 error – и ни-каких более ошибок не выдает… joomla 1.0.15 Virtuemart 1.1.13
    Заранее благодарен за ответ….

    [Ответить]

    Комментарий | 22 сентября 2009
  • Alexei

    Доброго времени суток…
    Чуть разобрался – теперь при вызове задать курсы выдает Фатал еррор на dom->load
    есть подозрение у хостера PHP 4 – возможно в этом и проблема.
    Может Вы подскажите разбор xml для php4
    Спасибо

    [Ответить]

    Комментарий | 22 сентября 2009
  • Alexei

    Все разобрался….
    Единственное в файле setrates.php

    Заменить на

    и тогда корректно отображаются изменения валют – в плане цены…
    Остался один вопрос как защитить файлы в Joomla 1.0.15 – или где можно почитать….
    СПАСИБО….

    [Ответить]

    Комментарий | 23 сентября 2009
  • lasscal

    разобралась, оказалось что скачала не весь js файл для Highslide.

    [Ответить]

    Комментарий | 23 сентября 2009
  • Ruslan

    Добрый день.
    Я так и неуловил суть как сделать цену вида $ 100.00 (грн. 760,00),
    особенно второй абзац

    $price = round($price, 2);
    $product_curr = $row["product_currency"]; // это после прямого запроса
    echo round(convertECB::convert($price, $product_curr, «UAH»), 2)

    куда это разместить?

    И это я так пониаю половина решения в корзине цена будет не такого вида.
    Кто разобрался подскажите пожалуйста.

    [Ответить]

    Комментарий | 25 сентября 2009
  • добрый
    компонент не решает задачи вывода цен в двух валютах одновременно – это оставлено на потом:) Надеюсь скоро сможем порадовать Вас и таким решением.

    [Ответить]

    Комментарий | 25 сентября 2009
  • Ruslan

    Подскажите еще.
    Напмсано такое предупрежление –
    Внимание! Не используйте вышеприведенные файлы в «чистом» виде, поскольку они служат только для демонстрационных целей!! Для безопасной работы в эти файлы необходимо добавить также функции по распределению полномочий и ограничению несанкционированного доступа Joomla.

    А ктото решил уже это не в демонстрационных целях? Страшновато ставить такое на сайт) Если есть у когото то дайте пожалуйста.

    [Ответить]

    Комментарий | 28 сентября 2009
  • В связи с большим количеством вопросов создал маленькую заметку на эту тему, ее можно найти здесь: http://gelos.org.ua/archives/971
    Поскольку все таки делается правка админпанели, а не фронта сайта, такие средства защиты считаю, вобщем-то, достаточными.

    [Ответить]

    Комментарий | 28 сентября 2009
  • Ruslan

    При добавлении строк-
    if( !defined( ‘_VALID_MOS’ ) && !defined( ‘_JEXEC’ ) ) die( ‘Direct Access to ‘.basename(__FILE__).’ is not allowed.’ );

    Пишет – Direct Access to index.php is not allowed.

    А как открыть этот доступ ?
    Кто занет пишите )
    Спасибо.

    [Ответить]

    Комментарий | 29 сентября 2009
  • Кирилл

    Можно ли модуль выбора валюты вставить в темплейт ? ЧТо бы пользователь сам мог выбирать валюту сайта?

    Такая функция уже реализована. Ищити в joomla oscommers модуль vm_currensyselector и через админпанель выводите его в качестве меню в какой-либо позиции шаблона на вашем сайте.

    [Ответить]

    Комментарий | 4 октября 2009
  • Кирилл

    Кто подскажет, как избавится от этой ошибки на локальном сервере?
    Fatal error: Cannot instantiate non-existent class: domdocument in z:\home\test.ru\www\administrator\components\com_cur\index.php on line 10

    [Ответить]

    Комментарий | 4 октября 2009
  • Alexei

    Поставить PHP 5

    [Ответить]

    Комментарий | 7 октября 2009
  • Satrier

    Скачиваю ваш xml
    Ошибка синтаксического анализа XML: must not undeclare prefix
    Адрес: http://gelos.org.ua/files/eurofxref-daily.xml
    Строка 3, символ 1:
    ^

    [Ответить]

    Комментарий | 13 октября 2009
  • Satrier

    всё, разобрался :)

    [Ответить]

    Комментарий | 13 октября 2009
  • Eric

    Кто нибудь знает как поменять вывод названия UAH на Грн.
    Если по умолчанию валюта в магазине доллары.
    Спасибо

    [Ответить]

    Комментарий | 24 октября 2009
  • UAH – хранится в таблице валют виртуамарта как код гривны. Соответственно нужно отредактировать таблицу в базе данных. Только я бы настоятельно рекомендовал проверять на локалхосте, никак не на рабочем сайте

    [Ответить]

    Комментарий | 25 октября 2009
  • Eric

    Я пробовал менять на Грн. но тогда цена остаеться долларов а надпись меняеться на Грн. Ставлю UAH все работает.

    [Ответить]

    Комментарий | 31 октября 2009
  • Алекс

    Кто то может помочь реализовать вывод сразу трех цен в разных валютах в поле цена?
    Тройная мультивалютность =)
    К кому я могу обратиться с коммерческим предложением?

    [Ответить]

    Комментарий | 1 ноября 2009
  • Алекс

    p.s. Я плачу за этот модуль и потом можно будет его выложить бесплатно в сеть.

    [Ответить]

    Комментарий | 1 ноября 2009
  • такое расширение реализовано, лежит http://gelos.org.ua/%d1%80%d0%b0%d1%81%d1%88%d0%b8%d1%80%d0%b5%d0%bd%d0%b8%d1%8f-virtuemart/pricethrough

    обратиться можете alex_krylov@inbox.ru или ICQ 286658375

    [Ответить]

    Комментарий | 1 ноября 2009
  • Алекс

    Круто, спасибо =) Обращюсь

    [Ответить]

    Комментарий | 1 ноября 2009
  • Eric

    Так никто и не ответил по поводу Вывода названия цены. Неужели ни кто не сталкивался с этой проблемой?

    [Ответить]

    Комментарий | 3 ноября 2009
  • не сталкивались:) если предложенный вариант не работает, наверное придется лезть в код

    [Ответить]

    Комментарий | 4 ноября 2009
  • GardenSun

    Привет! Такой вопрос имеется к вам… Очень хочется создать на своём сайте опросник в боковой колоночке . Ну чтобы пользователи выбирали один из вариантов ответов, и далее отображалась статискика голосования. Интересно, это реально как-то сделать на ВордПрессе??? Скажу честно, во всяких там скриптах и кодах не силён, хотелось бы какой-нибудь плагин. В поиске смог найти только нерусифицированные, боюсь что не смогу разобраться.
    Друзья, что посоветуете????

    [Ответить]

    Комментарий | 11 ноября 2009
  • Jyrij

    Помогите пожалуйста!! Что делать!
    На виртуальном хостинге сделал… всё работало..
    После переноса на реальный когда выбираешь доллары выдает такую ошибку!

    Warning: fopen(http://www:80/eurofxref-daily.xml) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /usr/home/eksploveld/data/www/mobilizacia.kiev.ua/administrator/components/com_virtuemart/classes/connectionTools.class.php on line 177
    Ошибка: Possible server error! – ()

    Ошибка: Failed to retrieve the Currency Converter XML document.

    [Ответить]

    Комментарий | 12 ноября 2009
  • Jyrij

    Сайт http://mobilizacia.kiev.ua

    [Ответить]

    Комментарий | 12 ноября 2009
  • fopen(http://www:80/eurofxref-daily.xml)

    судя по ошибке, у вас не указан либо неверно указан адрес сайта

    [Ответить]

    Комментарий | 13 ноября 2009
  • Cosmosbaba

    Один человек помог реализовать вывод трех разновалютных цен на товар.
    Оформили так: http://avatara.kiev.ua/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=1170&category_id=64&option=com_virtuemart&Itemid=227

    [Ответить]

    Комментарий | 12 декабря 2009
  • sanyok

    Супер! Делись инфой с ближними своими)

    [Ответить]

    Комментарий | 15 декабря 2009
  • palexa

    http://www.site.ru/administrator/components/my_papka/index.php

    В итоге облом с ошибкой сервера 500
    Все пути проверил, всё правильно, joomla 1.5 и VirtueMart 1.1.4
    Что делать ?

    [Ответить]

    Комментарий | 6 января 2010
  • palexa

    Как разобрались, ? у меня такая же проблема

    [Ответить]

    Комментарий | 6 января 2010
  • palexa

    Работает только с PHP 5 !!!, папку с «компонентом» надо запаролить !!!, так как доступ к файлу index.php идёт прямым досупом

    P.S. Теперь если не сложно, дайте скачать эту библиотеку и код который надо вставить в файл шаблона, а то я не совсем понимаю как это сделать

    [Ответить]

    Комментарий | 10 января 2010
  • Иван

    Спасибо. ) Чувак, успехов тебе в работе и уважения)

    [Ответить]

    Комментарий | 26 января 2010
  • Оксана

    Добрый день!
    Подскажите, пожалуйста как избавиться от ошибки
    Warning: DOMDocument::load() [domdocument.load]: xmlns:gesmes: Empty XML namespace is not allowed in http://www.mysite/eurofxref-daily.xml, line: 3 in Z:\home\mysite\www\administrator\components\com_currency\index.php on line 12

    Заранее большое спасибо!!!

    [Ответить]

    Комментарий | 19 февраля 2010
  • Николай

    Здравствуйте.
    Не получается подключить highslide библиотеку.
    Скачал архив с http://highslide.com/ залил его в administrator\templates\khepri (пробовал его и в корень кидать)

    В administrator\templates\khepri\index.php перед тегом
    вставил код, который указан в мануале на сайте highslide.com:

    Заранее спасибо
    // override Highslide settings here
    // instead of editing the highslide.js file
    hs.graphicsDir = ‘/highslide/graphics/’;

    И все равно не пашет это окно, подскажите, что делаю не так

    [Ответить]

    Комментарий | 24 февраля 2010
  • Николай

    Решил проблему…Все дело было в неправильно выставленных путях к файлам

    [Ответить]

    Комментарий | 24 февраля 2010

RSS feed for comments on this post. TrackBack URL

Оставить комментарий


Уважаемые господа!

Kherson Development Team в данное время готовит к запуску новый ресурс, который станет официальным сайтом команды.
Ресурс будет располагаться по адресу http://kdt.biz.ua.
Запуск нового сайта запланирован на среду, 3 февраля.
После официального запуска текущий сайт gelos.org.ua обновляться не будет, а лишь осуществлять переадресацию на новый сайт.
Заранее просим прощения за возможные неудобства и просим отнестись с пониманием к нашему частичному ребрендингу :-)

До встречи по нашему новому адресу! :)

Powered by WordPress | Based on Aeros WordPress Theme. © Kherson Development Team, 2010