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

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Рекурсия в модуле
« : 17.07.2017, 15:17:57 »
Joomla 3.7.3
В модуле нужно вывести древовидный контент. Есть две связанные функции. Как организовать их взаимодействие в классе? Подскажите принцип вывода.
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Рекурсия в модуле
« Ответ #1 : 17.07.2017, 15:39:49 »
Есть две связанные функции.
связанные чем?)
рекурсия в классе можно сделать, например, через статические методы, принцип ничем не отличается если использовать обычные функции
или просто прописать эти функции в том же выводе (default.php) и юзать их
« Последнее редактирование: 17.07.2017, 15:43:00 от SmokerMan »
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #2 : 17.07.2017, 15:56:06 »
Тестовый файл вне CMS отлично выводит контент из базы Joomla:

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


*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #4 : 18.07.2017, 10:48:21 »
Раскидал функции:

function getCategory() - helper.php

function outTree - default.php

$category_arr = modKompHelper::getCategory(); - прописана в mod_komp.php

Проблема с $category_arr в default.php:

переменная $category_arr  не видима в функции function outTree.

global $category_arr; - не работает.

Гуру Joomla, помогите разобраться!
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Рекурсия в модуле
« Ответ #5 : 18.07.2017, 11:01:48 »
переменная $category_arr  не видима в функции function outTree.
ну так можно передать массив в качестве первого аргумента, например
Код
outTree($category_arr, ...)
ну и в рекурсии тоже не забыть поставить
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #6 : 18.07.2017, 11:56:07 »
outTree($category_arr, ...) - не работает, результат тот же.

Сам массив отображается на странице при применении print_r  для метода в helper.
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Рекурсия в модуле
« Ответ #7 : 18.07.2017, 17:25:08 »
В mod_komp.php после $category_arr = modKompHelper::getCategory();
var_dump($category_arr); что показывает?
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #8 : 18.07.2017, 17:59:06 »
В mod_komp.php после $category_arr = modKompHelper::getCategory();
var_dump($category_arr); что показывает?

array(3) {
  • => array(4) {
  • => array(10) {
  • => string(2) "77" ["id"]=> string(2) "77" [1]=> string(8)............ и т.д.


не так красиво как здесь получилось, а все в строку.
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #9 : 19.07.2017, 13:31:28 »
Подвох был в global. Почему-то не работает в Joomla. Нужно явно прописывать функцию в переменной.  Helper задействовать не удалось.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рекурсия в модуле
« Ответ #10 : 19.07.2017, 17:08:00 »
Подвох был в global.
Зачем она нужна, когда переменная уже передана в функцию как аргумент?
Нужно явно прописывать функцию в переменной
Что это значит?
Helper задействовать не удалось.
Что-то не так с вашим кодом
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Рекурсия в модуле
« Ответ #11 : 19.07.2017, 21:56:11 »
Врядли буду сам смотреть но все же. Кидайте сюда модуль целиком. Надо смотреть в контексте.
А вообще древовику можно и проще сделать
JHTML menu.treerecurse  в помощь. Ну и хелпер mod_menu тоже.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #12 : 20.07.2017, 07:38:54 »
1. Вариант с 2 функциями удалось запустить разместив их в default. Связка их через аргумент не сработала. Работающий код:
Цитировать
function getCategory() {
.......
}
function outTree($category_arr, $parent_id, $level) {
 global   $category_arr = getCategory();
.......
}
2. Далее остановился на варианте с 1 функцией в default.
Спойлер
[свернуть]
Как видите весь модуль сводится к одной функции.
Задача минимум была получить вывод, задача максимум - привести все к стандарту Joomla.
Во 2 варианте столкнулся с проблемой привязки отзывов к статье. Из 7-ми выводится 3. Нужно корректировать цикл.

Буду признателен за любую помощь.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рекурсия в модуле
« Ответ #13 : 20.07.2017, 09:36:22 »
Кидайте сюда модуль целиком. Надо смотреть в контексте.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #14 : 20.07.2017, 10:07:59 »
У меня наверное нет прав на прикрепление архива. Выдаю листинг файлов.
mod_koment.php
Спойлер
[свернуть]
tmpl/default.php
Спойлер
[свернуть]
Результат с тестовыми данными на фото.
https://cloud.mail.ru/public/7X6e/T9mTnorQu
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рекурсия в модуле
« Ответ #15 : 20.07.2017, 11:08:10 »
Цитировать
Код: php-brief
<?php echo create_tree ($cats, 0);?
Где $cats определяется? Где вызываются методы из helper.php?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Рекурсия в модуле
« Ответ #16 : 20.07.2017, 11:50:40 »
У меня наверное нет прав на прикрепление архива. Выдаю листинг файлов.
Вообще-то должны быть, но даже без них выложите в облако. Иначе будем 100 лет играть в угодайку. Нужна и сама база и все функции причем в динамике.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

alpha_ru

  • Захожу иногда
  • 86
  • 0 / 0
Re: Рекурсия в модуле
« Ответ #17 : 20.07.2017, 14:25:48 »
Helper нет в моем модуле. Я не сумел с ним подружить рекурсию и не стал терять время - сделал все одной функцией в файле default.php

Модуль без установщика с базой (внутри) в облаке:
https://cloud.mail.ru/public/DNFG/4ozYBdE7x
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рекурсия в модуле
« Ответ #18 : 20.07.2017, 19:09:33 »
-function create_tree($cats, $parent_id) - для чего нужен $cats, если он задается внутри функции?
-Бесполезные $userId и $id.
-echo create_tree ($cats, 0); - без объяления $cats.
-Никакого стандарта Joomla: ни структуры, ни API. Зачем вы разделили свой код в таком случае? Обошлись бы одним скриптом.
Что вы еще хотели услышать?

Не будь паразитом, сделай что-нибудь самостоятельно!
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Рекурсия в модуле
« Ответ #19 : 20.07.2017, 19:25:11 »
Перенесите код из default.php в mod_koment.php. Остальное удалите.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Подключение сторонних библиотек в модуле J4

Автор denism300

Ответов: 6
Просмотров: 1204
Последний ответ 30.12.2022, 19:58:09
от denism300
Дополнительное поле в модуле

Автор paskal

Ответов: 21
Просмотров: 3089
Последний ответ 27.08.2016, 00:59:55
от robert
Запись в БД из формы в плагине (модуле). Как!

Автор Sergeyy

Ответов: 13
Просмотров: 1954
Последний ответ 13.11.2015, 11:01:18
от Sergeyy
Ошибка 1005 при sql-запросах в своем модуле

Автор dv-cto

Ответов: 2
Просмотров: 1918
Последний ответ 07.02.2015, 21:30:50
от dv-cto
Не выводит инфо в модуле

Автор baskethome

Ответов: 2
Просмотров: 2204
Последний ответ 22.01.2015, 14:05:58
от baskethome