LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
12.02.2012, 14:32:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: 1 2 3 4 5 [6] 7 8 9 10 11   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Цены на товары в Virtuemart 1.1  (Прочитано 94883 раз)
0 Пользователей и 1 Гость смотрят эту тему.
skanv
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« : 30.01.2008, 03:43:46 »

В настройках магазина указана валюта - Рубли. В админки у товаров цена отображается в рублях. А на сайте все цены представлены в у.е.

Как сделать так чтобы цены на сайте отображались в рублях?
Записан
 
DWolf
Осваиваюсь на форуме
***

Репутация: +19/-0
Offline Offline

Пол: Мужской
Сообщений: 104


Приму в дар инвайт на habrahabr.ru! )


« Ответ #151 : 18.06.2009, 14:28:20 »

Смотрю под суперадминистратором.
В компоненте - admin / (Super Administrator)
К группе нет привязанного продавца...
Валюта указыается в описании продавца???
Попробуйте приявзять к группе продавца и в описании продавца укажите валюту.
Кстати продавца сами заводили или по умолчанию стоит?
Записан
ipdesign
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 30


« Ответ #152 : 19.06.2009, 20:50:49 »

всё так делал - не получается(((
Записан
ipdesign
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 30


« Ответ #153 : 20.06.2009, 03:37:12 »

2 tsesl
Подскажи пожалуйста, может можно в файле administrator/components/com_VirtueMart/ps_product_discount.php
сделать обычное деление\умножение на переменную курса $res['introtext'], как в файле ConvertHARD.php ?

или я не там копаю? уже всё перепробовал, но не могу я сделать чтобы скидку можно было добавить в долларах...
Записан
DWolf
Осваиваюсь на форуме
***

Репутация: +19/-0
Offline Offline

Пол: Мужской
Сообщений: 104


Приму в дар инвайт на habrahabr.ru! )


« Ответ #154 : 22.06.2009, 16:21:28 »

всё так делал - не получается(((
Продавца своего делали или по умолчанию брали?
Там в конфиге прописано, что по умолчанию используется по умолчанию.
Я правил в каком-то файле.
Записан
ipdesign
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 30


« Ответ #155 : 22.06.2009, 16:34:43 »

Продавца завёл по Вашему совету. Никаких изменений не последовало, т.е. скидка так и устанавливается как и при дефолтном продавце...
Записан
DWolf
Осваиваюсь на форуме
***

Репутация: +19/-0
Offline Offline

Пол: Мужской
Сообщений: 104


Приму в дар инвайт на habrahabr.ru! )


« Ответ #156 : 23.06.2009, 09:41:04 »

Продавца завёл по Вашему совету. Никаких изменений не последовало, т.е. скидка так и устанавливается как и при дефолтном продавце...

В файле
\administrator\components\com_VirtueMart\global.php

измените переменную - $default_vendor
поставьте идентификатор своего продавца, там по умолчанию стоит у скрытого!
Отпишитесь, что получиться. Ответить смогу вечером, уехал на повышение квалификации.
Записан
eva_braun
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 8



« Ответ #157 : 02.07.2009, 23:48:07 »

Скажите кто нибудь, где находится файл в котором можно слово "Цена" поменять на "Цена за м.кв."?
У меня стандартно выводилось Цена за шт.(упак)., но когда убераю (упак) исчезает и "за шт.", остается одна Цена:..... вот её та мне и надо поменять.... Smiley
Версия жумлы и VirtueMartа последние.
Записан
eva_braun
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 8



« Ответ #158 : 03.07.2009, 10:32:10 »

Нда точно утро вечера мудренее, нашла сама где менять Grin
Записан
ArkadiGL
Гость
« Ответ #159 : 13.07.2009, 10:44:54 »

Конвертер с жестко прописанными курсами...

  • Залить файл в administrator/components/com_VirtueMart/classes/currency/ на сервере


Подскажите пожалуйста, а как "залить" отредактированный convertHARD.php с диска C: в
administrator/components/com_VirtueMart/classes/currency/ ?
Записан
tsesl
Завсегдатай
*****

Репутация: +82/-0
Offline Offline

Сообщений: 419


Терпение и труд всё перетрут?


« Ответ #160 : 13.07.2009, 10:50:34 »

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

зы. А вообще заливают кому как удобно: кто ложками, кто стаканами. Есть любители сразу ведрами - но это уже экстрим Cool
Записан
ArkadiGL
Гость
« Ответ #161 : 13.07.2009, 13:22:10 »

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

зы. А вообще заливают кому как удобно: кто ложками, кто стаканами. Есть любители сразу ведрами - но это уже экстрим Cool

Ага. Тупо по FTP взять и записать в указанный каталог.
Не через Жумлу, а на уровне файловой системы.
Записан
tsesl
Завсегдатай
*****

Репутация: +82/-0
Offline Offline

Сообщений: 419


Терпение и труд всё перетрут?


« Ответ #162 : 13.07.2009, 13:28:19 »

Если это вопросы, то ответ "Тупо да ))". Если констатация, то не понял цель ((
Записан
ArkadiGL
Гость
« Ответ #163 : 13.07.2009, 14:34:44 »

Благодарю! Засомневался, что всё так просто.
Записан
tsesl
Завсегдатай
*****

Репутация: +82/-0
Offline Offline

Сообщений: 419


Терпение и труд всё перетрут?


« Ответ #164 : 13.07.2009, 14:41:06 »

не забываем еще в админке потом указать каким модулем будем валюты конвертить, а так - удачи!
Записан
terr
Завсегдатай
*****

Репутация: +10/-4
Offline Offline

Пол: Мужской
Сообщений: 719


Ученик html-я


« Ответ #165 : 19.08.2009, 15:41:27 »

 Позвоните, чтобы уточнить цену на надписи ссылка на почту цена не добавляеться не ексель файлом не простым редактором товара что делать?

цена забивается щнавчением 12331.0руб раньше так небыло что я напутал)
« Последнее редактирование: 20.08.2009, 13:25:13 от terr » Записан
Волька
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 36



« Ответ #166 : 20.08.2009, 18:14:52 »

В этой теме обсуждается конвертация для VM 1.1
А для VM 1.0 есть решение?
 !

Ранее поднималась тема для VM 1.0 о конвертации цены, выраженной в базе магазина в одной валюте, в основную валюту при выводе для покупателя - http://joomlaforum.ru/index.php/topic,5527.0.html.

Поьзователь XDX выложил хороший хак для решения этого вопроса.

! Но выскочил недочёт.
Если в списке свойств добавить разные цены в зависимости от свойства, то при покупке цена указывается в рублях без пересчёта по курсу, т.е. в этом случае получается, что курс = 1.  

Пример: Базовую цену указываем в ЕВРО (пусть будет "5"). В списке дополнительный свойств указываем для синего цвета "7". Курс ЕВРО вводим 45,00.
При совершении покупки покупатель видит пересчитанную в рубли базовую цену (225,00 руб.), но если хочет купить товар синего цвета, то цена указана неправильно - 7 руб. (не умножается на курс).

Явно что-то недописано в коде хака... но я в php полный ноль, да и вообще не программист.

Как быть? Какой выход найти?
Предложение перейти с VM 1.0 на VM 1.1 не подойдёт   Wink
« Последнее редактирование: 20.08.2009, 21:05:14 от Волька » Записан
legenda666
Осваиваюсь на форуме
***

Репутация: +0/-2
Offline Offline

Сообщений: 65


« Ответ #167 : 04.09.2009, 14:41:52 »

попробовал по методу OlegKor настроить магазин на 3 валюты на все сделал, на денвере все отлично роботало, я там прописал путь к файлу http://www.test1.ru/eurofxref-daily.xml а вот на сайте не работает, а залил файл eurofxref-daily.xml там в папку с Joomla, прописал путь http://avtoshaman.org.ua/eurofxref-daily.xml / только в этом и разница..что не так?
Записан
slon_alex
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 6


« Ответ #168 : 09.09.2009, 16:34:03 »

Всем привет.  новичку пожалуйста, очень нужно
Стоят Joomla 1.5.14 + VM 1.1.3

Ситуация. Везде выбрана валюта RUB: в магазине, в продавце, в товаре. В магазине символ валюты - руб. - и
в списке допустимых валют выбран российский рубль.
Но показывается при таком расскладе стоимость в евро и показывать в рублях не желает.
После включаем модуль mod_virtuemart_currencies сохраняем админку. Заходим на сайт клацаем по кнопке выбор валюты
и ... вуаля - валюта рубль, но в формате "10000RUB", а хотелось бы "10 000 руб." И при выборе товара в корзину появляется надпись
"The Currency you had selected (RUB) is not accepted for Checkout"

Теперь выключаем модуль mod_virtuemart_currencies из админки и в информации о магазине, в символ валюты ставим "руб" (без кавычек), убиваем кэш и опять евро причем просто цифра.

В чем собственно фокус?
Хочеться - цены в рублях в формате 10 000,00 руб. - как так сделать?
Записан
tsesl
Завсегдатай
*****

Репутация: +82/-0
Offline Offline

Сообщений: 419


Терпение и труд всё перетрут?


« Ответ #169 : 09.09.2009, 16:38:10 »

проверь, выбрана ли страна в информации о магазине!
Записан
slon_alex
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 6


« Ответ #170 : 09.09.2009, 16:45:25 »

tsesl, спасибо помогло. бился над этой проблемой 2 дня Azn))
Записан
tallib
Осваиваюсь на форуме
***

Репутация: +18/-0
Offline Offline

Пол: Мужской
Сообщений: 196



« Ответ #171 : 14.09.2009, 17:55:43 »

Всем привет. Подскажите плз как решить такую проблему.
В вм есть товары в доларах и евро. как сделать чтоб отображалось в той валюте в какой указано в товаре, а то показует в той валюте какая в настройках магазина.(в даном случае USD)
PS vm 1.1.3
Записан
legenda666
Осваиваюсь на форуме
***

Репутация: +0/-2
Offline Offline

Сообщений: 65


« Ответ #172 : 18.09.2009, 19:45:39 »

Есть проблемка..Суть в том, что выбивает ошибку 403( не видит файла XML с курсом валют) и если перезаливаю файл daily в кеше, то проходит, но ничего не делая через 2 дня опять возникает....Может права надо какие то поставить на нее? делал по методу как на 3 странице этой темы...
Записан
legenda666
Осваиваюсь на форуме
***

Репутация: +0/-2
Offline Offline

Сообщений: 65


« Ответ #173 : 18.09.2009, 19:50:00 »

если файл daily в кеше удаляю, то ошибка тоже 403... я его переделал на 3 валюты под свой...но какие права доступа на него поставить, что б он не мутировал?
Записан
Dimchik
Осваиваюсь на форуме
***

Репутация: +6/-0
Offline Offline

Сообщений: 45


« Ответ #174 : 24.09.2009, 15:20:47 »

Спасибо всем за развитие этой темы  Cheesy

Кому интересно - сделал, свой вариант редактируемый из админки.... Вроде работает.
Значение курса - редактируются, в списке валют в самом VirtueMart, я добавил для этого отдельное поле.
Значения курсов - выставляем относительно валюты по умолчанию.

Что бы править курс из админки делаем след.:

Идем в PHPmyadmin выбираем таблицу jos_vm_currency добавляем поле типа float, значение длины 12,4, с названием currency_change_val

Далее открываем файл - administrator\components\com_virtuemart\html\admin.curr_form.php

находим там:

    <tr>
      <td width="24%" align="right"><?php echo $VM_LANG->_('PHPSHOP_CURRENCY_LIST_CODE')?>:</td>
      <td width="76%">
        <input type="text" class="inputbox" name="currency_code" value="<?php $db->sp("currency_code")?>" />
      </td>
    </tr>

после этих строк вставляем:

  <tr>
      <td width="24%" align="right">Курс</td>
      <td width="76%">
        <input type="text" class="inputbox" name="currency_change_val" value="<?php $db->sp("currency_change_val")?>" />
      </td>
    </tr>

Открываем файл administrator\components\com_virtuemart\classes\ps_currency.php

Находим строки:

   if (!$d["currency_name"]) {
         $GLOBALS['vmLogger']->err( $VM_LANG->_('VM_CURRENCY_ERR_NAME') );
         return False;
      }
      if (!$d["currency_code"]) {
         $GLOBALS['vmLogger']->err( $VM_LANG->_('VM_CURRENCY_ERR_CODE') );
         return False;
      }

после них добавляем: (в двух места, в функциях validate_add($d) и validate_update($d))

   if (!$d["currency_change_val"]) {
         $GLOBALS['vmLogger']->err( $VM_LANG->_('VM_CURRENCY_ERR_CODE') );
         return False;
      }

Снова ищем:
   
$fields = array( 'currency_name' => vmGet($d, 'currency_name' ),
               'currency_code' => vmGet($d, 'currency_code' )
      );

Заменяем на (так же в двух местах в функциях add(&$d) и update(&$d)):

   $fields = array( 'currency_name' => vmGet($d, 'currency_name' ),
               'currency_code' => vmGet($d, 'currency_code' ),'currency_change_val' => vmGet($d, 'currency_change_val'
      )
      );
И на конец, открываем файл - administrator\components\com_virtuemart\classes\currency\convertECB.php

После этих строк:

   for ($i = 0; $i < $currency_list->getLength(); $i++) {
               $currNode =& $currency_list->item($i);
               $currency[$currNode->getAttribute("currency")] = $currNode->getAttribute("rate");
               unset( $currNode );
            }

Вставляем:

$db      = & JFactory::getDBO();
            $currency = array();
$db->setQuery("SELECT * FROM #__vm_currency ");
$left_items_list=$db->LoadObjectList();
foreach($left_items_list as $left_item)
{
$currency[$left_item->currency_code] = $left_item->currency_change_val;
}

Вот... вроде все работает. Кому впадло делать это ручками - распаковуем архив с файлами и заменяем ими оригиналы. Только не забудьте добавить поле в базу.

Будут вопросы, можете стучатся 464-131-330

P.S. Решение - временное, в ближайшем будущем, напишу отдельный компонент под это дело   

* valuti.rar (5.17 Кб - загружено 299 раз.)
« Последнее редактирование: 24.09.2009, 15:28:47 от Dimchik » Записан
ruslannnn
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #175 : 28.09.2009, 17:54:32 »

Заработало ). Ещё бы лишнее повыбрасывать что бы не пересчитивало раз цену с XML а другой раз с базы sql.
А ещё лучше Курсы валют вписать в поставщиков, что бы для каждого поставщика товара был свой курс.
Не сложно но если php ненаеш почти не реально )

Dimchik +
Записан
ruslannnn
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #176 : 29.09.2009, 17:14:40 »

А кто знает как сделать что бы на Гривны писало грн. ( а не UAH) и на Долары $ (а не USD).
Спасибо за ответы )
Записан
pgor
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« Ответ #177 : 18.10.2009, 23:07:16 »

