Здравствуйте. Ждал-ждал возможности редактирования курса валют из админки, но сегодня решил что на старых магазинах обновлять компонент jbzoo возможности нет. Родилась идея написать компонент, с помощью которого можно будет редактировать курсы валют.
Итог - микроскопичный компонент (сильно не пинайте, никаких проверок, никаких классов, ничего такого в нем нет). Компонент просто загружает файл "jbcurrency.xml", и дает возможность изменить значение нескольких полей. Компонент разработан с использованием методов SimpleXML.
<?php // Запрет прямого доступа. defined('_JEXEC') or die; //Загрузка XML файла в переменную $xml = simplexml_load_file('../media/zoo/applications/jbuniversal/config/jbcurrency.xml'); //обработка POST запроса (нажатие кнопки Сохранить) if (isset($_POST['submit'])) { $xml->curencylist->eur["value"] = $_POST['eur']; $xml->curencylist->usd["value"] = $_POST['usd']; $xml->curencylist->uah["value"] = $_POST['uah']; $xml->curencylist->rub["value"] = $_POST['rub']; $xml->asXML('../media/zoo/applications/jbuniversal/config/jbcurrency.xml'); echo 'Сохранено...'; } //Вывод формы с текущими значениями валют ?> <form method="post"> <input type="text" name="eur" value="<?php echo $xml->curencylist->eur["value"]; ?>"> <label for="eur">Евро</label><br> <input type="text" name="usd" value="<?php echo $xml->curencylist->usd["value"]; ?>"> <label for="usd">Доллары</label><br> <input type="text" name="uah" value="<?php echo $xml->curencylist->uah["value"]; ?>"> <label for="uah">Гривны</label><br> <input type="text" name="rub" value="<?php echo $xml->curencylist->rub["value"]; ?>"> <label for="rub">Рубли</label><br> <input name="submit" type="submit" value="Сохранить"> </form>В итоге, данный компонент появляется в меню "Компоненты - jbzoocurrency". Компонент представляет собой 4 поля с текущими значениями курса валют (которые можно изменять) и кнопкой "Сохранить".
Компонент сделан для себя, менять курсы валют на своих сайтах буду только я, потому я уверен что введенные значения будут корректными. Устанавливать этот компонент для заказчиков - дело рисковое, компонент нужно дорабатывать.
В прикрепленном файле архив, с установкой для joomla 2.5.
Короткая инструкция по установке:
1. Перед использованием рекомендую сделать бэкап файла \media\zoo\applications\jbuniversal\config\jbcurrency.xml
2. В настройках jbzoo выставляем "Сервис курса валют" в значение "файл jbcurrency.xml"
3. Устанавливаем скачанный компонент, как обычный компонент joomla
4. Очищаем кэш joomla (это нужно делать после каждого изменения связанного с валютами)
Компонент проверен на Joomla: 2.5.28 JBZoo: 2.1.5 Pro