Выбор аватара gravatar || photo || noimage

Всем привет. Меня интересует вопрос по аватаркам для пользователей.
У меня стоят Tickets, Hybridauth и Login.
Сейчас я делаю личный кабинет и мне нужно чтобы у пользователя была аватарка, но не синий квадрат с Gravatar.
В общем суть вопроса (алгоритм):
1- Если у пользователя нет авы в Gravatar и нет привязанного аккаунта (Hybridauth) с фоткой, то выводить мою загруженную картинку noimage.
2- Если пользователь зарегистрирован и зашел через соц.сеть (HybridAuth), то выводить его аву из соцсети.
3- Если у пользователя есть ава в gravatar, то выводить её.

В общем нужно чтобы фотка была либо если есть из граватара, либо из соцсети, либо уже моя noimage.

Сейчас я использую такой вывод изображения (нашел на форуме), но это не покрывает условие №3:
<img class="avatar" src="[[+photo:is=``:then=`[[++rb_base_dir]]img/nophoto.png`:else=`[[+photo]]`]]" />
А это не покрывает условие №1:
<img src="[[+gravatar]]?s=100&d=[[+photo]]" />
Можно ли изменить вывод авы в сниппете, чтобы все эти проверки происходили в нем, а здесь просто плэйсхолдер с размером оставить?
Виталий Барышников
26 ноября 2015, 12:33
modx.pro
1
1 392
0

Комментарии: 7

Илья Уткин
26 ноября 2015, 18:49
1
+2
<img src="[[+gravatar]]?s=100&d=[[+photo:default=`[[++rb_base_dir]]img/nophoto.png`]]" />
    Виталий Барышников
    27 ноября 2015, 02:44
    0
    Я тоже над такой конструкцией думал, но почему-то параметры не обработаны, вывод такой:
    <img src="https://gravatar.com/avatar/79b89f7cd29ea0ef728ba8796fa2bfd3?s=100&d=/assets/templates/online/img/nophoto.png" />
      Илья Уткин
      27 ноября 2015, 10:13
      +2
      <img src="[[+gravatar]]?s=100&d=[[++site_url]][[+photo:default=`[[++rb_base_dir]]img/nophoto.png`]]" />
      А в каком смысле «параметры не обработаны»?
        Виталий Барышников
        27 ноября 2015, 10:57
        0
        Я думал, что в том выводе выше параметры вывелись
        ....?s=100&d=.....
        , а плейсхолдеры подставились. Спасибо, Илья, работает всё.
    Abu
    Abu
    20 декабря 2015, 09:13
    0
    Не пойму каким образом тут вообще изображение из соцсети берутся. Имеются в виду фото из modx профиля, граватар и дефолтная картинка?
      Виталий Барышников
      23 декабря 2015, 10:18
      0
      Ну из соцсети их дергает HybridAuth кажется, и добавляет к профилю modx.
        Abu
        Abu
        23 декабря 2015, 19:58
        +1
        Не добавляет. Василий тут предложил решать такие задачи плагином. Добавил свое решение туда же.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7