Здравствуйте. Пробую  Вашу доработку. Но есть вопросы. 1-  валюта по умолчаниюу меня гривна. Стоимость товара проставлено в долл. и евро. Если поставить курс больше единици (скажем по долл.- 8,00) то он перещетает  -  цена товара в долл./ на курс. тоесть если товар стоит 800$, а курс 8,00 грн за $, то он перещитает стоимость товара  800/8 = 100 грн., а это не так. А если поставить курс 1/8 то он  не хочет перещитывать. 2- название поля, где ставится курс записано ромбиками. Подскажите что делать, может я где-то ошибся. Спасибо
Записан
pgor
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« Ответ #178 : 18.10.2009, 23:16:27 »

Извените забыл написать. Если перещет делать покурсу меньше 1 - то получил сообщение Warning: Division by zero in Z:\home\pgor.ua\www\administrator\components\com_virtuemart\classes\currency\convertECB.php on line 158
и цена товара равно 0,00грн
Записан
igoryk
Давно я тут
****

Репутация: +8/-0
Offline Offline

Сообщений: 227


« Ответ #179 : 08.11.2009, 02:59:57 »

Вот нарыл -
По словам разработчиков, VirtueMart мультивалютен. На самом деле, вся мультивалютность сводится к конвертации из любой указанной в цене товара валюты в основную валюту интернет магазина. Работает это следующим образом: в настройках магазина указывается основная валюта (в моем случае, украинская гривна), заполняется справочник валют и в дальнейшем любую указанную в справочнике валюту можно использовать, то есть указывать в качестве валюты цены товара. В случае, если валюта используется, VirtueMart “на лету” преобразует ее в указанную основную валюту, даже не упоминая о том, что перевод выполнен. Для преобразования используется файл /administrator/components/com_virtuemart/classes/currency/convertECB.php, который получает данные о курсе валют из XML файла, ежедневно предоставляемого European Central Bank. Сам файл может быть найден здесь. После получения файла встроенный конвертер VirtueMart его кэширует и кладет в /cache/daily.xml и в дальнейшем курсы берет оттуда, обновляя его один раз в сутки.
Только тут есть, как всегда, грабли… ну не знает европейский центральный банк такой валюты как украинская гривна (UAH)  :-)

