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

yamenko

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Добрый день.

Мне необходимо сделать новую таблицу в другой базе данных сразу же после регистрации нового пользователя в Joomla 3.0, а также удалить ее если пользователь удалил свой аккаунт.

Нужно:
1. Подключиться к новой базе данных.
2. Добавить таблицу название которой совпадает с ID пользователя который присвоил ему Joomla.

Из этого следует:
1. Как получить сразу же этот ID?
2. Куда вставлять запрос на создание базы данных. (База будет отличаться от базы joomla).

PS никаких новых полей в форму регистрации вставлять не надо.

Заранее благодарен.
*

b2z

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

Это все очень легко делается с помощью плагина типа user. Вам нужно событие onUserAfterSave и onUserAfterDelete. Вот пример, как это сделано в плагине Profile.

И еще материал - подключение к другой базе данных.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Создать плагин в группе юзер и вам нужно два метода onUserAfterSave - после создания пользователя, и onUserAfterDelete - после удаления юзера
например:
Код: php
function onUserAfterSave( $data, $isNew, $result, $error ){
if($isNew){//коннектимся к новой базе и вставляем данные!}
}
в $data - данные о пользователе, $isNew - говорит о том что это новый пользователь !
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Создать плагин в группе юзер и вам нужно два метода onUserAfterSave - после создания пользователя, и onUserBeforeDelete - перед удалением
Перед удалением опасно, а если в базе Joomla произойдет сбой? Лучше убедиться, что удаление прошло успешно в базе Joomla, а потом уже удалять во внешней. Здесь лучше подходит onUserAfterDelete.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Перед удалением опасно, а если в базе Joomla произойдет сбой? Лучше убедиться, что удаление прошло успешно в базе Joomla, а потом уже удалять во внешней. Здесь лучше подходит onUserAfterDelete.
Дим а если после удаления произойдет сбой то данные тоже как бы не удалятся со второй базы )
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Дим а если после удаления произойдет сбой то данные тоже как бы не удалятся со второй базы )
Ну этот вариант лучше, так как внешняя база обычно вторична (имхо). Ну тут уже решать ТС, может у него приоритет у внешней базы.
*

yamenko

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Может еще подскажите документацию на русском с описанием команд, операторов и событий.


Заранее благодарен.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Может еще подскажите документацию на русском с описанием команд, операторов и событий.


Заранее благодарен.
Я Вам дал ссылку на документацию по плагинам. А что такое команды и операторы?
*

yamenko

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
onUserAfterSave ()
onUserBeforeDelete ()
onUseAfterDelete()


+ в примерах на сайте
JPluginHelper::importPlugin()
JLoader::import()

Вот где вы это берете..... кроме этого внутри еще какие-то параметры.... что за что отвечает?
где взять полный  список с описанием как на сайте php.su или htmlbook.ru 
хотелось бы разобраться подробнее...


« Последнее редактирование: 04.10.2013, 14:49:39 от yamenko »
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Такой документации на русском не найдете (к сожалению). На английском есть чуть больше про плагины:
http://docs.joomla.org/Supporting_plugins_in_your_component
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Скорее всего нигде )
а зачем вам: JPluginHelper::importPlugin() и JLoader::import()?
вы же хотите что бы в стандартной регистрации после регистрации что то внеслось в другую таблицу?
так просто создаете плагин и у него один метод, я уже писал выше:
Код: php
function onUserAfterSave( $data, $isNew, $result, $error ){
if($isNew){//коннектимся к другой базе и вставляем данные!}
}
*

yamenko

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Тогда как будет выглядеть код если удалить пользователя:

Цитировать
function onUserAfterSave( $data, $isNew, $result, $error ){
if($isNew){//коннектимся к другой базе и вставляем данные!}
}
                                    ?
                                      | | |
                                     \/\/\/
onUserAfterDelete ($data, $isNew, $result, $error )

$isNew - тоже самое будет?
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Тогда как будет выглядеть код если удалить пользователя:
вам же писали посмотреть плагин /plugins/user/profile/profile.php
Код: php
public function onUserAfterDelete($user, $success, $msg){
if (!$success)
{
return false;
}

$userId = JArrayHelper::getValue($user, 'id', 0, 'int');

if ($userId)
{
//удаляем данные в второй базе...
}

return true;
}
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
yamenko - может Вам еще и весь плагин написать? ;) Я дал Вам все ссылки, извините, но на русском их нет. На английском самая главная ссылка:
http://docs.joomla.org/Portal:Developers
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор dmik

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

Автор kolhoz

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

Автор Glog

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

Автор b2z

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

Автор jitendra

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