Здравствуйте. Ждал-ждал возможности редактирования курса валют из админки, но сегодня решил что на старых магазинах обновлять компонент 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