Следовательно, для того, чтобы модуль перевода работал у нас есть 3 пути:

    * Найти XML файл банка, который знает, что собственно такое есть украинская валюта. Такой файлик, например, можно найти здесь.
    * Использовать текущий механизм для установки курса валют из админки и не возиться со всевозможными экспортами-импортами.
    * Написать свой конвертер, в котором прописать курсы валют.

Столкнувшись в одном из проектов с этой проблемой, было принято решение сделать гибрид: используется встроенный механизм марта (лежит в файле convertECB.php), но берет данные он не из интернета, а из локального XML файла eurofxref-daily.xml, расположенного в корне сайта. Встроенный механизм VirtueMart кэширует его в /cache/daily.xml, который после каждого обновления основного файла необходимо удалять. Изменение курсов производится путем ручного исправления оригинального файла или из специально разработанного модуля админки Joomla. Модуль представляет собой набор PHP скриптов, не зарегистрированных никоим образом в Joomla,  а лежащих в отдельной папке в /administrator/components/<любая-папка>, которые вызываются нажатием на кнопку «Управление курсами валют» и открываются в диалоговом окне Highslide.
Разработанный модуль для управления курсами валют в Virtuemart

Разработанный модуль для управления курсами валют в Virtuemart

Реализовать такое решение можно следующим образом:

