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

orsy

  • Захожу иногда
  • 400
  • 23 / 1
  • Web-Factor Ukraine
Столкнулся недавно с тем что порядок отображения полей поиска в модуле mod_adsmanager_search совершенно не зависит от того в каком порядке эти самые поля указаны в его настройках.

В этом модуле есть 5 пронумерованных полей, в которые вставляются имена характеристик объявления.
Логично было ожидать что в модуле поля будут отображаться в том же порядке в котором указаны в настройках модуля, но...

Но дело в том что поля эти в модуле выводятся в том порядке, который им задан в компоненте AdsManager, не помню точно для какой части, может для формы подачи объявления или страницы отображения объявления.

Для того чтобы поля поиска в модуле отображались в том порядке, в котором мы указали их в настройках модуля, необходимо:

1. Открываем файл /administrator/components/com_adsmanager/models/field.php
2. Ищем в этом файле функцию getFieldsByName содержимое оной приведено ниже

Код
     function getFieldsByName($listfields,$usergroups=true,$mode='read') {
$query = "SELECT f.* FROM #__adsmanager_fields AS f ".
"WHERE f.name IN ($listfields) AND f.published = 1 ORDER by f.ordering" ;
$this->_db->setQuery( $query);
$searchfields = $this->_db->loadObjectList("name");

foreach($searchfields as $key => $field) {
$searchfields[$key]->options = json_decode($field->options);
}

if($usergroups) {
require_once(JPATH_ROOT.'/components/com_adsmanager/lib/tpermissions.php');
$searchfields = TPermissions::getAuthorisedFields($searchfields, $mode);
}

return $searchfields;
    }

3. Копипастим эту функцию вместе с содержимым ниже и меняем ее название например на getFieldsByPosModule
4. Заменяем вот эту часть кода:

Код
$query = "SELECT f.* FROM #__adsmanager_fields AS f ".
"WHERE f.name IN ($listfields) AND f.published = 1 ORDER by f.ordering" ;
$this->_db->setQuery( $query);
$searchfields = $this->_db->loadObjectList("name");

на этот код

Код
$listfieldsformod = str_replace ( "'" , "" , $listfields );					 
$query = "SELECT f.* FROM #__adsmanager_fields AS f "."WHERE f.name IN ($listfields) AND f.published = 1 order by find_in_set(f.name, '$listfieldsformod')";
$this->_db->setQuery( $query);
$searchfields = $this->_db->loadObjectList();

5. открываем файл /modules/mod_adsmanager_search/mod_adsmanager_search.php

6. Находим место где используется функция getFieldsByName, у меня это 52-я строка и код выглядит вот так:

Код
if ($listfields != ""){
$searchfields = $fieldmodel->[b]getFieldsByPosModule[/b]($listfields);
$field_values = $fieldmodel->getFieldValues();

7. заменяем выделенное жирным имя функции на то которое мы указали в начале поста когда копировали функцию, у нас это было getFieldsByPosModule
После внесенных изменений код должен выглядеть так:

Код
if ($listfields != ""){
$searchfields = $fieldmodel->getFieldsByPosModule($listfields);
$field_values = $fieldmodel->getFieldValues();

На этом все. Теперь поля в модуле будут показываться в том порядке, в котором мы их указали в настройках модуля.
*

moonaway

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 20642
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
Как создать пункт меню на результат поиска ADS?

Автор Den85

Ответов: 1
Просмотров: 2129
Последний ответ 03.06.2018, 18:58:10
от Sabotage
Привязать модуль mod_paidsystem_feat поиску

Автор efimov777

Ответов: 5
Просмотров: 1765
Последний ответ 27.02.2018, 18:57:55
от efimov777
Привязать модуль mod_adsmanager_ads к категории

Автор efimov777

Ответов: 2
Просмотров: 17232
Последний ответ 01.02.2018, 14:01:16
от efimov777
Как встроить модуль в AdsManager?

Автор Den85

Ответов: 1
Просмотров: 21586
Последний ответ 19.01.2018, 23:15:21
от DK-Scorp