Страница 5 из 20

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Чт сен 28, 2017 12:05 am
Gelezako
Profd писал(а):Интересный модуль.
Ткните пожалуйста где найти инструкцию как ставить модули из репозитария ?
https://www.youtube.com/watch?v=wZSfGWj ... EdBGtX084E

Обновление:
- переделал криво работающее (делало дубли записи) автообновление курсов
- добавил ссылку на обучающее виде как настроить озвучивание курсов

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пт ноя 24, 2017 10:54 am
directman66
Может добавить курс криптовалют? Источников предостаточно.

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пт ноя 24, 2017 1:15 pm
Gelezako
не обещаю прям очень быстро, но в принципе можно, кидай ссылки

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Вс ноя 26, 2017 3:44 pm
directman66
я забираю через веэ переменные по формулам:

btc2usd
http://coingain.com/price/btc/rub
<div id="result-USD">\n <input type="text" value="(.+?)" class

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пн ноя 27, 2017 1:00 pm
Gelezako
вы имеете ввиду через раздел "веб переменные"? Попробовал вставить в поле "Шаблон поиска" ваш пример - "<div id="result-USD">\n <input type="text" value="(.+?)" class", но курс не выгребается

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Ср ноя 29, 2017 6:18 pm
Gelezako
обновление:
- добавлен курс НБУ
- добавлено отображение на странице модуля даты и время последнего обновления
- добавлено сохранение даты и времени обновления в объекты для проверки или озвучивания в ваших сценариях (необходимо что бы убедиться что система имеет не устаревшие курсы)

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пн дек 04, 2017 9:10 pm
nick7zmail
Установил модуль ради эксперимента...
1) Что этим хотели сказать?))
111.jpg
111.jpg (20.38 КБ) 6767 просмотров
2) Просьба добавить ЦБР (скрипты есть на форуме)
3) Ещё добавить бы выбор объекта хотя бы...У меня объект Rate занят под свойства плекса, и валюты повалили тоже в него...еле нашел)) И каким то образом в системе создалось 2 конфликтующих объекта.
4) Добавить обновление по событию HOURLY...у меня из-за того что создался метод объекта OnNewHour, перестал работать основной классовый метод....
Короче пришлось чуть ли не сразу же снести модуль, чтоб всё в норму пришло. И да...при удалении код из OnNewHour не удалился...пришлось вручную хвосты подчищать.

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пн дек 04, 2017 10:27 pm
Gelezako
nick7zmail писал(а):Установил модуль ради эксперимента...
1) Что этим хотели сказать?))
111.jpg
2) Просьба добавить ЦБР (скрипты есть на форуме)
3) Ещё добавить бы выбор объекта хотя бы...У меня объект Rate занят под свойства плекса, и валюты повалили тоже в него...еле нашел)) И каким то образом в системе создалось 2 конфликтующих объекта.
4) Добавить обновление по событию HOURLY...у меня из-за того что создался метод объекта OnNewHour, перестал работать основной классовый метод....
Короче пришлось чуть ли не сразу же снести модуль, чтоб всё в норму пришло. И да...при удалении код из OnNewHour не удалился...пришлось вручную хвосты подчищать.
Спасибо за фидбек.
1. В самом начале когда писал модуль кириллица нормально отображалась, но сейчас по какой-то причине не хочет. Я делал несколько экспериментов, но так и не понял почему появилась проблема с кодировкой.
2. Могу попробовать, только дайте плиз ссылочку
3. Хм, может есть смысл сделать сначала проверку не существует ли в и системе объект с таким именем? Хотя для меня до сих пор загадка как реально связан объект с классом и как так получается что я создаю объект в одном классе, а оказывается что значения могут попадать в свойства объекта совершенно другого класса :(
4.
nick7zmail писал(а):Добавить обновление по событию HOURLY
я как раз и делал обновление раз в час через метод ClockChime.onNewHour()
nick7zmail писал(а):у меня из-за того что создался метод объекта OnNewHour
а какой именно у вас метод создался? я не созданию вроде новых методов. Я вставлял код в существующий метод ClockChime.onNewHour()
nick7zmail писал(а):перестал работать основной классовый метод....
думаете этот из-за моей вставки?
nick7zmail писал(а):при удалении код из OnNewHour не удалился...пришлось вручную хвосты подчищать.
знаю об этой проблеме, но как удалять я так и не нашёл :(

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пн дек 04, 2017 10:44 pm
nick7zmail
Была раньше проблема (видимо так и не решена) - когда заполнены и классовый метод OnNewHour и метод объекта ClockChime.OnNewHour - один из них почему-то не хотел работать...
Решалось тем что весь код переносился в 1 место...я всё давным давно перенес в классовый, и удалил к фигам метод объекта ClockChime. Ваш модуль его "воскресил", и вписал туда код обновления =D.
Ну и собственно по-этому же снова перестал отрабатывать классовый (видимо так и не решена проблема =( )

В системе существует замечательное событие HOURLY которое совершается раз в час.
Модуль на него подписывается 1 строчкой в функции install

Код: Выделить всё

subscribeToEvent($this->name, 'HOURLY');
Чтобы отписаться при удалении в uninstall соответственно

Код: Выделить всё

unsubscribeFromEvent($this->name, 'HOURLY');
Ну и в основном модуле код, который вы запихиваете в OnNewHour

Код: Выделить всё

    function processSubscription($event_name, $details='') {
        if ($event_name=='HOURLY') {
            //тут ваш код, который будет выполняться ежечасно (из OnNewHour прямо можете скопировать)
        }
    }
Сразу решится 3 проблемы:
- засирание OnNewHour (когда там много всего - система туповато отрабатывает)
- не потребуется вообще никакого кода в методах -> пользователь их не сломает
- при удалении модуля он сам отпишется от события, следов не останется.

По поводу объектов/методов - система (из панели по крайней мере вручную) запрещает создавать одинаковые объекты. Так что такого не должно быть...
Предлагаю, как минимум что нить по-оригинальнее для объекта избрать. ExchangeRate_info к примеру...такой объект врят ли у кого в системе найдется до вашего модуля)))

Цбр - тему искать лень, вот скрипт, который в полне себе работает.
SPOILERSPOILER_SHOW

Код: Выделить всё

$file = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".date("d/m/Y"));
if (!$file){
DebMes("CBR error");
return;
}

// USD
$xml = $file->xpath("//Valute[@ID='R01235']");
$valute = strval($xml[0]->Value);
$this->setProperty('USD', round(str_replace(",",".",$valute)*100)/100);

// EUR
$xml = $file->xpath("//Valute[@ID='R01239']");
$valute = strval($xml[0]->Value);
$this->setProperty('EUR', round(str_replace(",",".",$valute)*100)/100);

$this->setProperty("uptime",date("d m Y H:i:s",time()));

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Добавлено: Пн дек 04, 2017 11:42 pm
Gelezako
спасибо, попробую на HOURLY сейчас переделать.
А на счёт Цбр, я же его и использую, у вас разве не отображается раздел "Банк России"?