Вывод аватара пользователя — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
Строка 40: Строка 40:
 
Описание всех использованных макросов можно найти в руководстве разработчика:
 
Описание всех использованных макросов можно найти в руководстве разработчика:
 
http://help-dev.umi-cms.ru/
 
http://help-dev.umi-cms.ru/
 +
[[Категория:Модуль Пользователи]][[Категория:Написание кастомных макросов]]

Текущая версия на 12:21, 5 июня 2013

Когда зарегистрированный пользователь, в пользовательской части сайта, добавляет через настройки своего профиля - аватара, то данное изображение сохраняется в справочник Аватара (модуль Шаблоны данных). Проще говоря, если в административной панели, в модуле Пользователи зайти на страницу пользователя, который загрузил аватар, в выпадающем списке Аватарка (идентификатор поля: avatar) будет стоять примерно такое значение: Avatar for user 27327. Данное значение "Avatar for user 27327" является именем объекта, в котором хранится картинка - в поле с типом Изображение и идентификатором этого поля: picture. Нам необходимо получить id объекта в котором хранится картинка, и потом у этого объекта вывести картинку из поля с идентификатором picture.

Используем данный макрос для вывода изображения аватара:

%data getPropertyOfObject(%current_user_id%,'avatar', 'ava')%

%current_user_id% - выводит id текущего пользователя, avatar - идентификатор поля типа Выпадающий список, ava - tpl шаблон в папке ~tpls/data/ такого содержания:

<?php
$FORMS = Array();
$FORMS['relation'] = <<<END
%data getPropertyOfObject(%object_id%,'picture', 'ava')%
END;

$FORMS['img_file'] = <<<END
%system makeThumbnail(%filepath%, auto, 50, 'avaimg')%
END;
?>

Шаблон ~tpls/thumbs/avaimg.tpl может быть примерно такого содержания:

<?php
$FORMS = Array();
$FORMS['image'] = <<<END
<img src="%src%" width="%width%" height="%height%"/>
END;
?>

Описание всех использованных макросов можно найти в руководстве разработчика: http://help-dev.umi-cms.ru/