ADX STUDIO - Установите домашнюю страницу по умолчанию для определенного пользователя портала
У меня есть два вида пользователей на моем портале: пользователь-клиент и агент-пользователь. Я хочу менять домашнюю страницу пользователя Агента по умолчанию каждый раз, когда он / она входит в систему или нажимает кнопку домашней страницы на веб-сайте вместо домашней страницы клиента по умолчанию.ie (Домашняя страница агента) В настоящее время я смог добиться этого с помощью следующего кода:
var userId = AuthenticationManager.AuthenticationResponseGrant.Identity.GetUserId();
var user = await UserManager.FindByIdAsync(userId);
var portal = PortalCrmConfigurationManager.CreatePortalContext();
var usercontext = portal.User;
var context = portal.ServiceContext;
var contact = (from c in context.CreateQuery("contact")
where c["contactid"].Equals(userId)
select c).First();
var isAgentUser = contact.GetAttributeValue<bool>("bh_isagentuser");
if (isAgentUser == true)
{
return Redirect("/agent-home");
}
else
{
return RedirectToLocal(returnUrl);
}
Я хочу знать, есть ли другой выход для студии ADX, чтобы достигнуть этого?
0 ответов
Вместо перенаправления на другую веб-страницу вы можете изменить информацию, отображаемую на домашней странице, в зависимости от обнаруженного типа пользователя. Простым примером использования Liquid будет включение другого веб-шаблона в зависимости от типа пользователя:
{% if user.bh_isAgentUser %}
{% include "Agent Home" %}
{% else %}
{% include "Default Home" %}
{% endif %}
Вы бы добавили различную логику рендеринга домашней страницы внутри каждого из Agent Home
а также Default Home
веб-шаблоны.
Вышеупомянутая жидкость может быть вставлена в поле копирования домашней страницы, или домашняя страница может быть изменена для использования веб-шаблона с этой жидкостью внутри. Этот выбор будет зависеть от структурных элементов отображаемой веб-страницы, которые необходимо изменить.
Для получения дополнительной информации см. Документацию по объекту пользователя, тегу include и веб-шаблонам.