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

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
Здравствуйте! Пишу не мудрёный компонент для Joomla, вся логика уже написана осталось только оформить в виде компонента.
Читаю мануалы по созданию, разобраться вроде разобрался со всем, а понять как добавить свои поля для административной части не могу.
Пробовал по принципу модулей добавить в XML, но не выходит.
Структура сходит с теми что в мануалe http://joomlablog.ru/razrabotka/360-razrabotka-rasshireniya-dlya-joomla-3-0-nachinaem-razrabotku
В общем проблема в следующем, как добавить поле в админку загрузить файл (xmlx), после загрузки получить этот файл и распарсить его.
Т.е. после загрузки что бы он сохранился в какой либо каталог и я имел доступ к нему средствами Joomla.
*

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
Спасибо! Будем зубрить. В выдаче поисковика на это не наталкивался.
*

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
AlekVolsk Поправьте пожалуйста если я не верно делаю.
В файле com_component/config.xml
Код
<?xml version="1.0"?>
<config>
    <fieldset name="global" label="JGLOBAL_FIELDSET_OPTIONS">
        <field name="limit" type="text" value="10" label="Количество записей"/>       
        <field name="recipient" type="text" value="" label="Получатель:"/>
        <field name="subject" type="text" value="" label="Тема письма:"/>
        <field name="message" type="editor" value="" label="Сообщение об удачной отправке:" buttons="false" filter="RAW"/>
    </fieldset>
</config>
Пусть имеются данные поля.
И они должны уже выводится в Компонент->com_component.
Или как к ним получить доступ?  !
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Они будут доступны в общих настройках компонента: /administrator/index.php?option=com_config&view=component&component=com_component
*

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
Действительно! Со стороны сайта нашёл как получить доступ к файлу указав его в этих настройках $this->state->params. А со стороны админки какой объект хранит эти данные?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
JComponentHelper
Вы немного не оттуда начали изучение компонента. Возьмите предлагаемый в доке пример и пройдитесь последовательно по всем шагам разработки для понимания, что к чему, а уже затем приступайте к собственному. Не так страшен зверь, как рассказы о нем.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Читаю мануалы по созданию, разобраться вроде разобрался со всем
Учитывая то  что вы пишите тут и пишете у меня в блоге - да ни фига вы ни в чем не разобрались! Ни капли не разобрались!

Вы сейчас пытаетесь в конфиг компонента впихнуть поле файла, потом передать его и распарсить! Но через конфиг вы НЕ СМОЖЕТЕ этого сделать!
Конфиг не предназначен для этого! У формы сохранения/редактирования конфига даже нет атрибута enctype="multipart/form-data" как вы собираетесь через него передавать то файлы, а потом ещё и парсить если все действия по сохранению и редактированию данных выполняет не ваш компонент, а компонент com_config!

Вам нужно четко сказать что вы хотите сделать, как вам нужно загрузить файл, что после этого с ним сделать и должны ли где то выводиться данные!
*

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
Цитировать
вроде разобрался со всем
Вероятность что я ошибаюсь осталась.
Вы сейчас пытаетесь в конфиг компонента впихнуть поле файла, потом передать его и распарсить! Но через конфиг вы НЕ СМОЖЕТЕ этого сделать!
Этот момент я уже понял что не удасться через конфиг, так как упёрся что должно быть так и другого варианта не видел.
Отдельным видом можно же просто форму создать и при submit выполнить эти манипуляции, не использую ни какой XML файл. Теперь верно думаю?

С БД в моделе уже делал что надо было, заливал таблицу с данными что получили после чтения файла и выводил их на сайте.
С другими таблицами в админке пробовал выводить.
*

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
Как добавлять поля нашёл, наконец-то!
В файле /com_component/models/forms/name_models/name_models.xml
Код
<field name="file" type="filelist" label="Выберите файл" description="Описание поля" directory="images"></field>
И вызываем в соответствующем виде.
Код
<div class="control-group">
    <div class="control-label"><?php echo $this->form->getLabel( 'file' ); ?></div>
    <div class="controls"><?php echo $this->form->getInput( 'file' ); ?></div>
</div>
Примерно так.
Осталось разобраться что эти данные обрабатывает.
Логику работы компонента Joomla остаётся дремучем лесом, а именно роль контроллера.
Модули на удивление легко писать.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Обрабатывает модель!
Модель так что у вас в  /com_component/models/name_models.php то есть у файла формы такое же имя по идее как и у вашей модели (если вы генерировали чем то каркас)!
Вам нужно переопределить в модели метод
Код: php
public function save( $data ){
}
Который лежит в родителе, и в нем написать логику того что с вашим файлом нужно сделать!
*

Vicos

  • Захожу иногда
  • 60
  • 0 / 0
В общем притянул за уши используя каркас компонента, но и получил чуть больше чем хотел изначально.
Как загрузить файл так и не разобрался, использовал filelist.
save переопределять не понадобилось, так как не усвоил момент понял как заставить её работать. В view.html.php при submit формы а виде $_POST содержал всё необходимое.

Пришлось отказаться от сортировки полей в админке, не понял как переопределить методы сортировки, работает только по id, названия полей совпадают.
Спасибо! Буду тестировать. RC v0.9 готов)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться