Новости Joomla

Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list

👩‍💻 Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list.При работе над плагином возникла необходимость указать стандартный набор из нескольких элементов стандартного поля списка. И хотелось указать их в стандартном же атрибуте default для полей. Когда это нужно?Когда Ваши пользователи устанавливают плагин и НЕ заходят в настройки - в коде вы можете использовать значения по умолчанию с помощью класса Registry (писал об этом ранее) и всегда быть уверенным, что хоть какие-то жизненно необходимые параметры к вам придут всегда. 🧐 Но как сделать то же самое для интерфейса админки?Пользователя нужно направлять, предлагать очевидный работоспособный сценарий для начала, а дальше он уже сам разберется. Когда человек заходит в параметры свежеустановленного плагина в Form ещё нет данных и параметры по умолчанию выставляются из атрибутов default в xml-полях.
<field name="showdesc" type="radio"                       label="PLG_CFI_PARAM_SHOWDESC"                       class="btn-group btn-group-yesno"                       default="1">                    <option value="0">JNO</option>                    <option value="1">JYES</option>                </field>
Здесь по умолчанию будет включено "Да". И если пользователь не переключит параметр, то при сохранении мы ожидаемо получим "да" в params плагина.Для поля списков type=&quot;list&quot; можно указать значение по умолчанию и многие знают, что его можно указать только одно.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default="id"                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
Но у нас поле с множественным выбором (атрибут multiple) и хотелось бы указать несколько значений по умолчанию...Оказывается, так можно сделать. Для этого в атрибуте default нужно указать json с нужными параметрами в виде {int}key : {string} value.Например, default='{"0":"id","1":"title"}'.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default='{"0":"id","1":"title"}'                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
⚠️ Обратите внимание на кавычки! Поскольку json_decode не понимает одинарные кавычки собственно json нужно писать с двойными, а значение для атрибута default писать в одинарные.🙏 За подсказанное решение огромное спасибо участникам нашего сообщества - разработчикам Дмитрию Васюкову (@fictionlabs) и Игорю Бердичевскому (@septdir).@joomlafeed#joomla #разработка #webdev #development

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

Zombeee

  • Захожу иногда
  • 328
  • 55 / 3
Чет какую бы временную зону в админке не стаил, у меня ничего не меняется и вообще не не совсем понятно, как она работает, она прибавляется к временной зоне Joomla или всё-таки к времени сервера... короче я как-то так и не смог добиться, что бы у меня на сайте время совпадало с локальным временем... Кто-нить проверял функцию времени в социалке? Как настраивать?
« Последнее редактирование: 17.10.2010, 19:00:04 от kharol »
*

Darknemo

  • Захожу иногда
  • 223
  • 2 / 0
Re: Временная зона JomSocial
« Ответ #1 : 04.03.2010, 18:06:29 »
Ты когда временную зону меняешь, ты где сравниваешь? Если в ленте активности, то старая активность скорее всего не меняется.. После изменения попробуй что нибудь написать, какой нибудь коммент.. и проверь..
*

PashkaRu

  • Давно я тут
  • 941
  • 91 / 4
  • Дедушка Игнат, изыди ((((
Re: Временная зона JomSocial
« Ответ #2 : 07.03.2010, 16:58:14 »
да-да, это один из дурацких моментов, что там ничего не меняется : )
я тоже как-то долго мучился, пока до меня это не доперло : ))
+
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Re: Временная зона JomSocial
« Ответ #3 : 13.10.2010, 01:32:48 »
Со смещением во времени не разбирался. Понял только, что в последних сборках, начиная от 1.8.9, в DST авто-переходы на летнее зимнее время совсем убрали. Видимо отсюда глюки и были с приращением в один час.

Следующий момент:
Тем кому не нравится отображение времени в ленте активности в формате 12H, можно изменить на свое, удобное для вашей социальной сети время.
Для этого через phpMyAdmin в таблице:
jos_community_config
нужно изменить формат,
вместо:
activitiestimeformat=%I:%M %p
например, на такой:
activitiestimeformat=%H:%M:%Y
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

cygun

  • Захожу иногда
  • 116
  • 3 / 0
Огромное спасибо ))) +
*

deners

  • Захожу иногда
  • 117
  • 2 / 0
Со смещением во времени не разбирался. Понял только, что в последних сборках, начиная от 1.8.9, в DST авто-переходы на летнее зимнее время совсем убрали. Видимо отсюда глюки и были с приращением в один час.

Следующий момент:
Тем кому не нравится отображение времени в ленте активности в формате 12H, можно изменить на свое, удобное для вашей социальной сети время.
Для этого через phpMyAdmin в таблице:
jos_community_config
нужно изменить формат,
вместо:
activitiestimeformat=%I:%M %p
например, на такой:
activitiestimeformat=%H:%M:%Y

