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

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

Как сделать необязательным поле e-mail?

 (Прочитано 745 раз)
0 Пользователей и 1 Гость смотрят эту тему.
One
Давно я тут
****

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

Сообщений: 238


« : 27.11.2015, 01:17:31 »

Здравствуйте, подскажите как при оформлении заказа сделать необязательным поле e-mail?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #1 : 27.11.2015, 03:03:52 »

Опции такой в VirtueMart нет. Нужно javascript-ом вставлять какую нибудь рыбу.. )) типа xx@xxx.xx это при условии что заказ может оформить не зарегеный пользователь..
к примеру как здесь.vivalavita.com.ua
Но поле емайл там все равно обязательное.
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #2 : 26.12.2015, 15:53:37 »

А если кто-то будет вводить e-mail?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #3 : 04.01.2016, 09:57:49 »

Цитировать
А если кто-то будет вводить e-mail?
)) Ну значит перед тем как заполнить значение в поле емайл нужно проверить его на содержание. И если оно действительно пустое то поставить xx@xxx.xx,
а если значение есть (то есть покупатель все же ввел свой емайл ) тогда оставляем как есть
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #4 : 06.02.2016, 00:27:17 »

)) Ну значит перед тем как заполнить значение в поле емайл нужно проверить его на содержание. И если оно действительно пустое то поставить xx@xxx.xx,
а если значение есть (то есть покупатель все же ввел свой емайл ) тогда оставляем как есть

А можете подсказать как это сделать?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #5 : 15.02.2016, 18:19:26 »

Подскажу...
Нужно на кнопку повесить такой обработчик.
Код:
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]').val()
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});

Где то так
#confirmbtn_button - ID Кнопки регистрации
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #6 : 13.03.2016, 01:59:16 »

Если у меня one page checkout, мне надо кнопку искать в файлах этого расширения или в файлах VirtueMart? Если знаете, в каком конкретно файле искать, подскажите, пожалуйста.
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #7 : 13.03.2016, 03:30:16 »

Для того, чтобы сделать поле e-mail необязательным ищем файл onepage.unlogged.tpl, у меня он был по адресу

Цитировать
   /public_html/components/com_onepage/themes/название шаблона

После чего находим вот этот код
Код:
<button style="right: 0; top:0;" id="confirmbtn_button" type="submit" autocomplete="off" <?php echo $op_onclick ?>  ><?php echo OPCLang::_('COM_VIRTUEMART_ORDER_CONFIRM_MNU')?></button>

И вместо него

Код:
<?php echo $op_onclick ?>

Добавляем

Код:
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]').val()
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});

Ликуем)
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #8 : 13.03.2016, 03:31:58 »

Код:
gartes
Огромное Вам спасибо
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #9 : 14.03.2016, 15:46:24 »

Тут немного неправильно
Код:
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]').val()
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});
var eEl = $('[name*="email"]').val() заменить на var eEl = $('[name*="email"]') (без .val())

И вот еще ...
<?php echo $op_onclick ?> не в место этого ...
А ниже
<script> .... тут код ...</script>
скорее всего что тут валидаторы формы стоят. или json sender.
В общем как то так.
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #10 : 28.03.2016, 01:08:13 »

Тут немного неправильно
Код:
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]').val()
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});
var eEl = $('[name*="email"]').val() заменить на var eEl = $('[name*="email"]') (без .val())

И вот еще ...
<?php echo $op_onclick ?> не в место этого ...
А ниже
<script> .... тут код ...</script>
скорее всего что тут валидаторы формы стоят. или json sender.
В общем как то так.
Ниже? Сразу после этого <?php echo $op_onclick ?> ?

То есть надо дописать <script>, сам код
Код:
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]').val()
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});
И закрытие скрипта </script>. Так?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #11 : 28.03.2016, 07:56:08 »

Код:
<button style="right: 0; top:0;" id="confirmbtn_button" type="submit" autocomplete="off" >
           
          <?php echo OPCLang::_('COM_VIRTUEMART_ORDER_CONFIRM_MNU')?>

</button>

<script>
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]')
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});

</script>

Вот так.!
« Последнее редактирование: 28.03.2016, 08:02:07 от gartes » Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #12 : 07.04.2016, 09:38:34 »

Есть один момент, подтверждение заказа происходит медленно, при нажатии на кнопку "Подтвердить" очень долго грузит, до 10 сек. Как ускорить этот процесс? Может быть как-то убрать процесс проверки заполнения полей?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #13 : 07.04.2016, 09:57:12 »

Цитировать
Может быть как-то убрать процесс проверки заполнения полей?
Ну вполне возможно... Если конечно у вас полей для проверки около 10 тысяч, то да..... laugh