1.    Изменить файл – convertECB.php.
Главное изменить строки (привести к следующему виду):

Код:
var $document_address = 'http://<URL>/eurofxref-daily.xml';
var $info_address = 'http://<URL>/';

Файл лежит в /administrator/components/com_virtuemart/classes/currency/convertECB.php
Этим изменением мы заставляем VirtueMart брать данные из локального файла на нашем сервере.

2.    Скачать файл с валютами (ссылка в конце поста). Файл рассчитан на 3 валюты: гривны, доллары США и евро. В случае необходимости их будет не трудно добавить

3.    В файле /administrator/components/com_virtuemart/html/admin.curr_list.php после всего текста вставить:

Код:
<br /><br />
<table style="border:1px solid #e7e7e7; cursor:pointer;">
<tr>
<td style="background-color:#f9f9f9;"><img src="/administrator/images/
edit_currrate.png" /></td>
<td valign="middle" style="vertical-align:middle;background-color:
#f9f9f9;">
<a onclick="return hs.htmlExpand(this, { objectType: 'ajax',
headingText: 'Управление курсами валют'} )" href="/administrator/
components/<папка>/index.php" >Управление курсами валют</a>
</td>
</tr>
</table>

При этом в шаблон админки Joomla должен быть вставлен код, реализующий открытие Highslide окон, иначе нужный интерфейс будет открыт просто в том же окне, что есть некрасиво.

