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

boston

  • Захожу иногда
  • 495
  • 222 / 3
Буду 9,10,11 в МСК, хотелось бы встретиться с меcтной братией, давайте может пивка попьём?  ::)  *DRINK*  ::)
« Последнее редактирование: 23.02.2015, 19:43:27 от artlebsak »
Самая новая Joostina 1.3.0.5 UTF-8 stable | О найденных ошибках сообщаем | Расширения Joostina
*

Funkdoobiest

  • Захожу иногда
  • 244
  • 25 / 13
Re: Встреча 10 октября в Москве
« Ответ #1 : 02.10.2009, 11:06:20 »
Я не против :) особенно ближе к вечеру!
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #2 : 02.10.2009, 11:57:59 »
я+1
*

Лат

  • Захожу иногда
  • 85
  • 19 / 6
  • Звоните 8 (905) 778-52-44
Re: Встреча 10 октября в Москве
« Ответ #3 : 02.10.2009, 12:02:22 »
+1 Где?
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Встреча 10 октября в Москве
« Ответ #4 : 02.10.2009, 12:06:45 »
Степана не забудьте с Андреем :)
Жаль сам не успеваю, буду но позже
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #5 : 02.10.2009, 12:11:55 »
+1 9ого.
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Re: Встреча 10 октября в Москве
« Ответ #6 : 02.10.2009, 12:13:43 »
Я тоже в +
Давайте в субботу (ток не особо поздно, ехать назад далековато :( ) или в пятницу вечером, после 19 :)
*

doctorgrif

  • Давно я тут
  • 745
  • 82 / 1
  • Нудный доктор
Re: Встреча 10 октября в Москве
« Ответ #7 : 02.10.2009, 12:17:45 »
Я тоже в +
Давайте в субботу (ток не особо поздно, ехать назад далековато :( ) или в пятницу вечером, после 19 :)
метро до 02:00 же:) уехать можно далеко...
2 boston
привези магнит мне на холодильник с Москвой...
Омск-Екатеринбург-Челябинск...Feldzug gen Westen | Кафедра | GrayBox | Joostina 1.2.1 | Joostina Extensions | In Vino Veritas [в работе]

Re: Встреча 10 октября в Москве
« Ответ #8 : 02.10.2009, 12:29:49 »
Буду 9,10,11 в МСК, хотелось бы встретиться с меcтной братией, давайте может пивка попьём?  ::)  *DRINK*  ::)

Прости  не смогу  в Москву  приехать 
завален  работой
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #9 : 02.10.2009, 12:35:39 »
Прости  не смогу  в Москву  приехать 
завален  работой
Жаль
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #10 : 02.10.2009, 12:35:59 »
лично я за пятницу, так как не знаю, что будет в выходные. Работаю до 18.00, но в центре, так что после 18.00 я готов =)
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Re: Встреча 10 октября в Москве
« Ответ #11 : 02.10.2009, 15:19:22 »
метро до 02:00 же:) уехать можно далеко...

Мне в Жуковский ехать )))) и мню жена прибьет, да и не уеду я никуда в 2 ночи.
Так что я до 21 часа тока гулена, а потом пилить и пилить
*

boston

  • Захожу иногда
  • 495
  • 222 / 3
Re: Встреча 10 октября в Москве
« Ответ #12 : 02.10.2009, 15:21:36 »
В пятницу сложнее, не знаю до сколкьки будет конференция и в каком состоянии оттуда буду уйду )))
Самая новая Joostina 1.3.0.5 UTF-8 stable | О найденных ошибках сообщаем | Расширения Joostina
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #13 : 02.10.2009, 16:20:35 »
если суббота, то когда?
*

Александр Фёдоров

  • Захожу иногда
  • 143
  • 26 / 4
  • Жизнь - удивительная штука
Re: Встреча 10 октября в Москве
« Ответ #14 : 02.10.2009, 22:22:35 »
Я предварительно тоже +1 в субботу (хотя можно и в пятницу).

Дяде Бостону привет от моего семейства :)
Жизненно важный ингредиент успеха — это не знать, что задуманное вами невозможно выполнить. М.Жванецкий
*

bigbrain

  • Захожу иногда
  • 119
  • 3 / 2
Re: Встреча 10 октября в Москве
« Ответ #15 : 04.10.2009, 21:44:19 »
Бостон, ну так что, встреча была?
*

