Новости Joomla

👩‍💻 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 Гость просматривают эту тему.
  • 1 Ответов
  • 2412 Просмотров
*

Rexton

  • Осваиваюсь на форуме
  • 21
  • 2 / 0
Доброго времени суток, форумчане.


Столкнулся с такой вот проблемкой...

Нужно было сделать дополнительное поле в форме регистрации (Joomla 1.5)
Прописал это поле здесь components/com_user/views/registration/tmpl/default.php

Потом поставил плагин, который пишет значения из дополнительного поля в jos_users -> params
Params перед записью шифруются в MD5
Код
class plgUserExtUsData extends JPlugin {

    function onAfterStoreUser($user, $isnew, $success, $msg)
    {
   
        if ($isnew) {
            $db =& JFactory::getDBO();
            $registry = new JRegistry();
            $registry->loadArray md5(($_POST['params']));
            $params = $registry->toString();
            $db->setQuery("UPDATE #__users SET params = '" .  $db->getEscaped($params). "' WHERE id = " . $user['id']);
            $db->query();           

}


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

Код
$query = "SELECT kod FROM Any_Table WHERE act = '".$params."'";
$db =& JFactory::getDBO(); ///Соединение с базой
$db->setQuery($query); // Выполнение запроса
$db->getError(); //Если запрос не выполнен, выводим ошибку
$key = $db->loadResult(); //Загружаем результат запроса


Собственно, смысл этой проверки:

Код
//Если такой ключ есть, прописываем пользователя в группу легальных 
if ($key = $params ) //Сравниваем результат из БД и введенный юзером ключ
{
$query = "INSERT INTO 'jos_usergroups' ('id' ,  'user_id' ,  'group_id'  ) VALUES ( '.$user['id'].', '.$user['id'].', 11 ";
$db =& JFactory::getDBO();
$db->setQuery($query);
$db->getError();



Может кто поможет решить?
*

Rexton

  • Осваиваюсь на форуме
  • 21
  • 2 / 0
Переписанный код:
Код
<?php

defined('_JEXEC') or die( 'Restricted access' );

jimport('joomla.plugin.plugin');

class plgUserExtUsData extends JPlugin {

    function onAfterStoreUser($user, $isnew, $success, $msg)
    {
        if ($isnew) {
            $db =& JFactory::getDBO();
$kod = JRequest::getString('kod', '', 'post', JREQUEST_ALLOWRAW);
            $db->setQuery("UPDATE #__users SET kod = '" .  md5($db->getEscaped($kod)). "' WHERE id = " . $user['id']);
            $db->query();            
        }
$userid = $user['id'];
$legal_group = 11;
$not_legal = 9;
$user=& JFactory::getUser();
$user_key = $user->get('kod');
$username = $user->get('username');
$db->setQuery("SELECT * FROM My_Table WHERE kod = '".$user_key."'");
$main_key = $db->loadResult();


if ($user_key == $main_key){
$query = "INSERT INTO #__fua_userindex SET id='$userid' , user_id='$userid' , group_id='$legal_group'";
$db->setQuery($query);
if(!$db->query()) {
die("SQL error".$db->stderr(true));
}

$db->setQuery("UPDATE My_Table SET username='$username' WHERE kod='$user_key'");
if(!$db->query()) {
die("SQL error".$db->stderr(true));
}

}
else{


$query = "INSERT INTO #__fua_userindex SET id='$userid' , user_id='$userid' , group_id='$not_legal'";
$db->setQuery($query);
if(!$db->query()) {
die("SQL error".$db->stderr(true));
}

}






    }

}

?>

Проблема тоже изменилась....

Теперь всех пользователей прописывает как $legal_group .... то есть не сравнивает...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Защита от ботов при регистрации

Автор shaverma

Ответов: 11
Просмотров: 9317
Последний ответ 23.03.2015, 14:12:04
от AdmbVlad
В админке нет поля ввода логина/пароля

Автор menar

Ответов: 4
Просмотров: 2424
Последний ответ 25.02.2015, 21:51:37
от menar
Нету поля "Lightbox Rel параметр"

Автор slavikrovno

Ответов: 0
Просмотров: 1532
Последний ответ 22.01.2014, 02:16:40
от slavikrovno
Добавление материала без регистрации

Автор zosimov

Ответов: 8
Просмотров: 2012
Последний ответ 21.10.2013, 12:45:59
от smart
После отключения регистрации в CommunityBuilder сбились размеры материалов

Автор piquick

Ответов: 2
Просмотров: 1557
Последний ответ 17.10.2013, 14:55:35
от piquick