Новости Joomla

Вышли релизы безопасности Joomla 6.1.3 и Joomla 5.4.8

Релиз безопасности Joomla 6.1.3 и Joomla 5.4.8

Проект Joomla! рад сообщить о выходе Joomla 6.1.3 и Joomla 5.4.8. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

S2pidsMan

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Здравствуйте.
Я добавил новые поля в pm_debit и соответственно их проверку и отправку:
paymentform.php -
Код
<?php 
/**
* @version      4.4.1 10.02.2014
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die('Restricted access');
?>
<table>
   <tr>
     <td width="200">
       <?php echo _JSHOP_ACCOUNT_NAME;?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][name]" id="params_pm_debit_name" value="<?php print $params['name']?>"/>
     </td>
   </tr>
  
    <tr>
     <td width="200">
       <?php echo "Юридический адрес";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][faddr]" id="params_pm_debit_faddr" value="<?php print $params['faddr']?>"/>
     </td>
   </tr>
  
   <tr>
     <td width="200">
       <?php echo "Фактический адрес";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][addr]" id="params_pm_debit_addr" value="<?php print $params['addr']?>"/>
     </td>
   </tr>
  
  
   <tr>
     <td width="200">
       <?php echo "ИНН/КПП";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][inn]" id="params_pm_debit_inn" value="<?php print $params['inn']?>"/>
     </td>
   </tr>
  
  
   <tr>
     <td width="200">
       <?php echo "ОКПО";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][okpo]" id="params_pm_debit_okpo" value="<?php print $params['okpo']?>"/>
     </td>
   </tr>
  
   <tr>
     <td width="200">
       <?php echo "Наименования банка";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][nazb]" id="params_pm_debit_nazb" value="<?php print $params['nazb']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "БИК";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][bik]" id="params_pm_debit_bik" value="<?php print $params['bik']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "Р/С";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][ras]" id="params_pm_debit_ras" value="<?php print $params['ras']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "К/С";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][ks]" id="params_pm_debit_ks" value="<?php print $params['ks']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "Ген. директор";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][gend]" id="params_pm_debit_gend" value="<?php print $params['gend']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "Телефон";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][tele]" id="params_pm_debit_tele" value="<?php print $params['tele']?>"/>
     </td>
   </tr>
</table>
<script type="text/javascript">
  function check_pm_debit(){
    var ar_focus=new Array();
    var error=0;
    unhighlightField('payment_form');
if (isEmpty($F_("params_pm_debit_name"))) {
        ar_focus[ar_focus.length]="params_pm_debit_name";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_addr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_addr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_faddr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_faddr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_inn"))) {
        ar_focus[ar_focus.length]="params_pm_debit_inn";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_okpo"))) {
        ar_focus[ar_focus.length]="params_pm_debit_okpo";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_nazbe"))) {
        ar_focus[ar_focus.length]="params_pm_debit_nazb";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ras"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ras";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ks"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ks";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_bik"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bik";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_gend"))) {
        ar_focus[ar_focus.length]="params_pm_debit_gend";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_tele"))) {
        ar_focus[ar_focus.length]="params_pm_debit_tele";
        error=1;
    }
    if (error){
        $_(ar_focus[0]).focus();
        for (var i=0; i<ar_focus.length; i++ ){
           highlightField(ar_focus[i]);
        }
        return false;
    }
    jQuery('#payment_form').submit();
  }
 </script>

pm_debit.php -
Код
<?php
/**
* @version      4.4.1 10.02.2014
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die('Restricted access');
/*
class pm_debit extends PaymentRoot{
   
    function showPaymentForm($params, $pmconfigs){
        if (!isset($params['params_pm_debit_name'])) $params['params_pm_debit_name'] = '';
        if (!isset($params['params_pm_debit_addr'])) $params['params_pm_debit_addr'] = '';
        if (!isset($params['params_pm_debit_inn'])) $params['params_pm_debit_inn'] = '';
        if (!isset($params['params_pm_debit_okpo'])) $params['params_pm_debit_okpo'] = '';
if (!isset($params['params_pm_debit_ras'])) $params['params_pm_debit_bik'] = '';
        if (!isset($params['params_pm_debit_ks'])) $params['params_pm_debit_ks'] = '';
        if (!isset($params['params_pm_debit_bik'])) $params['params_pm_debit_bik'] = '';

    include(dirname(__FILE__)."/paymentform.php");
    }

    function getDisplayNameParams(){
        var_dump($POST);

        $names = array('params_pm_debit_name' => _JSHOP_ACCOUNT_HOLDER, 'bank_iban' => _JSHOP_IBAN, 'bank_bic' => _JSHOP_BIC_BIC, 'bank' => _JSHOP_BANK );
        return $names;
    }
}*/