Александр Фёдоров

  • Захожу иногда
  • 143
  • 26 / 4
  • Жизнь - удивительная штука
Re: Встреча 10 октября в Москве
« Ответ #16 : 04.10.2009, 22:08:37 »
bigbrain, назад в будущее?  ^-^

Сегодня еще 4 октября... :)
Жизненно важный ингредиент успеха — это не знать, что задуманное вами невозможно выполнить. М.Жванецкий
*

bigbrain

  • Захожу иногда
  • 119
  • 3 / 2
Re: Встреча 10 октября в Москве
« Ответ #17 : 04.10.2009, 22:46:13 »
Просто Бостон рассказывал про эту встречу на кануне этих выходных и я думал, что она в эти выходные и будет, не посмотрел на дату  ;D

Предлагаю в Му-ме посидеть какой-нибудь, там не дорого и хорошо очень
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #18 : 05.10.2009, 07:31:23 »
му-му - не интересно, нужно топать в 16тонн или туда, куда предложит Lexx (я уже забыл название  ;)), но помню, что когда-то он предлагал отличный вариант с "писидеть, пиво попить" на баррикадной...
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Встреча 10 октября в Москве
« Ответ #19 : 05.10.2009, 10:58:52 »
аааа, Андрей, гад, я тоже хочу в 16тонн, приеду накушаюсь там темного собственного изготовления обязательно
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #20 : 05.10.2009, 15:21:02 »
ээ.. я уже не помню че предлагал :)
но на 16 тонн согласен :)
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #21 : 05.10.2009, 15:44:58 »
Lexx, ты предлагал какой-то паб на баррикадной (кажись), где кабинками все заточено, типа столик внутри кабинки...
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #22 : 05.10.2009, 15:51:24 »
А, точно..
Но ща мне че-то больше идея с 16т  нравится
А еще больше нравится идея завалиться в картинг всем вместе :)
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #23 : 05.10.2009, 16:01:47 »
картинг... хм... у меня 125 сильный карт стоит около дома/работы... лучше по старинке - пиво, пиво, водка, пиво, водка, водка, пиво, кефир (отдельный привет Аусману)...
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #24 : 05.10.2009, 17:58:32 »
твой? :)

Упс.. это ж на этой неделе..


ЗЫ. Как это было в прошлый раз ...
« Последнее редактирование: 05.10.2009, 18:02:41 от Lexx »
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #25 : 05.10.2009, 18:01:57 »
да, купил себе мини-карт... опелём aka snejмобиль зовется =)
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #26 : 05.10.2009, 18:04:31 »
тогда заедем? :)
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Re: Встреча 10 октября в Москве
« Ответ #27 : 05.10.2009, 18:06:13 »
после пива в здание ДПС?
*

bigbrain

  • Захожу иногда
  • 119
  • 3 / 2
Re: Встреча 10 октября в Москве
« Ответ #28 : 05.10.2009, 21:33:35 »
Картинг совсем не вариант, я думал посидим, пообщаемся.
Обсудим актуальные проблемы Джумловодства и перспективы развития Joostina )))

З.Ы. После пива к Артему в Русский дом  ;D
*

Lexx

  • Захожу иногда
  • 239
  • 34 / 1
  • Redsoft рулит
Re: Встреча 10 октября в Москве
« Ответ #29 : 06.10.2009, 00:00:59 »
тогда уж наоборот. сначала к Теме, потом бухать
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

4 июня 2018 встреча в Москве

Автор zikkuratvk

Ответов: 0
Просмотров: 3013
Последний ответ 02.06.2018, 12:49:06
от zikkuratvk
JoomlaNight 15 октября 2013 года в антикафе «Начало» (Москва)

Автор artlebsak

Ответов: 50
Просмотров: 9946
Последний ответ 17.11.2013, 09:19:59
от artlebsak
Встретится в Питере и в Москве

Автор zikkuratvk

Ответов: 3
Просмотров: 4694
Последний ответ 12.07.2013, 08:12:08
от А.В.
Регулярные встречи Joomla в Москве

Автор Лат

Ответов: 1
Просмотров: 4964
Последний ответ 31.05.2013, 14:19:37
от antony2606
Joostina - встреча 2011

Автор boston

Ответов: 22
Просмотров: 9341
Последний ответ 31.05.2011, 13:47:04
от boston