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

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Собственно вопрос весь в теме, просто поясню если не понятно.

Есть фильтрация на виде orders, в фильтре участвует поле route_id, которое выбирается в модальном окне. Так вот у вида routes есть привязка к категории и я решил в вид orders сделать фильтрацию по категории - все вышло хорошо, но хотелось бы при установленном параметре "CATEGORY_ID" в фильтре вида orders получить эту категорию и отфильтровать вывод модального вида routes.

посмотрел в
$this->state - это свой фильтер
$this->filterForm - там вроде нужный перечень, но значений нет

Подскажите где искать!
« Последнее редактирование: 29.03.2017, 13:09:29 от platonische »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
components/com_mycom/models/forms/filter_orders.xml. Создать, если не существует.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Нет все фильтры работают. Все файлы созданы.
Вопрос в том как из одного фильтра для вида ORDERS забрать значение фильтра для другого фильтра в виде ROUTERS вызванного через модальное окно.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Что значит "забрать"? Создайте нужное поле (тип поля) в нужной форме нужного фильтра.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Забрать я подрузамеваю - получить значение переменной
Все переменные в фильтре есть и отрабатываются. Надо получить значение переменной (из фильтра) в другом виде вызванном модально.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
А в $_REQUEST нет его?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Нет в request его нет, нашел в $this, но не пойму как локализовать вот часть дампа
Спойлер
[свернуть]
filter: search, category_id, route_id,... - это те самые значения фильтра, но не понимаю где они лежат
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Попробуйте так
Код: php-brief
$routers_model = JModelLegacy::getInstance('Routers', 'MycomModel');
$category_id = $routers_model->getState('filter.search');

P.S.
MycomModelRouters - это класс модели Routers.
filter.search - точный параметр смотрите в методе MycomModelRouters::populateState().
« Последнее редактирование: 28.03.2017, 18:13:40 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Что-то не прокатило
Спойлер
[свернуть]

Спойлер
[свернуть]

Находимся в виде Orders фильтр настроили в Orders и хотим его достроить (параметр route_id). Лезем менять параметр фильтра route_id через вызов модального окна и там (в модальном виде ROUTES) хочу получить отфильтрованный список.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Что-то не прокатило
Что именно? Как проверяли?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
проверяю var_dump. сунул ваши строки в modal вид . Результат 0
А вот интересно стал искать (методом тыка) где же присутствует переменная и оказалась она есть в $this->pagination

P.S.: бред какой-то... но она там реально есть.


« Последнее редактирование: 28.03.2017, 18:31:25 от platonische »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Код: php-brief
$model = JModelLegacy::getInstance('Orders', 'TurismModel');
$catid = $model->getState('filter.categoty_id');
echo '<pre>';
print_r($model);
echo '</pre>';
Ваш параметр должен быть там. Другое дело - пустой он или нет.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Да есть переменная но все пустое, нулёвое.

Надо посмотреть как в content сделано подцепление категории из фильтра при созданиии нового материала.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Вот такой ответ нашел
Спойлер
[свернуть]
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Так а теперь вопрос как корректно засунуть параметр из фильтра orders в фильтрацию routes?

вариант вижу такой: в модели сделать проверку на модальность и брать там параметр и внедрять его в getListQuery
Правильно ли мыслю и какие камни могут быть?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Да, думаю, что это правильное решение.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
А как в моделе понять что это MODAL вывод?

что-то не найду. в виде есть $this->getLayout(), но в моделе его нет
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Берите из $_REQUEST: layout=modal.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Берите из $_REQUEST: layout=modal.
Да это вариант! Отработало.
А подскажите ещё. Можно ли как-то узнать кто запустил модальное окно? у меня его могут вызывать виды orders, tours и etc... чтобы в модальном знать чьи фильтры стоит посмотреть.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
переделал только $_REQUEST через $jinput = JFactory::getApplication()->input;
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Конечно можно $_SERVER['HTTP_REFERER'] отпарсить!
А может у J! свои варианты есть?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
А подскажите ещё. Можно ли как-то узнать кто запустил модальное окно? у меня его могут вызывать виды orders, tours и etc... чтобы в модальном знать чьи фильтры стоит посмотреть.
Сохраните значение view в сессию и вытаскивайте его оттуда для проверки.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Вот вариант. Modal - это AJAX а поэтому $_SERVER['HTTP_REFERER'] содержит отправителя
Решение:
Код
$u = JURI::getInstance( $_SERVER['HTTP_REFERER'] );
$view = $u->getVar( 'view' );
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Итак окончательное решение:
Получать фильтр из другой формы можно и в populaState в моделе вот так
Спойлер
[свернуть]
Первые строки для обычного фильтра, вторые для фильтра из любого вида.
Далее проверяем на модальность и вычленяем который из видов запросил модальное окно. И по результатам делаем доп параметры в sql-запросе в getListQuery в моделе.
Спойлер
[свернуть]
Это чисто мой случай.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[РЕШЕНО] Дублирование при создании

Автор platonische

Ответов: 7
Просмотров: 1689
Последний ответ 12.02.2021, 11:24:26
от platonische
[РЕШЕНО] onChange в админке на field modal

Автор platonische

Ответов: 1
Просмотров: 1000
Последний ответ 30.01.2021, 16:40:45
от platonische
[РЕШЕНО] Сохранение значений полей добавленных динамически элементу

Автор platonische

Ответов: 30
Просмотров: 4483
Последний ответ 10.11.2019, 15:42:33
от platonische
[РЕШЕНО] Присвоить значения динамическому полю SimpleXMLElement

Автор platonische

Ответов: 4
Просмотров: 1661
Последний ответ 08.11.2019, 11:13:27
от platonische
[РЕШЕНО] curl-файл Joomla $model->save($data) подключение модели администратора

Автор platonische

Ответов: 31
Просмотров: 2497
Последний ответ 30.05.2019, 16:10:57
от sivers