Новости Joomla

👩‍💻 WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

👩‍💻 WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

Небольшая нативная PHP Joomla библиотека для работы с API v.2 службы доставки CDEK. Библиотека представляет собой клиент для авторизации в CDEK API по OAuth, работы с некоторыми методами API: получения ряда данных и расчета стоимости доставки. Поддерживается Joomla 4.2.7 и выше.

В пакет входят:
- библиотека Webtolk/Cdekapi
- системный плагин System - WT Cdek для хранения настроек и AJAX-интеграций
- task-плагин Task - Update WT Cdek data для обновления локальных копий справочников CDEK по расписанию
- web asset с официальным JavaScript-виджетом СДЭК

👉 v.1.3.0. Что нового?
- Полный рефакторинг библиотеки. Библиотека переработана в entity-based API с фасадом Cdek и отдельным слоем запросов. Обратная совместимость не нарушена, поэтому версия библиотеки - 1.3.0.
- Добавлена поддержка новых разделов API СДЭК. Добавлена поддержка новых разделов API СДЭК: webhooks, prealert, печатные формы, payment, passport, reverse, intakes и других сущностей.
- Улучшена интеграция с Joomla.
Улучшена интеграция с Joomla: installer script для layouts, новые поля Joomla Form для тарифов и обновлённые js виджета CDEK.
- документация библиотеки. Все методы библиотеки подробно описаны, а так же текст документации собран в отдельной папке в git репозитории и будет опубликован на сайте.

Библиотека эта нужна для разработчиков, создающих свои расширения для интеграции Joomla и курьерской службы CDEK.

Страница расширения
GitHub расширения

@joomlafeed

0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 2187 Просмотров
*

White_Tiger

  • Захожу иногда
  • 88
  • 3 / 0
Господа товарищи. Я видимо что-то не догоняю в работе Joomla, но у меня вот таков интересный затык.
Захотелось отловить вновь создаваемые модули время когда они создались и т.д. типа чтобы вывести пользователю сайта небольшой блок "изменения на сайте". Для данной цели, решил написать триггер (поскольку штатных методов заставить Joomla хранить даты создания/модификации модулей не нашёл):
Код
CREATE TRIGGER `jm_modules_after_insert`
AFTER INSERT ON `jm_modules`//табла создающаяся Joomla и хранящая инфу о всех модулях
FOR EACH ROW BEGIN
insert into modify_modul (mod_id) //типа затолкнуть айдишник вновь созданного модуля в мою собственную табличку
values (new.id);
END;
после этого создание любых модулей стало невозможным, после жмяканья "сохранить" Joomla выводит следующую ошибку:
"Header may not contain more than a single header, new line detected in Z:\home\172.16.13.77\www\libraries\joomla\application\web.php on line 960".
Что это за радость может быть? Триггер же работает вроде как после работы скрипта и не должен ему никак мешать. подскажите что это такое?
*

almika

  • Захожу иногда
  • 325
  • 27 / 0
Re: Ошибка при создании модуля
« Ответ #1 : 29.01.2016, 02:00:25 »
У меня на хостинге триггеры и хранимые процедуры не поддерживаются. Может у вас тоже с этим связана ошибка.
*

White_Tiger

  • Захожу иногда
  • 88
  • 3 / 0
Re: Ошибка при создании модуля
« Ответ #2 : 29.01.2016, 08:11:08 »
Может быть. А как проверить не подскажете?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка при создании модуля
« Ответ #3 : 29.01.2016, 09:33:00 »
Новая строка в header, скорее всего, при redirect. Сделайте плагин на событие onExtensionAfterSave.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

White_Tiger

  • Захожу иногда
  • 88
  • 3 / 0
Re: Ошибка при создании модуля
« Ответ #4 : 01.02.2016, 13:12:10 »
Уважаемый Роберт!
Плагины писать в общем и целом я научился, вот только... не так давно ковыряюсь в Joomla да и PHP в целом. Подскажите пожалуйста, а где хранятся параметры создаваемых материалов/модулей. Я так понимаю эта какая-нибудь служебная переменная-массив существующая только внутри какого-нибудь класса и только пока идёт работа с материалом/модулем? Мне бы как-то её перехватить и забрать из неё некоторые данные.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Ошибка при создании модуля
« Ответ #5 : 01.02.2016, 13:31:30 »
Уважаемый Роберт!
Плагины писать в общем и целом я научился, вот только... не так давно ковыряюсь в Joomla да и PHP в целом. Подскажите пожалуйста, а где хранятся параметры создаваемых материалов/модулей. Я так понимаю эта какая-нибудь служебная переменная-массив существующая только внутри какого-нибудь класса и только пока идёт работа с материалом/модулем? Мне бы как-то её перехватить и забрать из неё некоторые данные.
Параметры хранятся в базе, обычно в колонке params. Для материалов это таблица com_content, для модулей - com_modules.
*

White_Tiger

  • Захожу иногда
  • 88
  • 3 / 0
Re: Ошибка при создании модуля
« Ответ #6 : 01.02.2016, 14:07:36 »
Дмитрий, я это знаю, но туда они ссыпаются уже после создания/модификации материала/модуля. Как потом искать там нужный остаётся загадкой. Теоретически можно, конечно, селектнуть последний обновлённый материал, но это как-то похоже на костыль, а для модулей там вообще не хранится время создания/обновления. Хотелось бы ещё в момент работы отловить IDшник модуля/материала.
Суть-то в чём. Хочется научить сайт выводить на главной странице данные о любых обновлениях. Для материала это несложно, всё хранится в базе включая дату обновления. С модулями всё обстоит сложнее, в БД о них мало информации. Решил просто создать свою табличку куда бы ссыпалось ID изменённого объекта, время когда это было и его тип (модуль или материал). Попытался написать триггер, но созданный триггер обрушил работу модулей (с этого начинается созданная тема), мне посоветовали создать плагин, вот я и ковыряюсь.
Возможно Вы сможете подсказать ещё более простое и изящное решение, буду благодарен. А пока я ищу переменную хранящую информацию об обрабатываемом объекте.
И да, отдельное Вам спасибо, за серию статей https://cmscafe.ru/docs/joomla/developer/plugin-joomla-2-5-joomla-3. Они меня научили мастерить плагины. ^-^
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Ошибка при создании модуля
« Ответ #7 : 01.02.2016, 14:33:46 »
Все данные о расширениях находятся в таблице #__extensions. Для отслежения их измениений можно написать плагин на события onExtensionAfterInstall, onExtensionAfterUpdate, onExtensionAfterUninstall. Для более детальной информации посмотреть класс JInstaller.
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывести дату завершения публикации модуля publish_down

Автор theflame

Ответов: 7
Просмотров: 4902
Последний ответ 06.10.2017, 12:46:30
от NewUsers
вывести данные из модуля с формой Subform form field type

Автор Glog

Ответов: 19
Просмотров: 2566
Последний ответ 22.06.2017, 13:32:07
от Glog
Ошибка при попытке получить параметры активного пункта меню в контроллере компонента

Автор Inoken

Ответов: 10
Просмотров: 2202
Последний ответ 19.06.2017, 14:29:22
от dmitry_stas
Зависимость модуля от компонента и страницы

Автор Тренд

Ответов: 34
Просмотров: 3548
Последний ответ 16.06.2017, 19:48:39
от dmitry_stas
Com_contact как получить Email из модуля

Автор tystnaden

Ответов: 4
Просмотров: 1678
Последний ответ 16.12.2015, 19:50:42
от tystnaden