Новости Joomla

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

👩‍💻 20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет. Вокруг неё сложилось большое интернациональное русскоязычное сообщество. На сайте нашего сообщества и на Хабре к юбилею были собраны интервью с его видными представителями. Сегодня мы читаем интервью с Ринатом Кажетовым (@rkazhet). Ринат - один из администраторов чата русскоязычного Joomla-сообщества, из Казахстана. Это человек, который всегда знает или найдёт нужную ссылку, пристально следит за новостями в мире Joomla, многое узнаёт первым и просто очень отзывчивый человек. Интервью с Ринатом взял Евгений Сивоконь.Читать интервью@joomlafeed#joomla #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 2803 Просмотров
*

Helikonst

  • Новичок
  • 2
  • 0 / 0
Уважаемые мэтры, помогите чайнику!

VM3, в корзине добавлено поле номера телефона phone_1 (в силу веских причин телефон в карточке покупателя хранить не могу, он должен заполняться при каждом заказе). Соответственно, в момент нажатия кнопки оформления заказа мне нужно произвести минимальную валидацию этого поля, проверить, что длина введенного значения составляет 11 знаков. Поле указано как обязательное, поэтому если оно пустое, VM выдает сообщение, что поле телефона не заполнено. Моя задача сделать так, чтобы такое же сообщение выдавалось и в случае, если введенное значение не содержит 11 знаков.

В файле /administrator/components/com_virtuemart/models/user.php отыскал следующий код, предполагаю, что валидацию нужно ставить где-то здесь:

if($field->required ){
            $required++;
            if(empty($data[$field->name])){
               if($lang->hasKey('COM_VIRTUEMART_MISSING_'.$field->name)){
                  $missingFields[] = vmText::_('COM_VIRTUEMART_MISSING_'.$field->name);
               } else {
                  $missingFields[] = vmText::sprintf('COM_VIRTUEMART_MISSING_VALUE_FOR_FIELD',$field->title );
               }

               $i++;
               $return = false;
            }
            else if($data[$field->name] == $field->default){
               $i++;
            } else {
               //vmdebug('Not filled by default '.$field->name,$field->default,$data[$field->name]);
               $filledNotByDefault++;
            }
         }

Но как именно выловить и проконтролировать поле номера телефона не знаю в силу  собственной безграмотности.

Может я вообще не туда копаю и все можно сделать как-то проще?
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
попробуйте маску
был плагин
индивидуальная помощь: @SetAlexx
*

Helikonst

  • Новичок
  • 2
  • 0 / 0
попробуйте маску
был плагин

Да, плагин для маски пробовал, конечно. Но дело в том, что заказ осуществляется на тачскрин-мониторе. Вместо клавиатуры используется плагин всплывающей клавиатуры, который привязан к этому же полю. Маска отлично работает при наборе с клавиатуры, но сбрасывается при нажатии любой клавиши экранного модуля. Подружить плагин маски и модуль экранной клавиатуры у меня тоже знаний не хватает.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

VirtueMart -- создание заказа

Автор mindguru

Ответов: 3
Просмотров: 2174
Последний ответ 02.11.2023, 13:59:05
от mindguru
Скачать - Плагин заказа на 1 странице

Автор gartes

Ответов: 171
Просмотров: 30077
Последний ответ 17.05.2023, 15:06:22
от mansonfaust
Отключить подтверждение заказа

Автор Nikoz

Ответов: 13
Просмотров: 11769
Последний ответ 20.01.2023, 13:48:07
от smls
Обязательные поля в плагине One Page Checkout

Автор sergspb

Ответов: 0
Просмотров: 2657
Последний ответ 18.11.2021, 13:59:59
от sergspb
Плагин отправки SMS - смена статусов заказа

Автор artlux

Ответов: 43
Просмотров: 13131
Последний ответ 20.03.2021, 14:03:13
от nnnata