я поменял именно как вы тут указали... и получилось что то странное:
http://www.partyplanet.ee

какая то беда: 16:57:2010 вот так теперь выглядит(((
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Ну выберите подходящий для себя формат. Например: %H:%M:%S
Подробнее о формате времени и даты
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

deners

  • Захожу иногда
  • 117
  • 2 / 0
Ну выберите подходящий для себя формат. Например: %H:%M:%S
Подробнее о формате времени и даты

спасибо! сделано)
*

Lama

  • Захожу иногда
  • 108
  • 2 / 0
Со смещением во времени не разбирался. Понял только, что в последних сборках, начиная от 1.8.9, в DST авто-переходы на летнее зимнее время совсем убрали. Видимо отсюда глюки и были с приращением в один час.

Следующий момент:
Тем кому не нравится отображение времени в ленте активности в формате 12H, можно изменить на свое, удобное для вашей социальной сети время.
Для этого через phpMyAdmin в таблице:
jos_community_config
нужно изменить формат,
вместо:
activitiestimeformat=%I:%M %p
например, на такой:
activitiestimeformat=%H:%M:%Y
и от меня спасибо и "+"
Правда использовал я это в компоненте "Семинар для Joomla!"  *DRINK*
*

Darknemo

  • Захожу иногда
  • 223
  • 2 / 0
Не могу понять, в общих настройках у меня стоит Moscow - часовой пояс, а в социалке DST указано "3" - я так понимаю это тоже часовой пояс.. (+3), но время в социалке все равно отстает на 3 часа.. где менять так и не нашел..

Joomla 1.6 / JS 2.2
*

kharol

  • Moderator
  • 1721
  • 217 / 0
 DST - это учет перехода на летнее время. Установите его = "0"
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

Annaweb

  • Захожу иногда
  • 242
  • 3 / 0

Тем кому не нравится отображение времени в ленте активности в формате 12H, можно изменить на свое, удобное для вашей социальной сети время.
Для этого через phpMyAdmin в таблице:
jos_community_config
нужно изменить формат,
вместо:
activitiestimeformat=%I:%M %p
например, на такой:
activitiestimeformat=%H:%M:%Y

а чтобы изменить в личных сообщениях где нужно поправить?..
*

kharol

  • Moderator
  • 1721
  • 217 / 0
А что там в личных сообщениях не так?
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

Annaweb

  • Захожу иногда
  • 242
  • 3 / 0
А что там в личных сообщениях не так?

Время

вместо 23 - 11 и т.п.
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Какая версия компонента у Вас? Лично у меня в личных сообщениях дата указывается так: 31.08.2011 22:01
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

Annaweb

  • Захожу иногда
  • 242
  • 3 / 0
Какая версия компонента у Вас? Лично у меня в личных сообщениях дата указывается так: 31.08.2011 22:01

Версия: 2.0.6
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Ох, я думаю Вам проще обновиться, ибо после этой версии столько ошибок было исправлено и различных модификаций кодов сделано.
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

AlexAl

  • Захожу иногда
  • 309
  • 13 / 0
может кто знает почему дата не отображается
*

kharol

  • Moderator
  • 1721
  • 217 / 0
может кто знает почему дата не отображается[/URL]
Это потому что Вы используете версию с ошибкой. Очевидно 2.2.1-2.2.3
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

Torri30

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Подскажите, а отставание на 2часа времени в социалке от времени сервера (в других компонентах со временем все нормально) - это тоже ошибка версии компонента? (сейчас JomSocial 2.2.2)
*

Torri30

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Да, оказалось,что это и был косяк версии компонента  ^-^
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Регистрация и Авторизация в JomSocial - проблемы, вопросы

Автор AlexAl

Ответов: 294
Просмотров: 83326
Последний ответ 15.05.2019, 16:08:31
от AdWeb
Подключение JomSocial к Amazon S3 | Нужна помощь?

Автор Wassup

Ответов: 14
Просмотров: 9226
Последний ответ 07.04.2019, 09:38:31
от powerful888
Как изменить поля регистрации в JomSocial?

Автор 1ncom1ng

Ответов: 7
Просмотров: 7043
Последний ответ 29.03.2019, 01:03:37
от DomBeri
Письма уведомления от JomSocial

Автор coder-max

Ответов: 84
Просмотров: 21824
Последний ответ 12.01.2017, 18:07:39
от FitMe
Вопросы по настройке JomSocial

Автор evteev

Ответов: 37
Просмотров: 20051
Последний ответ 17.07.2015, 00:34:21
от belperson