Новости 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 Ответов
  • 1088 Просмотров
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Всем привет!
Хочется по красоте вывести в статье ссылку на редактирования таким образом, чтобы статья на редактирование открывалась в админке, а не с фронта (с фронта мне не нравится - надо всякие бутстрапы подключать и вообще...).
Есть такая функция в API?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
В API - вряд ли. А так, в принципе можно, но есть 2 проблемы:
-авторизация,
-отключение проверки разрешения на редактирование в контроллере, что, полагаю, нежелательно с точки зрения безопасности (не вникал, но раз поставили, значит для чего-то нужно).
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
ну замени ссылку на
Цитировать
/administrator/index.php?option=com_content&task=article.edit&id=ID
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну так и придется делать.
+ проверку на ID юзера или даже IP-шник, чтобы казать или скрывать ссылку (я так понимаю, если с фронта не залогинен, то только отдельным запросом можно достать группу юзера по ID?)
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
интересно, а можно как-то вытянуть с фронта инфу о залогинивании с бэкэенда?
может через сессию можно как-то определить, что админ сайт просматривает?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
ну так и придется делать.
+ проверку на ID юзера или даже IP-шник, чтобы казать или скрывать ссылку (я так понимаю, если с фронта не залогинен, то только отдельным запросом можно достать группу юзера по ID?)
если ты не залогинен, не знаю какую ты группу собрался там доставать)
если залогинен, то группу можно проверить так
Код
$user = JFactory::getUser();
if (in_array('id группы', $user->groups)) {
    //выводим ссылку
}
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
да у меня ум за разум уже. параллельно 3 сайт ан WP - там нет такого деления. типа, зологинился с бэкенда, с фронта видишь панель редактирования...
вот такое хочу замутить )). даешь унификацию интерфейсов! )). пока что через IP придется

а косвенно узнать, через сессию?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
да у меня ум за разум уже. параллельно 3 сайт ан WP - там нет такого деления. типа, зологинился с бэкенда, с фронта видишь панель редактирования...
вот такое хочу замутить )). даешь унификацию интерфейсов! )). пока что через IP придется

а косвенно узнать, через сессию?
в принципе можно сделать через куки наверное, может что-то есть на JED готовое
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
да судя по всему мне одному надо такую фичу ))
нагуглил 1 грустную тему на инглише, в которой ответили, что типа "архитектурой разведено".
наверно, так и придется делать - для залогининных с фронта админов ставить куку на полгода, а в статье по ней казать ссыль.
сасибо за пинание в правильную сторону )
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
в общем, поработал топором :)
отдельным микрофайлом в корне сайта устанавливаю или обнуляю куку по GET запросу (1 - показывать ссылку, 0 - не показывать),
Код
ваш сайт/ИМЯ_ФАЙЛА.php?show=1

содержимое файла
Код
	$se_flag = filter_var ( $_GET[show], FILTER_SANITIZE_NUMBER_INT); //очищаем переменную от всего, кроме цифер
//echo $se_flag;
setcookie ("ShowEdit", $se_flag, time()+3*24*60*60); // ставим куку на 3 дня

а в шаблон врезал вот это

Код
	if (filter_var ( $_COOKIE["ShowEdit"], FILTER_SANITIZE_NUMBER_INT)){
$path="";
$btName="РЕДАКТИРОВАТЬ МАТЕРИАЛ";
if(showPage(array('option'=>'com_content', 'view'=>'article'))) $path='"/administrator/index.php?option=com_content&task=article.edit&id='.$_REQUEST[id].'"';
if(showPage(array('option'=>'com_content', 'view'=>'category')) || showPage(array('option'=>'com_content', 'view'=>'categories'))){
$path='"/administrator/index.php?option=com_categories&task=category.edit&id='.$_REQUEST[id].'"';
$btName="РЕДАКТИРОВАТЬ КАТЕГОРИЮ";
}
if ($path!="") echo '<a target="blank" href='.$path.'>'.$btName.'</a>';

}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться