Форум русской поддержки Joomla!® CMS
09.12.2016, 19:33:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Не работает чекбокс "Использовать для адреса 'Куда' данные адреса плательщика"

 (Прочитано 1218 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Plosky
Осваиваюсь на форуме
***

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

Сообщений: 110



« : 20.08.2014, 17:23:21 »

Он срабатывает только если выключить и снова включить галку (по умолчанию включена). Поэтому если просто заполнить все поля и подтвердив заказ, система ругается и выдает ошибку, мол не все поля заполнены.
Записан
Plosky
Осваиваюсь на форуме
***

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

Сообщений: 110



« Ответ #1 : 21.08.2014, 09:14:54 »

Никто не знает? Может так понятнее:



сайт: 7vitamin.ru
« Последнее редактирование: 21.08.2014, 10:11:05 от Plosky » Записан
Тренд
Осваиваюсь на форуме
***

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

Сообщений: 42


« Ответ #2 : 21.08.2014, 09:49:53 »

Так сложно сказать, надо код смотреть.
Предполагаю:
При формировании формы на чекбокс ставится параметр checked, а скрип принимающий форму ждет получения в формате checked=true.
Возможно еще и JS обрабатывает форму перед отправкой, возможно он и какие-то скрытые поля попутно обновляет, которые срабатывают, только если отменить чекбокс и потом заново его включить.
Можно много сделать догадок.
Я бы в получаемом скрипте сделал вывод в браузер принимаемых параметров и сравнил, в чем их отличие в обоих случаях. Отличия точно должны быть и задача потом их устранить.
Записан
Plosky
Осваиваюсь на форуме
***

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

Сообщений: 110



« Ответ #3 : 21.08.2014, 10:19:04 »

Тренд, вообще происходит следующий алгоритм: поля для адреса доставки копируются из основных полей (что на скрине выше) в момент ручного включения чекбокса! А по логике должны копироваться в момент подтверждения заказа. Как можно это исправить?
Для меня и не важны эти данные для доставки, они ведь все равно дублируются из контактной информации, просто система не дает пользователю оформить заказ.

Кстати, используется плагин "One Page Checkout". Все что он делает, это автоматически ставит галку "Использовать для адреса 'Куда' данные адреса плательщика" для того чтобы покупатель не заполнял одни и те же поля дважды.
« Последнее редактирование: 21.08.2014, 10:36:06 от Plosky » Записан
Plosky
Осваиваюсь на форуме
***

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

Сообщений: 110



« Ответ #4 : 21.08.2014, 10:52:09 »

РЕШЕНО! Проблема была в редактировании файла корзины, я в нем таблицу с выбранными товарами поставил вверх страницы, а поля для адресов ниже. Визуально все отлично сработало, не понятно только почему потянуло за собой такой баг. Видимо для алгоритма выполнения кода важна именно такая очередность.
Записан
Plosky
Осваиваюсь на форуме
***

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

Сообщений: 110



« Ответ #5 : 22.08.2014, 11:30:51 »

Все же проблема актуальна. При заполнении всех полей и подтвердив заказ, система ругается, что не заполнено поле телефон! Хотя оно заполнено. И в настройках "Поля, заполняемые пользователями" убрал чекбокс "Показать при выборе доставки" для телефона - не помогло. В чем может быть дело?

Плюс еще проблема в том, что эти скрытые поля использующиеся для адреса доставки мешают работе, например, я решил оформить еще один заказ, но указав при этом другую контактную информацию и после нажатия подтвердить, новый заказ формируется со старыми данными из предыдущего заказа! Видимо они берутся из этих скрытых полей. Помогите решить проблему.
« Последнее редактирование: 22.08.2014, 11:38:56 от Plosky » Записан
Plosky
Осваиваюсь на форуме
***

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

Сообщений: 110



« Ответ #6 : 25.08.2014, 17:02:53 »

Решено! Cheesy drink

Решение:
открываем файл /ваш шаблон/html/com_virtuemart/cart/defaut.php

ищем в начале файла код:
JHtml::_('behavior.formvalidation');
$document = &JFactory::getDocument();
$document->addScriptDeclaration("
   jQuery(document).ready(function($) {
      $('div#full-tos').hide();
      $('span.terms-of-service').click( function(){
         //$.facebox({ span: '#full-tos' });

вставляем после него следующий код:
   $('.billto-shipto input[type=\"text\"]').change(function(){ update_form(); });

Сохраняем, закрываем. Теперь скрытые поля для доставки будут брать информацию из основных полей при каждом изменении формы. Соответственно эта заплатка решает следующие проблемы:
  • Цитировать
    после заполнения всех полей и нажатия на кнопку «оформить заказ», перекидывает на страницу «Ваши данные» где опять нужно заполнить поля и только тогда оформлять заказ.
  • Цитировать
    эти скрытые поля использующиеся для адреса доставки мешают работе, например, я решил оформить еще один заказ, но указав при этом другую контактную информацию и после нажатия подтвердить, новый заказ формируется со старыми данными из предыдущего заказа! Видимо они берутся из этих скрытых полей.

Но даже после этой заплатки, система все равно ругалась, что не заполнено поле телефон, хотя оно заполнено. Решил проблему так:
Не понял алгоритма, но суть в том, что VirtueMart почему-то ругается на некоторые поля, поле для Телефона в том числе. Экспериментальным путем выявил поле, на которое система не ругалась (одно из полей для адреса) переименовал его в "телефон" и все. Wink
Записан
kampotix
Новичок
*

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

Сообщений: 3


« Ответ #7 : 19.01.2016, 02:30:12 »

Это поле Address Nickname
Спасибо огромное
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | 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