class pm_debit extends PaymentRoot{
   
    function showPaymentForm($params, $pmconfigs){
if (!isset($params['name'])) $params['name'] = '';
        if (!isset($params['addr'])) $params['addr'] = '';
if (!isset($params['faddr'])) $params['faddr'] = '';
        if (!isset($params['inn'])) $params['inn'] = '';
        if (!isset($params['okpo'])) $params['okpo'] = '';
if (!isset($params['nazb'])) $params['nazb'] = '';
if (!isset($params['ras'])) $params['bik'] = '';
        if (!isset($params['ks'])) $params['ks'] = '';
        if (!isset($params['bik'])) $params['bik'] = '';
if (!isset($params['gend'])) $params['gend'] = '';
if (!isset($params['tele'])) $params['tele'] = '';
    include(dirname(__FILE__)."/paymentform.php");
    }

    function getDisplayNameParams(){
        $names = array('name' => _JSHOP_ACCOUNT_NAME, 'addr' => _JSHOP_ADDR, 'faddr' => _JSHOP_FADDR, 'inn' => _JSHOP_INN, 'okpo' => _JSHOP_OKPO, 'nazb' => _JSHOP_NAZB, 'bik' => _JSHOP_BIK, 'ras' => _JSHOP_RAS, 'ks' => _JSHOP_KS, 'gend' => _JSHOP_GEND, 'tele' => _JSHOP_TELE );
        return $names;
    }
}
?>


Все работает отлично, но только не проверяются заполнены ли поля.
Подскажите пожалуйста как сделать проверку на заполнение полей.

Спасибо!
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
Re: Модуль pm_debit и новые поля в него
« Ответ #1 : 09.02.2017, 18:31:33 »
required ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

S2pidsMan

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Re: Модуль pm_debit и новые поля в него
« Ответ #2 : 09.02.2017, 18:43:31 »
required ?
Уточните пожалуйста, что вы имеете в виду. Я полностью код копировал с оригинала, который проверяется на заполненность.
UPD.
Вот этот скрипт по идеи проверяет на заполненность:
Код
<script type="text/javascript">
  function check_pm_debit(){
    var ar_focus=new Array();
    var error=0;
    unhighlightField('payment_form');
if (isEmpty($F_("params_pm_debit_name"))) {
        ar_focus[ar_focus.length]="params_pm_debit_name";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_addr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_addr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_faddr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_faddr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_inn"))) {
        ar_focus[ar_focus.length]="params_pm_debit_inn";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_okpo"))) {
        ar_focus[ar_focus.length]="params_pm_debit_okpo";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_nazbe"))) {
        ar_focus[ar_focus.length]="params_pm_debit_nazb";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ras"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ras";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ks"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ks";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_bik"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bik";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_gend"))) {
        ar_focus[ar_focus.length]="params_pm_debit_gend";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_tele"))) {
        ar_focus[ar_focus.length]="params_pm_debit_tele";
        error=1;
    }
    if (error){
        $_(ar_focus[0]).focus();
        for (var i=0; i<ar_focus.length; i++ ){
           highlightField(ar_focus[i]);
        }
        return false;
    }
    jQuery('#payment_form').submit();
  }
 </script>
Но почему то не проверяет... Видимо где то еще нужно добавить условия, но где я - не в курсе, только познаю Joomla
« Последнее редактирование: 09.02.2017, 18:49:15 от S2pidsMan »
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
Re: Модуль pm_debit и новые поля в него
« Ответ #3 : 09.02.2017, 18:48:21 »
Я добавил новые поля в pm_debit и соответственно их проверку и отправку:
....

, но только не проверяются заполнены ли поля.
Подскажите пожалуйста как сделать проверку на заполнение полей.
что по итогу сделано, что не работает и что надо ?
проверку на заполненность дает опция required.
я не понимаю вашего вопроса больше чем Вы наверное моего ответа :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