4.   Создать свою папку в /administrator/components/ и создать в ней следующие файлы: index.php, setrates.php, deltemp.php. Рабочее содержимое этих файлов будет приведено ниже. Файлы отвечают за отображение формы редактирования, сохранение данных и удаление временного закэшированного файла соответственно.

Index.php – форма редактирования курсов валют
setrates.php – скрипт установки введенных значений и очистки закешированного содержимого
deltemp.php – скрипт безусловной очистки кешированного содержимого

Ссылка на архив - http://depositfiles.com/files/dqvevlesj

PS - После недели тестирования решения на реальном инет-магазине, обнаружился следующий глюк: после первого изменения основной валюты инет-магазина в настройках VirtueMart, символьное обозначение валюты (напр., «грн.») перестает выводиться вообще Кроме того, цены округляются (хотя в настройках установлено отображать 2 знака после запятой)… Посколько инет-магазин уже работает, пришлось  решать эту задачу…
Форматирование даты выполняется в файле /administrator/components/com_virtuemart/classes/currency/class_currency_display.php
Не мучаясь лукаво, предлагаю следующее решение:
1. закомментировать строки с 259 по 445 (форматирование суммы и обработка отрицательных сумм по образцу, установленному в настройках);
2. В строке 447 вставить:

Код:
$res = round($nb,2);

3. Строку 455 привести к виду:

Код:
$res = $res." грн.";

После этих изменений все начинает работать правильно.
Записан
ПерС
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 4



« Ответ #180 : 08.11.2009, 18:27:45 »

...
После этих изменений все начинает работать правильно.

Подтверждаю!
Сделал у себя всё так, как написано.
Даже с моей начальной квалификацией - получилось!
Записан
Страниц: 1 2 3 4 5 [6] 7 8 9 10 11   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet