Новости Joomla

Свои типы полей в Joomla.

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

Это большая тема, о которой можно говорить очень много. Самое главное, что возможности применения ограничиваются только вашей больной фантазией. Вы строите интерфейс своего модуля или плагина и вам нужно подтянуть данные из сторонней системы (список чего-нибудь по какому-нибудь API), чтобы сохранить выбранный id в Joomla. Или сделать какую-то проверку и в зависимости от неё показать то или иное сообщение пользователю. Для этого подойдут свои пользовательские типы полей. Интерфейс Joomla по большей части описан в XML-файлах. У каждого из них свои параметры. Некоторые не описаны в документации (manual.joomla.org), поэтому самым любопытным будет полезно заглянуть в собственно файлы фреймворка по пути

libraries/src/Form/FormField.php, а так же в
libraries/src/Form/Fields. У каждого класса поля перечислены его специфические свойства, которые можно описывать в XML. А в своём типе поля вы можете устанавливать эти значения программно. В моём модуле WT Quick links под капотом происходят изменения. Теперь для работы (в админке) ему нужен вспомогательный плагин. А в самом модуле нам бы проверить, а не выключен ли он? В Joomla есть тип поля Note - заметка. Его можно использовать для вывода примечаний.

<field type="note" name="your_note_for_user" label="Заголовок примечания" title="Альтернативный способ для заголовка" description="Текст примечания" class="col-12 alert alert-info" heading="h1" close="true" />

heading - указывать уровень заголовка.
close - позволяет закрыть это примечание. В классе поля
libraries/src/Form/Field/NoteField.php описана логика вывода. И в принципе оно нам подходит для нашей задачи. Но оно будет выводить сообщение всегда, а нам нужно только тогда, когда плагин отключён. Поэтому берём и создаём свой класс поля, который мы унаследуем от
NoteField. Это значит, что у нас в руках будет весь инструментарий стандартного поля
Note + то, что мы сами добавим. В XML-манифест добавляем наше поле

<field type="systempluginstatus" name="systempluginstatus" addfieldprefix="Joomla\Module\Wtquicklinks\Site\Fields"/>

-

type - имя файла и класса,-
addfieldprefix - указываем namespace к нашему классу, может быть любой нам нужный-
name - нельзя полю без имени...Это означает, что Joomla будет использовать класс поля из файла
modules/mod_wt_quick_links/src/Fields/SystempluginstatusField.php.А в классе поля будет написано следующее:

<?php // namespace для атрибута addfieldprefix namespace Joomla\Module\Wtquicklinks\Site\Fields; // нельзя напрямую обращаться к этому файлу defined('_JEXEC') or die; // подключаем родительский класс для переопределения use Joomla\CMS\Form\Field\NoteField; use Joomla\CMS\Language\Text; use Joomla\CMS\Plugin\PluginHelper; // имя класса и имя файла точь-в-точь class SystempluginstatusField extends NoteField { protected $type = 'Systempluginstatus'; protected function getLabel() { // если плагин не включён if(PluginHelper::isEnabled('system','wtquicklinks')) { // меняем свойства родительского класса $this->class = 'alert alert-danger w-100'; $this->element['label'] = '⚠️ А-а-а-а!'; $this->element['description'] = 'Плагин не включён!!'; // и просто рендерим его с нашими свойствами return parent::getLabel(); } // А иначе всё хорошо, скрываем поле из виду. $this->parentclass = 'd-none'; return ''; } }

Просто и удобно. И людям приятно, что о них позаботились и рассказали почему что-то не работает. @webtolkru#joomla #php #webdev #разработка

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

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
31.12.2008
SQL-инъекция в Joomla mDigg
Удаленный пользователь может выполнить произвольные SQL команды на системе.

31.12.2008
SQL-инъекция в Joomla Live Ticker
Удаленный пользователь может выполнить произвольные SQL команды на системе.

31.12.2008
SQL-инъекция в Joomla PaxGallery
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
11.01.2009
Joomla com_phocadocumentation (id) Remote SQL Injection Exploit
Цель: Joomla com_phocadocumentation
Воздействие: SQL-инъекция

11.01.2009
Joomla com_na_newsdescription (newsid) SQL Injection Exploit
Цель: Joomla com_na_newsdescription
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
12.01.2009
Обход каталога в Joomla! <= 1.5.8
Удаленный пользователь может получить доступ к важным данным на системе.
Решение: Установите последнюю версию 1.5.9 с сайта производителя.

12.01.2009
Joomla <= 1.5.8 (xstandard editor) Local Directory Traversal PoC
Цель: Joomla 1.5.8 и более ранние версии
Воздействие: Раскрытие данных
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
14.01.2009
Joomla com_jashowcase (catid) Remote SQL Injection Exploit
Цель: Joomla com_jashowcase
Воздействие: SQL-инъекция

