Новости Joomla

Joomla 6: Автоматические обновления ядра в Joomla

Joomla 6: Автоматические обновления ядра в Joomla

👩‍💻 Joomla 6: Автоматические обновления ядра в Joomla. В октябрьском номере официального журнала Joomla - Joomla Community Magazine вышла статья David Jardin, где рассказывается о внедрении функционала автоматического обновления ядра Joomla.❓Почему сейчас? Joomla же жила как-то 20 лет без автоматических обновлений?Это оказалась самая востребованная за последнее время от пользователей Joomla функция. Но, основная причина внедрения - проблемы безопасности. Всякий раз, когда в новой версии Joomla устраняется уязвимость, злоумышленники начинают анализировать код, чтобы выяснить, какая именно уязвимость была исправлена. И как только они это выясняют - начинается разработка автоматизированных скриптов для взлома как можно большего количества сайтов. Затем доступы к автоматически взломанным сайтам продаются в профильных чатах и ресурсах "пачками" по несколько сотен тысяч или миллионов сайтов. Ваш сайт могли взломать несколько лет назад, но воспользоваться уязвимостью могут не сразу, а тогда, когда у злоумышленников возникнет необходимость. И только после этого вы может быть узнаете об этом.Анализ патча, понимание проблемы и разработка скрипта требуют времени. И если владелец сайта не обновит его до истечения этого срока, сайт может быть взломан. А хакеры действуют быстро! Для критических, легко эксплуатируемых уязвимостей речь идёт о временном окне в 10–12 часов — и этого времени явно недостаточно, чтобы все успели обновить свои сайты.Здесь выходят на первый план автоматизированные обновления: проект Joomla теперь может активно устанавливать обновления (и, следовательно, исправления безопасности) на сайты, чтобы гарантировать, что сайты действительно обновляются вовремя.🕘 От первых идей до реализации прошло 5 лет. И здесь можно вспомнить, как в Joomla 5.1 внедрили TUF - The Update Framework, позволяющий устанавливать защищённое соединение между сайтом и сервером обновлений и исключает возможность supply chain attack (атаки на цепочку поставок).Об особенностях реализации и требованиях к сайту читаем подробнее в статье на JCM.@joomlafeed#joomla #secutiry #jcm

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™. Интервью с волонтёрами 🎈Ну что, друзья, вот и настал этот долгожданный момент. Мы выпустили первое издание собственного журнала под эгидой NorrNext, который включает в себя интервью с видными деятелями сообщества из разных стран и континентов.Общий нарратив: показать, что нас объединяет (Joomla) и узнать больше о людях, которые вносят свой вклад в развитие платформы в своих сообществах. 20 лет — это много. Давайте же узнаем о коллегах 🎁 Первый цикл включает такие страны, как Австрия, Испания, Латвия, Россия, Румыния, Тайланд, Черногория, Чехия.⚙️ С кем интервью: ✔️ Владимир Елисеев 🇷🇺✔️ Дмитрий Рекун 🇱🇻✔️ Дмитрий Цымбал 🇷🇺✔️ Евгений Сивоконь 🇷🇺 ✔️ Сергей Толкачёв 🇷🇺✔️ Dénes Székely 🇷🇴✔️ Jan Pavelka 🇨🇿✔️ Miljan Vujosevic 🇲🇪✔️ Sergio Iglesias 🇪🇸✔️ Sigrid Gramlinger 🇦🇹✔️ Pisan Chueatchatchai 🇹🇭‼️ Новые интервью будут добавляться до конца декабря 2025. Заходите по ссылке время от времени💡👉 Читать далее

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

mosgaz

  • Захожу иногда
  • 65
  • 12 / 0
Суть вопроса в создании настраиваемого шаблона отправки уведомлений.

Облазил весь форум и документацию по ZOO, спрашивал у Яндекса и Google - результат нулевой.
Но вот что удалось выяснить опытным путем.
 
