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

zaboich

  • Осваиваюсь на форуме
  • 37
  • 11 / 0
Практически весь код Joomla комментирован в стандарте phpDocumentor. И большинство IDE для php разработки позволяют пользоваться его возможностями — быстрая подстановка доступных констант, переменных, методов, удобное определение уровней видимости и т. д.

Но, надо признать, что структура Joomla не самая удобная для работы с IDE.
Например, штатным методом получаем в контроллере компонента объект модели

Код: php
$model = $this->getModel();

IDE напрочь лишена возможности узнать что либо о объекте, который получила переменная $model, и все удобства IDE при работе с $model после этого пропадают.

А самый досадный для меня момент — файлы шаблона компонента /com_mycomp/views/item/tmpl/default.php
в них работа с переменной $this предполагается в контексте объекта mycompViewItem extends JviewLegacy.
Но как объяснить IDE, что $this — в этом файле, это тоже самое, что и в файле
/com_mycomp/views/item/view.html.php?

Что делать? Работать хочется комфортно, тем более что почти все условия созданы.

Вначале про контроллер и им подобные ситуации:
1. Можно в ручную подключить нужный файл и присвоить его переменной, это займет 2 строки:
Код: php
require_once JPATH_COMPONENT.'/models/item.php';
$model = new mycompModelItem();
и можно работать с моделью со всеми прелестями и возможностями IDE. (Правда надо уточнить параметры, из контроллера модель вызывается в конфигурации ignore_request). Кстати, думаю, что этот путь должен работать быстрее, чем
Код: php
$model = $this->getModel();

2. Но можно постараться получить тот же результат соблюдая стандарты Joomla.
Для этого достаточно после присвоения переменной дать DOC-блок, описывающий переменную
Код: php
$model = $this->getModel();
/* @var $model mycompModelItem() */


Возможно разные IDE ждут этот блок в разных форматах. Т.е. Где-то потребуются двойные звездочки /** **/, где-то вначале объявление типа, а потом имени переменной.
В NetBeans работает именно так.

Теперь про шаблон.
Аналогичным образом надо дать  DOC-блок в начале файла шаблона default.php
Код: php
<?php
defined('_JEXEC') or die('Restricted access');
/* @var $this mycompViewItem */

$this->loadTemplate('properties');

И сразу после этого $this будет дополняться всеми PUBLIC методами JViewLegacy (Joomla 3.x).
Но protected и private свойства и методы будут не доступны.
А например в  mycompViewItem были созданы
Код: php
protected $item;
protected $form;
И они не отображаются в IDE для $this.
Единственный способ, который я нашел — сделать их public. Это конечное не хорошо, но классов расширяющих  mycompViewItem не предполагается, поэтому такое отступление от стандартов будет не критичным.

Возможно у кого-то есть более удобные наработки или какие-то другие IDE более настраиваемые в этой части. Предлагаю поделиться опытом.
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Да в таких случаях, к примеру, как
Код
$model = JModel::getInstance('Item', 'mycompModel');
кроме докблоков больше никак и не выйдешь из положения.
А для protected свойств можно использовать public геттеры.

Многие IDE имеют плагины поддержки конкретных фреймворков, которые учитывают их специфические особенности и улучшают "восприимчивость" IDE.
Но среди разработчиков плагинов видимо особо никто не уважает Joomla-фреймворк. По крайней мере в PhpStorm пока не видел таких.

Вроде в CodeLobster видел поддержку Joomla, но сама по себе IDE не понравилась.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Поддержу в PhpStorm могли бы сделать, если бы мы попросили. Но никто не хочет этим заниматься - Extended Joomla Support In Php Storm. За Drupal в свое время попросили и смотрите, поддержка есть.
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
Поддержу в PhpStorm могли бы сделать, если бы мы попросили. Но никто не хочет этим заниматься - Extended Joomla Support In Php Storm. За Drupal в свое время попросили и смотрите, поддержка есть.
Может кому-то еще интересно...
Вот тут с апреля 2014 висит запрос по Joomla!®  WI-22979 Joomla support - feature request
Кому не лень - проголосуйте, пожалуйста.
Справочно - для поддержки Drupal'a хватило всего 17 голосов.
"The Lord Of A SandBox"
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Плюсанул и отписался =)
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Посмотрим что будет, уже 6 плюсов есть.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Будем надеяться. Если эту тему будет видно, то только с форума можно несколько десятков набрать.
*

migus

  • Давно я тут
  • 992
  • 144 / 0
  • OPEN THE BOX
Такими темпами точно скоро наберём  ^-^

@moderators
Может создать отдельную тему?
Думаю, есть смысл обсудить "хотелки" по интеграции, чтобы набрать материал для roadmap'a.
"The Lord Of A SandBox"
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Условия отображения для конкретной группы пользователей Joomla 3.4.x

Автор dmik

Ответов: 15
Просмотров: 5230
Последний ответ 29.05.2020, 22:42:15
от voland
Подключить Joomla Framework в своем файле

Автор kolhoz

Ответов: 1
Просмотров: 2318
Последний ответ 06.12.2017, 17:15:42
от Aleks.Denezh
Переделать запросы к БД под Joomla

Автор Glog

Ответов: 3
Просмотров: 2150
Последний ответ 03.07.2017, 17:53:28
от Glog
Поддержка Joomla в PhpStorm

Автор b2z

Ответов: 51
Просмотров: 13607
Последний ответ 28.12.2016, 23:31:39
от b2z
Joomla search tools

Автор jitendra

Ответов: 2
Просмотров: 1809
Последний ответ 15.12.2016, 17:13:15
от jitendra