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

bfox

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Не обнавляется статут в профиле. там есть поле но может быть должна быть кнопка обновить или добавить ?
« Последнее редактирование: 05.02.2010, 16:30:04 от bfox »
*

bfox

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: не работает статус в профиле
« Ответ #1 : 05.02.2010, 16:36:13 »
вот фотка проблемы
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Re: не работает статус в профиле
« Ответ #2 : 05.02.2010, 17:38:57 »
Так а кнопка имеется или нет? Сделайте скрин побольше, пусть неважного разрешения, но чтобы можно было объять глазами более менее страницу. Мне кажется она просто у Вас "заезжает" за какой то слой.
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

bfox

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: не работает статус в профиле
« Ответ #3 : 05.02.2010, 18:58:43 »
просмотрев Google хромов нашел строчку есои удалить то кнопка выползает с просторов бесконечности
body #community-wrap #profile-new-status.inactive #save-status

display: none;

Но она все равно не работает..... хотя модуль поставленный отдельно спокойно меняет статус
*

bfox

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: не работает статус в профиле
« Ответ #4 : 05.02.2010, 19:06:35 »



<div id="profile-new-status" class="inactive">
               <label for="statustext"><?php echo JText::_('CC MY STATUS'); ?></label>
               <textarea name="statustext" id="statustext" class="status" rows="" cols=""></textarea>
               <button id="save-status" class="button"><?php echo JText::_('Save'); ?></button>
</div>
вот это место в шаблоне
« Последнее редактирование: 05.02.2010, 19:11:07 от bfox »
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Re: не работает статус в профиле
« Ответ #5 : 05.02.2010, 19:07:56 »
Ага....
То есть просто-напросто не кликается? Или после обновления не сохраняет данные?
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

bfox

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: не работает статус в профиле
« Ответ #6 : 05.02.2010, 19:12:06 »
я пишу в пространстве все норм жму кликается но ничего не проиходит
*

mikkka

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: не работает статус в профиле
« Ответ #7 : 09.04.2010, 19:50:08 »
Мне не помогло, хотя раньше работало... Не пойму, то ли в версии дело, то ли в других скриптах...
*

sharkman

  • Осваиваюсь на форуме
  • 17
  • 1 / 0
Re: не работает статус в профиле
« Ответ #8 : 09.04.2010, 22:29:29 »
Была такая проблема со статусом из-за плагина mod_up_j1.5, удалил, все заработало.... Поробуйте поотключать модули или плагины, может с чем-то конфликтует....
« Последнее редактирование: 09.04.2010, 22:37:11 от sharkman »
*

mikkka

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: не работает статус в профиле
« Ответ #9 : 09.04.2010, 23:41:34 »
Похоже, дело в jquery, который у меня в шаблоне подключен.
*

Sergeych

  • Захожу иногда
  • 161
  • 25 / 0
Re: не работает статус в профиле
« Ответ #10 : 16.04.2010, 22:24:58 »
имхо проблема в шаблоне САЙТА. У меня такое бывало с некоторыми весьма именитыми шаблонами (joomlart kyanite например - не работает сохранение статуса)... Попробуйте ради эксперимента на минуту включить другой шаблон и проверить - вполне вероятно что под другим шаблоном всё заработает...
*

Archan

  • Новичок
  • 3
  • 1 / 0
Re: не работает статус в профиле
« Ответ #11 : 23.12.2010, 13:15:44 »
С статусом разобрался...он не сохраняется только у тех аккаунтов, которые были заведены до установки JomSocial, если создать нового пользователя...то все у него работает.... ;)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Пропало верхнее меню в профиле

Автор JomTime

Ответов: 6
Просмотров: 2402
Последний ответ 14.01.2013, 19:47:13
от N2uM
как удалить некоторые блоки в профиле

Автор liliya1919

Ответов: 3
Просмотров: 2180
Последний ответ 07.12.2012, 17:35:44
от Mick_20
Хочу отобразить LCPlayer v2.0 в профиле пользователей.

Автор langalier

Ответов: 0
Просмотров: 1529
Последний ответ 04.04.2012, 23:04:16
от langalier
Очки рейтинга в профиле.

Автор ArtemyP

Ответов: 2
Просмотров: 1770
Последний ответ 15.01.2012, 13:21:35
от ArtemyP
Типы профилей-Группы в профиле. Сделать ссылками или возможность вывести в меню.

Автор chernblx

Ответов: 5
Просмотров: 2199
Последний ответ 22.12.2011, 03:38:01
от chernblx