Перейти к содержимому


Нормальный курс в "Настройках валют"


  • Вы не можете ответить в тему
В теме одно сообщение

#1 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 22 January 2015 - 08:54 PM

Задолбало меня выставлять в настройках валют "обратный" курс к реальному.
Т.е. когда основная рабочая валюта рубли (или гривны для Украины) и у нее выставлен единичный курс, то курс доллара и евро приходится выставлять не впрямую как он есть - скажем, 64 рубля за доллар и 75руб за евро, а обратный - 0.015625 и 0.013333.

Решение оказалось простым. При выводе таблицы валют поле currency_value инвертируем (1/currency_value), а перед сохранением инвертируем еще раз. При этом в админке мы видим и вводим нормальные привычные цифры курса, а для всего остального shopCMS ничего не меняется.

Конкретика:

в файле conf_currencies.php

1. строку


$val["curr_value"] = (float)$val["curr_value"];


меняем на


# BEGIN CurrencyInversion
#$val["curr_value"] = (float)$val["curr_value"];
$val["curr_value"] = 1/(float)$val["curr_value"];
# END CurrencyInversion


2. строку


$_POST["curr_new_value"],


меняем на


# BEGIN CurrencyInversion
#$_POST["curr_new_value"],
1/(float)$_POST["curr_new_value"],
# END CurrencyInversion


3. перед строкой


$smarty->assign("currencies", $currencies);


вставляем


# BEGIN CurrencyInversion
foreach ($currencies as $key => $val) $currencies[$key]['currency_value'] = round(1/$val['currency_value'],3);
# END CurrencyInversion

  • 1
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#2 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 23 January 2015 - 01:12 PM

update. Чуть поправил.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)