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

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
Добрый вечер!
Такая проблема, в модулях к примеру AlphaUserPoints - Online Users не отображаются аватарки, хотя они загружены.
Единственная страница где они показываются это личный кабинет (профиль) AlphaUserPoints. Во всех остальных местах (страницах) снова пусто
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
а ранее показывалось?
и какая версия АУПа, какая Joomla?
а что показывает?нет картинки или просто не отображает(т.е. показывает квадратик пустой)?
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
Ранее не показывалось, только установил.
AlphaUserPoints 2.0.3, Joomla!, 3.4.5.
Квадратик типа аватарка не загружена (стандартный человечек), а вот в меню профиля все норм, аватарки как надо, какие загружали.
*

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
http://tfitt.ru/
"самые активные" на самом деле аватарки загружены, вот если перейти в мой профиль, то они будут показаны
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
установил себе, точнее модуль активировал, действительно, выводит ноуаватар.
1.Вывод там делает:

            <?php
            echo getAvatar( $useAvatarFrom, $userinfo, 32 );
            ?>   
Совет:(только сейчас увидел):аватарка не кликабельна, следует окружить ссылкой на профиль:

<?php
echo '<a href="'.$profil.'">';
echo getAvatar( $useAvatarFrom, $userinfo, 32 );
echo '</a>';
?>

Я смотрю это во всех модулях такое учудили...Завтра по заменяю.
(а у вас так и ник даже не кликабельный  ::), или вы спец гостям отрубили кликабельность ника?)

<?php
            if ( $user->id || !$user->id && $com_params->get( 'allowGuestUserViewProfil', 1) ){
               echo '<a href="'.$profil.'">'. $usrname . '</a>';
            } else echo $usrname;            
?>

Что касается отображения, чуть позже полажу, немного занят, найду решение-отпишу.
« Последнее редактирование: 29.10.2015, 21:10:27 от vipiusss »
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
http://www.alphaplug.com/index.php/forum/42-alphauserpoints-19x-and-20x/26304-avatar-in-module-only-showing-on-profile-menu-page.html
Разрабы сами без дупля, надо своими силами решать.
Может Migus увидит и подскажет или кто в курсе,"что и почём"!
Постараюсь попробывать тоже.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
Да специально)
Ники активны у зареганых)
За авы верно подмечено, благодарю, мне еще многое узнать предстоит)
Спасибо Вам!
« Последнее редактирование: 29.10.2015, 21:56:56 от lehantrop »
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Я то нашёл где это исправить: /components/com_alphauserpoints/helpers/helpers.php :

function getAvatar( $useAvatarFrom, $userinfo, $height='', $width='', $class='' )
   {      
      $db       = JFactory::getDBO();
      
      $avatar = '';
      
      $setheight = ( $height!='' )? 'height="'.$height.'"' : '';
      $setwidth  = ( $width!=''  )? 'width="'.$width.'"'   : 'width="'.$height.'"';
      
      if ( $width=='' ) $width = $height;      
      


      $defaultAvatarAUP = JURI::root(). 'components/com_alphauserpoints/assets/images/avatars/generic_gravatar_grey.png';

нужно прописать вместо последнего выделенного if дефолт аватар-to это, else ава с линком на профиль+учитывая настройки в админке, запреты гостям и вывод правильный с базы, только что-то не могу раздуплится пока.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
для меня вообще темный лес....((
*

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
Неужели больше никто не сталкивался с проблемой и не нашел решения?
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Не отображаются аватарки в модулях
« Ответ #10 : 08.11.2015, 10:57:00 »
никому это просто не нужно.
щас напишу 1000 др.руб, тупо хлама какие разработчики ироды, даже ссылки не поставили
и готовых решений, которые хаками не катят в ядро компонента.
***
мой код мелкий тоже минихак для авы, но это гониво, ава без ссылки на профиль.имхо
нет готового решения.Разрабы не делали, все просто в профиле спасаются походу, ..... или для себя отдельно мутят и молчат.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

lehantrop

  • Осваиваюсь на форуме
  • 37
  • 1 / 0
Re: Не отображаются аватарки в модулях
« Ответ #11 : 08.11.2015, 18:12:02 »
Не сочтите за наглость...
А не в курсе можно ли сделать, на примере моего сайта, чтобы рядом с ником или авой в комментариях отображался рейтинг пользователя?
Установлен JComments 3.0.5. Или хотя бы что куда надо дописать,
Спасибо
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Не отображаются аватарки в модулях
« Ответ #12 : 08.11.2015, 18:21:49 »
можно.печеньки и скайп утром.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Искаженные аватарки

Автор 321

Ответов: 16
Просмотров: 4548
Последний ответ 21.07.2014, 22:18:49
от 321
Не отображаются картинки рангов

Автор limon142

Ответов: 11
Просмотров: 2102
Последний ответ 06.06.2013, 23:28:21
от migus
Как изменить размер аватарки в профиле?

Автор Сergei

Ответов: 2
Просмотров: 3817
Последний ответ 08.03.2013, 19:30:22
от migus