Это может быть что какой то плагин тупит. Особенно те которые в папке systems валяются.
Скорее всего что это как раз один плагин может такое творить..

А в обще то что бы что то сказать по этому поводу нужно как минимум реж. отладки включить.. Чтоб не гадать.. 

Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #14 : 07.04.2016, 19:41:46 »

При включении режима отладки, страница не загружается, просто белый экран.
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #15 : 07.04.2016, 19:43:53 »

Через FireBug возможно это сделать?
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #16 : 07.04.2016, 20:03:00 »

Можете помочь решить проблему?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #17 : 07.04.2016, 20:15:42 »

Цитировать
При включении режима отладки, страница не загружается, просто белый экран.
Ну тогда отрубите все плагины. И запускайте в режиме отладки.
Потом по 1 включайте и проверяйте ...
На том на котором молоко появиться там и копать нужно.
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #18 : 07.04.2016, 20:16:59 »

Ну тогда отрубите все плагины. И запускайте в режиме отладки.
Потом по 1 включайте и проверяйте ...
На том на котором молоко появиться там и копать нужно.

На локалхосте это можно делать?
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #19 : 07.04.2016, 22:20:57 »

)) Да конечно.
Записан
One
Давно я тут
****

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

Сообщений: 238


« Ответ #20 : 23.04.2016, 18:34:24 »

Это может быть что какой то плагин тупит. Особенно те которые в папке systems валяются.

Вы были правы. Тормоза из-за плагина BIT VirtueMart Product Badges, он выводит картинки скидка, хит и т.д. Хотелось бы не выключать этот плагин, но на пока, это необходимо. Что можно сделать, чтобы этот плагин не тормозил так сильно подтверждение заказа? Тормоза иногда доходят до 30 секунд.
Записан
gartes
Живу я здесь
******

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

Сообщений: 826


Е = mс²


« Ответ #21 : 25.04.2016, 23:34:52 »

Цитировать
он выводит картинки скидка, хит и т.д
  Grin
Отрубите его а такие картинки можно кастомарными полями выводить или в самом шаблоне проверять. ))
Короче не нужен он вам. ))
Записан
Socha
Осваиваюсь на форуме
***

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

Сообщений: 30


« Ответ #22 : 01.06.2016, 15:25:44 »

Вот так.!
gartes, подскажите пожалуйста, почему у меня не работает?
Joomla! 3.5.1 + VirtueMart 3.0.16 + One Page Checkout

Нашел файл отвечающий за вывод кнопки "оформить заказ" и добавил туда скрипт. Получилось вот так:
Код:
<?php if ($BUTTONS->SHOW_CONFIRM_BUTTON) { ?>
<input type="submit" class="text_button checkout_button" id="confirmbtn_button" name="bypv_submit_confirm" value="ОФОРМИТЬ ЗАКАЗ" />
<?php } ?>

<script>
$('#confirmbtn_button').on('click', function  (){
var eEl = $('[name*="email"]')
if(!eEl.val()){
var tel = $('[name*="phone"]').val()
eEl.val('no_reg_'+tel+'@xxx.xx')
} // end if
});

</script>
id="confirmbtn_button" это уже я прибавил к input т.к. он был без id
При нажатии на кнопку, пишет "Не удалось зарегистрировать пользователя: Пожалуйста, укажите ваше имя."
Я так понимаю скрипт не срабатывает, а почему не понимаю...
Спасибо.
« Последнее редактирование: 01.06.2016, 15:29:31 от Socha » Записан
Socha
Осваиваюсь на форуме
***

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

Сообщений: 30


« Ответ #23 : 01.06.2016, 15:37:53 »

подскажите пожалуйста, почему у меня не работает?

Кажется понял почему ))
Я пытаюсь в обязательное поле "name" подставить данные из поля "email"
тем самым сделав поле "отображаемое имя" заполняемым по умолчанию...

А этот скрипт не про это ((

Жаль я скрипты писать не умею...
Подскажите как он должен выглядеть?
Задача такая - убрать поле "второе имя" оно же "отображаемое имя" при регистрации пользователя в VirtueMart
А так как это поле обязательно для регистрации - хочу чтобы туда подставлялся указанный email
Записан
Socha
Осваиваюсь на форуме
***

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

Сообщений: 30


« Ответ #24 : 02.06.2016, 14:49:45 »

убрать поле "второе имя" оно же "отображаемое имя" при регистрации пользователя в VirtueMart

Неужели ни кто не знает как это делается в VirtueMart3?
Записан
Страниц: [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