14.01.2009
Joomla com_xevidmegahd (catid) Remote SQL Injection Exploit
Цель: Joomla com_xevidmegahd
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
26.01.2009
SQL-инъекция в Joomla JA Showcase
Удаленный пользователь может выполнить произвольные SQL команды на системе.

26.01.2009
Joomla com_Eventing 1.6.x Blind SQL Injection Exploit
Цель: Joomla com_Eventing 1.6.x
Воздействие: SQL-инъекция
« Последнее редактирование: 02.02.2009, 10:10:48 от Physicist »
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
28.01.2009
SQL-инъекция в Joomla Fantasy Tournament
Удаленный пользователь может выполнить произвольные SQL команды на системе.

28.01.2009
Joomla com_pccookbook (recipe_id) Blind SQL Injection Exploit
Цель: Joomla com_pccookbook
Воздействие: SQL-инъекция

28.01.2009
Joomla com_waticketsystem Blind SQL Injection Exploit
Цель: Joomla com_waticketsystem
Воздействие: SQL-инъекция

28.01.2009
Joomla Com BazaarBuilder Shopping Cart Software v.5.0 SQL Injection Exploit
Цель: Joomla Com BazaarBuilder Shopping Cart Software v.5.0
Воздействие: SQL-инъекция

28.01.2009
Joomla com_pcchess (game_id) Blind SQL Injection Exploit
Цель: Joomla com_pcchess
Воздействие: SQL-инъекция
« Последнее редактирование: 02.02.2009, 10:11:17 от Physicist »
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
30.01.2009
SQL-инъекция в Joomla RD-Autos
Удаленный пользователь может выполнить произвольные SQL команды на системе.

30.01.2009
SQL-инъекция в Joomla Eventing
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
03.02.2009
SQL-инъекция в Joomla! WebAmoeba Ticket System
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
09.02.2009
SQL-инъекция в Joomla! BazaarBuilder Shopping Cart
Удаленный пользователь может выполнить произвольные SQL команды на системе.

09.02.2009
SQL-инъекция в Joomla Flash Magazine Deluxe
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
17.03.2009
SQL-инъекция в Joomla DigiStore
Удаленный пользователь может выполнить произвольные SQL команды на системе.

17.03.2009
Joomla com_carman 2.x (Itemid) Remote SQL Injection Exploit
Цель: Joomla com_carman 2.x
Воздействие: SQL-инъекция

17.03.2009
Joomla com_reservation (Itemid) Remote SQL Injection Exploit
Цель: Joomla com_reservation
Воздействие: SQL-инъекция

18.03.2009
SQL-инъекция в Joomla Search and Archive
Удаленный пользователь может выполнить произвольные SQL команды на системе.

18.03.2009
Joomla com_ijoomla_archive Blind SQL Injection Exploit
Цель: Joomla com_ijoomla_archive 2.x
Воздействие: SQL-инъекция

29.04.2009
Межсайтовый скриптинг в Joomla!
Удаленный пользователь может произвести XSS нападение.
Решение: Установите последнюю версию 1.5.10 с сайта производителя.

29.04.2009
Инклюдинг локальных файлов в Joomla Messaging
Удаленный пользователь может получить доступ к важным данным на системе.

29.04.2009
SQL-инъекция в Joomla RD-Autos
Удаленный пользователь может выполнить произвольные SQL команды на системе.

08.05.2009
Joomla Component rsmonials Remote Cross Site Scripting Exploit
Цель: Joomla Component rsmonials
Воздействие: Межсайтовый скриптинг

08.05.2009
Межсайтовый скриптинг в Joomla RS-Monials
Удаленный пользователь может произвести XSS нападение.

28.05.2009
Joomla com_gsticketsystem (catid) Blind SQL Injection Exploit
Цель: Joomla com_gsticketsystem
Воздействие: SQL-инъекция

28.05.2009
Joomla Casino 0.3.1 Multiple SQL Injection Exploits
Цель: Joomla Casino 0.3.1
Воздействие: SQL-инъекция

04.06.2009
Joomla Component Seminar 1.28 (id) Blind SQL Injection Exploit
Цель: Joomla Component Seminar 1.28
Воздействие: SQL-инъекция

05.06.2009
Межсайтовый скриптинг в Joomla!
Удаленный пользователь может произвести XSS нападение.
Решение: Установите последнюю версию 1.5.11 с сайта производителя.

12.06.2009
Инклюдинг локальных файлов в Joomla! MooFAQ
Удаленный пользователь может получить доступ к важным данным на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
08.07.2009
SQL-инъекция в iJoomla RSS Feeder
Удаленный пользователь может выполнить произвольные SQL команды на системе.

08.07.2009
iJoomla RSS Feeder Blind SQL Injection Exploit
Цель: com_ijoomla_RSS
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
09.07.2009
SQL-инъекция в Joomla Jumi
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
20.08.2009
Обход ограничений безопасности в Joomla! "com_mailto" (версии до 1.5.14)
Удаленный пользователь может обойти некоторые ограничения безопасности.
*