Тело письма отправки уведомления о новой подаче содержится в шаблоне mail.submission.new.php [файл: media/zoo/applications/{ваше_приложение}/templates/{ваш_шаблон}/mail.submission.new.php]. Рассмотрим последовательность отправки уведомления:

1. SubmissionEvent::saved($event)  [файл: administrator/components/com_zoo/events/submission.php]
2. SubmissionHelper::sendNotificationMail($item, $recipients, $layout)  [файл: administrator/components/com_zoo/helpers/submission.php]
3. AppMail::setBodyFromTemplate($template, $args = array())  [файл: administrator/components/com_zoo/framework/classes/mail.php]

По умолчанию тема письма уведомления формируется следующим образом (в пункте 2):
Код: php
// формируем тему письма
$subject[] = $website_name;
$subject[] = JText::_('Размещена новая');
$subject[] = JText::_('подача №'). $item->id;
$subject = implode(' ', $subject);

// Переопределяем тему письма по умолчанию
$this->setSubject($subject);
Таким же образом можно переопределить любой метод класса JMail. Если подключить шаблон renderer - это все можно будет вынести в настройки полей.

В шаблон mail.submission.new.php передается объект $item,  т.е. в шаблоне мы имеем все данные подачи (элементов), в этом легко убедиться, выведя в вышеупомянутом шаблоне значения поля elements БД:
Код
<?php echo $item->elements; ?>
Если так, то почему бы не сделать отдельный настраиваемый renderer-шаблон для отправки почтового уведомления, где мы сможем выбирать поля, значения которых нам хотелось бы получать на почту [файл: media/zoo/applications/{ваше_приложение}/templates/{ваш_шаблон}/renderer/item/mail.submission.php]

Осталось дело за малым - подключить renderer в шаблоне mail.submission.new.php, создать сам шаблон renderer'а (mail.submission.php) и внести соответствующие изменения в positions.xml. Обычно подключается так:
Код: php
<?php echo $this->renderer->render('item.full', array('view' => $this, 'item' => $this->item)); ?>
Но в шаблоне mail.submission.new.php $this - это класс AppMail (пункт 3).

А теперь, собственно основной вопрос к знатокам ZOO API: как подключить шаблон renderer?
« Последнее редактирование: 20.12.2013, 12:07:04 от mosgaz »
ACER == мусор.
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
А теперь, собственно основной вопрос к знатокам ZOO API: как подключить шаблон renderer?

Знатоки отвечают:
Код: php
// get renderer
$renderer = $this->app->renderer->create('item')->addPath(array($this->app->path->path('component.site:'), $item->getApplication()->getTemplate()->getPath()));
// get view
$view = new AppView(array_merge(array('name' => $item->getApplication()->getGroup(), 'template_path' => $item->getApplication()->getTemplate()->getPath())));
// assign vars
$view->assign('app', $this->app);
$view->assign('item', $item);
echo $renderer->render('item.full', array('view' => $view, 'item' => $item));
Примерно так.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

mosgaz

  • Захожу иногда
  • 65
  • 12 / 0
[...]Примерно так.
Большое спасибо за помощь, сработало.
ACER == мусор.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Заголовки на странице подачи

Автор Mick_20

Ответов: 1
Просмотров: 1287
Последний ответ 13.06.2016, 16:02:38
от Mick_20
Добавление итемов непосредственно через базу данных

Автор tarkasha

Ответов: 0
Просмотров: 1299
Последний ответ 01.12.2014, 13:37:43
от tarkasha
ZOO - мои подачи из нескольких приложений

Автор nastjushka

Ответов: 2
Просмотров: 1475
Последний ответ 31.03.2014, 16:50:22
от aniangeless
Шаблон печати в ZOO

Автор rk3dnp

Ответов: 0
Просмотров: 1232
Последний ответ 27.03.2014, 21:59:55
от rk3dnp
Нужна помощь с Widgetkit, шаблон Revista Nuevo

Автор salem.sakarov

Ответов: 1
Просмотров: 1287
Последний ответ 18.03.2014, 09:04:59
от salem.sakarov