Перейти к содержанию
UTM.SPACE community

Xml Банка Израиля


Гость Direct

Рекомендуемые сообщения

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

Ссылка на комментарий
Поделиться на другие сайты

В папке models создать файл bankisrael.class.php (Create a file bankisrael.class.php in the folder models.)

<?php
/**
* @author Darang
* @date 21-March-2011
* @copyright (c)2011 JExt.biz
*/

// no direct access
defined ( '_JEXEC' ) or die ( 'Restricted access' );

/**
* Official exchange rates of the bank of Israel
*/
class currency_data_bankisrael extends currency_data {

function __construct() {
parent::__construct ();
$this->url = "http://www.bankisrael.gov.il/currency.xml";
$this->bank_name = "Банк Израиля";
$this->bank_url = "http://www.bankisrael.gov.il";
$this->currency_name = " ";
$this->before_flag = FALSE;
}

function get_array($xml, $day = '', $replace_currency_array) {

// Handle no data received error
if (! isset ( $xml->document->CURRENCY )) {
$error ['error'] = 1;
return $error;
}

// Save currencies' rates in an associative array indexed by currency 3 char code
$rates = array (); // array to store currencies exchange rates
$rates ['date'] = $xml->document->LAST_UPDATE [0]->data ();
$data = $xml->document->CURRENCY;

foreach ( $data as $dt ) {
$code = $dt->CURRENCYCODE [0]->data ();
// Store data for selected by user currencies only, if they are set
if (empty ( $this->currencies ) || in_array ( $code, $this->currencies )) {
$rates ['currency'] [$code] ['scale'] = $dt->UNIT [0]->data (); // units
// Set currency name (array with replacement rules will be searched for the ISO code)
$rates ['currency'] [$code] ['name'] = parent::replace_currency_name ( $dt->NAME [0]->data (), $code, $replace_currency_array );
$rates ['currency'] [$code] ['rate'] = $dt->RATE [0]->data (); // exchange rate
$rates ['currency'] [$code] ['change'] = $dt->CHANGE [0]->data (); // exchange rate
}
}

// Save additional info (only one time)
if ($day == 'today' || $this->before_flag == FALSE) {
$rates ['info'] = array ("bank_name" => $this->bank_name, "bank_url" => $this->bank_url, "currency_name" => $this->currency_name );
}

return $rates;
}

}

в mod_jextcurrency.xml в секцию source_class добавить (add code to section source_class in mod_jextcurrency.xml)

<option value="bankisrael">MOD_JEXTCURRENCY_SOURCE_OPTION_BANKISRAEL</option>

Ссылка на комментарий
Поделиться на другие сайты

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

Еще раз спасиб.

Ссылка на комментарий
Поделиться на другие сайты

Вот ток заметил, раз через раз выскакивает

XML Parsing Error at 10:8. Error 76: Mismatched tag

, а так все работает как часы. Обновишь страницу надпись пропадает, где может быть проблема?

Ссылка на комментарий
Поделиться на другие сайты

Почитайте здесь или в Google.

Это скорее всего ошибка в xml файле модуля, возможно, когда вносили изменения какой то символ лишний добавили или еще что-то.

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

А у меня в таком виде уже недели две стоит КЭШ на 60 стандартно выставлен курсы прекрасно обновляются кэш стирал, а все равно полную таблицу показывает.

Ссылка на комментарий
Поделиться на другие сайты

на сервере кстати safe mod off это не может влиять?)

а если мешает где исправить?

Нашёл ошибку, переменную одну заглавными буквами написал. Подправил, смотрите выше.

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Добрый день. Не получилось сделать все как надо. После установки пишет такую ошибку

"Warning: Invalid argument supplied for foreach() in /modules/mod_jextcurrency/tmpl/default.php on line 23"

Буду признателен за помощь

Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...

Здравствуйте!

Буду признательна, если поможете настроить вывод определенного количества валют.

У меня Joomla! 1.5.23 Stable, Jext Currency v.1.3.0. Прописала в поле Currencies: USD,EUR,RUB,UAH

Чистила кеш, но все равно выводится полный список валют.

И как русифицировать модуль?

Спасибо. Раиса

Ссылка на комментарий
Поделиться на другие сайты

попробуйте отключить кеширование в настройках модуля и посмотреть, затем опять включите.

Валюты из вашего списка будут выводиться только usd, eur для других этот банк не даёт котировок

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...