oppo

  • Захожу иногда
  • 365
  • 82 / 8
  • ΨΨΨ я - УКРАЇНЕЦЬ
20.08.2009
Обход ограничений безопасности в Joomla! "com_mailto" (версии до 1.5.14)
Удаленный пользователь может обойти некоторые ограничения безопасности.
пугает что эту штуковину я вижу во фронте components\com_mailto\ и ссылка
солюшен -Upgrade to latest Joomla! version (1.5.7 or newer).
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
01.09.2009
SQL-инъекция в Joomla DigiFolio
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

john-pro

  • Осваиваюсь на форуме
  • 11
  • 1 / 0
этот бесполезный компонент меня аж бесит :-X
com_mailto
даже незарегистрированному пользователю можно слать хоть кому письма на любые емаил ОТ моего сервера и ещё при этот указывать в заголовке всё что захочешь
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
даже незарегистрированному пользователю можно слать хоть кому письма на любые емаил ОТ моего сервера и ещё при этот указывать в заголовке всё что захочешь
Это можно делать любыми средствами, три строки на php и на крон повесить рассылку спама, подделать заголовки письма очень просто.
Но - разве в этом компоненте есть уязвимость, позволяющая узнавать email пользователей сайта? По моему нет, соответственно претензия не в счет
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
02.09.2009
Joomla Component com_pinboard (task) SQL Injection Exploit
Цель: Joomla com_pinboard
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
08.09.2009
SQL-инъекция в Joomla Joomlub
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
10.09.2009
SQL-инъекция в Joomla Joomloc
Удаленный пользователь может выполнить произвольные SQL команды на системе.

10.09.2009
Joomla Component BF Survey Pro Free SQL Injection Exploit
Цель: Joomla Component BF Survey Pro Free
Воздействие: SQL-инъекция

10.09.2009
Joomla Component TPDugg 1.1 Blind SQL Injection Exploit
Цель: Joomla Component TPDugg 1.1
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
21.09.2009
SQL-инъекция в Joomla DJ-Catalog
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
22.09.2009
SQL-инъекция в foobla Suggestions for Joomla
Удаленный пользователь может выполнить произвольные SQL команды на системе.

22.09.2009
Joomla Component com_jlord_rss (id) Blind SQL Injection Exploit
Цель: Joomla Component com_jlord_rss
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
28.09.2009
SQL-инъекция в Joomla Jreservation
Удаленный пользователь может выполнить произвольные SQL команды на системе.

28.09.2009
Joomla Component com_jreservation 1.5 (pid) Blind SQL Injection Exploit
Цель: Joomla Component com_jreservation 1.5
Воздействие: SQL-инъекция
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
06.10.2009
SQL-инъекция в Joomla Integrated Newsletter
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
07.10.2009
SQL-инъекция в Joomla Survey Manager
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
29.10.2009
SQL-инъекция в Joomla CB Resume Builder
Удаленный пользователь может выполнить произвольные SQL команды на системе.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
02.11.2009
Бекдор в Joomla Jumi
Удаленный пользователь может скомпрометировать целевую систему.
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Скажите, а как подписаться на рассылку уведомлений о появлении новых уязвимостей? На сайте SecurityLab.ru я этог не нашел (там другие подписки)
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
Скажите, а как подписаться на рассылку уведомлений о появлении новых уязвимостей? На сайте SecurityLab.ru я этог не нашел (там другие подписки)

Там есть подписка на новости сайта, нужно подписаться именно на нее.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
16.11.2009
Несколько уязвимостей в Joomla!
Удаленный пользователь может получить доступ к важным данным и изменить некоторые данные в приложении.
Программа: Joomla! версии до 1.5.15
Опасность: Низкая
Решение: Установите последнюю версию 1.5.15 с сайта производителя.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как выявить вредоностный код на CMS Joomla?

Автор stud_pro

Ответов: 1
Просмотров: 1841
Последний ответ 23.04.2024, 10:06:10
от wishlight
Вирус редирект или взлом с редиректом Joomla 3.10

Автор Wany205

Ответов: 1
Просмотров: 2487
Последний ответ 25.05.2023, 08:49:57
от Театрал
Скрипты защиты Joomla 4

Автор mister_boy

Ответов: 6
Просмотров: 2490
Последний ответ 16.05.2023, 16:38:58
от mister_boy
Поставил Joomla 4. Хостинг nic.ru стал ругаться на ошибки безопасности

Автор Oleg+

Ответов: 5
Просмотров: 2059
Последний ответ 13.09.2021, 09:23:28
от Oleg+
Joomla 1.5 и 2.5 на одном хостинге

Автор andreU

Ответов: 28
Просмотров: 14168
Последний ответ 25.04.2021, 19:42:48
от rsn