S2pidsMan

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Re: Модуль pm_debit и новые поля в него
« Ответ #4 : 09.02.2017, 18:50:18 »
что по итогу сделано, что не работает и что надо ?
проверку на заполненность дает опция required.
я не понимаю вашего вопроса больше чем Вы наверное моего ответа :)
Еще раз:
Оригинал:
Код
<?php 
/**
* @version      4.4.1 10.02.2014
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die('Restricted access');
?>
<table>
   <tr>
     <td width="200">
       <?php echo _JSHOP_ACCOUNT_HOLDER;?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][acc_holder]" id="params_pm_debit_acc_holder" value="<?php print $params['acc_holder']?>"/>
     </td>
   </tr>
   <tr>
     <td>
       <?php echo _JSHOP_IBAN?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][bank_iban]" id="params_pm_debit_bank_iban" value="<?php print $params['bank_iban']?>"/>
     </td>
   </tr>
   <tr>
     <td>
       <?php echo _JSHOP_BIC_BIC?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][bank_bic]" id="params_pm_debit_bank_bic" value="<?php print $params['bank_bic']?>"/>
     </td>
   </tr>
   <tr>
     <td>
       <?php echo _JSHOP_BANK?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][bank]" id="params_pm_debit_bank" value="<?php print $params['bank']?>"/>
     </td>
   </tr>
</table>
<script type="text/javascript">
  function check_pm_debit(){
    var ar_focus=new Array();
    var error=0;
    unhighlightField('payment_form');
    if (isEmpty($F_("params_pm_debit_acc_holder"))) {
        ar_focus[ar_focus.length]="params_pm_debit_acc_holder";
        error=1;
    }
    if (isEmpty($F_("params_pm_debit_bank_iban"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bank_iban";
        error=1;
    }
    if (isEmpty($F_("params_pm_debit_bank"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bank";
        error=1;
    }
    if (error){
        $_(ar_focus[0]).focus();
        for (var i=0; i<ar_focus.length; i++ ){
           highlightField(ar_focus[i]);
        }
        return false;
    }
    jQuery('#payment_form').submit();
  }
 </script>
Мой код:
Код
<?php 
/**
* @version      4.4.1 10.02.2014
* @author       MAXXmarketing GmbH
* @package      Jshopping
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
defined('_JEXEC') or die('Restricted access');
?>
<table>
   <tr>
     <td width="200">
       <?php echo _JSHOP_ACCOUNT_NAME;?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][name]" id="params_pm_debit_name" value="<?php print $params['name']?>"/>
     </td>
   </tr>
   
    <tr>
     <td width="200">
       <?php echo "Юридический адрес";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][faddr]" id="params_pm_debit_faddr" value="<?php print $params['faddr']?>"/>
     </td>
   </tr>
   
   <tr>
     <td width="200">
       <?php echo "Фактический адрес";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][addr]" id="params_pm_debit_addr" value="<?php print $params['addr']?>"/>
     </td>
   </tr>
   
   
   <tr>
     <td width="200">
       <?php echo "ИНН/КПП";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][inn]" id="params_pm_debit_inn" value="<?php print $params['inn']?>"/>
     </td>
   </tr>
   
   
   <tr>
     <td width="200">
       <?php echo "ОКПО";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][okpo]" id="params_pm_debit_okpo" value="<?php print $params['okpo']?>"/>
     </td>
   </tr>
   
   <tr>
     <td width="200">
       <?php echo "Наименования банка";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][nazb]" id="params_pm_debit_nazb" value="<?php print $params['nazb']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "БИК";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][bik]" id="params_pm_debit_bik" value="<?php print $params['bik']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "Р/С";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][ras]" id="params_pm_debit_ras" value="<?php print $params['ras']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "К/С";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][ks]" id="params_pm_debit_ks" value="<?php print $params['ks']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "Ген. директор";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][gend]" id="params_pm_debit_gend" value="<?php print $params['gend']?>"/>
     </td>
   </tr>
   <tr>
     <td width="200">
       <?php echo "Телефон";?>
     </td>
     <td>
       <input type="text" class="inputbox" name="params[pm_debit][tele]" id="params_pm_debit_tele" value="<?php print $params['tele']?>"/>
     </td>
   </tr>
</table>
<script type="text/javascript">
  function check_pm_debit(){
    var ar_focus=new Array();
    var error=0;
    unhighlightField('payment_form');
if (isEmpty($F_("params_pm_debit_name"))) {
        ar_focus[ar_focus.length]="params_pm_debit_name";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_addr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_addr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_faddr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_faddr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_inn"))) {
        ar_focus[ar_focus.length]="params_pm_debit_inn";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_okpo"))) {
        ar_focus[ar_focus.length]="params_pm_debit_okpo";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_nazbe"))) {
        ar_focus[ar_focus.length]="params_pm_debit_nazb";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ras"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ras";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ks"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ks";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_bik"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bik";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_gend"))) {
        ar_focus[ar_focus.length]="params_pm_debit_gend";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_tele"))) {
        ar_focus[ar_focus.length]="params_pm_debit_tele";
        error=1;
    }
    if (error){
        $_(ar_focus[0]).focus();
        for (var i=0; i<ar_focus.length; i++ ){
           highlightField(ar_focus[i]);
        }
        return false;
    }
    jQuery('#payment_form').submit();
  }
 </script>
В оригинале снизу скрипт проверяет на заполненность полей. А у меня почему то нет)))
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
Re: Модуль pm_debit и новые поля в него
« Ответ #5 : 09.02.2017, 18:55:27 »
ну и я повторюсь :)
проверку на заполненность дает опция required.
если вопрос проверки именно заполненности, используйте опцию.
если уж вы проверяете содержимое то там проверка нужна своя.

П.С. только с сафари будут вопросы :( они ж особенные.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

S2pidsMan

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Re: Модуль pm_debit и новые поля в него
« Ответ #6 : 09.02.2017, 18:57:26 »
ну и я повторюсь :)
проверку на заполненность дает опция required.
если вопрос проверки именно заполненности, используйте опцию.
если уж вы проверяете содержимое то там проверка нужна своя.

Да мне нужно, что бы пустые строки не отправлялись.
Я не пойму почему вот этот скрипт оригинала:
Код
<script type="text/javascript">
  function check_pm_debit(){
    var ar_focus=new Array();
    var error=0;
    unhighlightField('payment_form');
    if (isEmpty($F_("params_pm_debit_acc_holder"))) {
        ar_focus[ar_focus.length]="params_pm_debit_acc_holder";
        error=1;
    }
    if (isEmpty($F_("params_pm_debit_bank_iban"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bank_iban";
        error=1;
    }
    if (isEmpty($F_("params_pm_debit_bank"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bank";
        error=1;
    }
    if (error){
        $_(ar_focus[0]).focus();
        for (var i=0; i<ar_focus.length; i++ ){
           highlightField(ar_focus[i]);
        }
        return false;
    }
    jQuery('#payment_form').submit();
  }
 </script>
Работает.
А на мои условия:
Код
<script type="text/javascript">
  function check_pm_debit(){
    var ar_focus=new Array();
    var error=0;
    unhighlightField('payment_form');
if (isEmpty($F_("params_pm_debit_name"))) {
        ar_focus[ar_focus.length]="params_pm_debit_name";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_addr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_addr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_faddr"))) {
        ar_focus[ar_focus.length]="params_pm_debit_faddr";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_inn"))) {
        ar_focus[ar_focus.length]="params_pm_debit_inn";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_okpo"))) {
        ar_focus[ar_focus.length]="params_pm_debit_okpo";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_nazbe"))) {
        ar_focus[ar_focus.length]="params_pm_debit_nazb";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ras"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ras";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_ks"))) {
        ar_focus[ar_focus.length]="params_pm_debit_ks";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_bik"))) {
        ar_focus[ar_focus.length]="params_pm_debit_bik";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_gend"))) {
        ar_focus[ar_focus.length]="params_pm_debit_gend";
        error=1;
    }
if (isEmpty($F_("params_pm_debit_tele"))) {
        ar_focus[ar_focus.length]="params_pm_debit_tele";
        error=1;
    }
    if (error){
        $_(ar_focus[0]).focus();
        for (var i=0; i<ar_focus.length; i++ ){
           highlightField(ar_focus[i]);
        }
        return false;
    }
    jQuery('#payment_form').submit();
  }
 </script>
Не работает.
Может надо в какой файл еще что добавить? Я же говорю, нуб)
*

S2pidsMan

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Re: Модуль pm_debit и новые поля в него
« Ответ #7 : 12.02.2017, 12:42:25 »
UPD
Если оставить только 4 проверки - то они срабатывают, если проверок больше, то ни одна не срабатывает.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль доставки Сдек или Яндекс

Автор Preview

Ответов: 9
Просмотров: 32234
Последний ответ 11.09.2025, 12:00:32
от kit2m2
Отключить автозаполнение для поля

Автор threemonkeys

Ответов: 5
Просмотров: 3560
Последний ответ 10.12.2020, 14:41:33
от threemonkeys
Модуль Onpay для JoomShopping

Автор OnpayGuy

Ответов: 198
Просмотров: 46803
Последний ответ 22.08.2018, 19:44:33
от Kodopik
Модуль оплаты картами

Автор 12mv

Ответов: 5
Просмотров: 1460
Последний ответ 11.05.2018, 15:56:54
от 12mv
Перенесено: QIWI (бесплатный модуль оплаты)

Автор nevigen

Ответов: 0
Просмотров: 1295
Последний ответ 07.09.2017, 12:00:39
от nevigen