Запуск функции, когда администратор разрешает пользователю в Sitecore

#asp.net #sitecore #sitecore7 #sitecore-workflow

#asp.net #sitecore #sitecore7 #sitecore-рабочий процесс

Вопрос:

Я пытаюсь создать веб-приложение, в котором пользователь создает учетную запись в домене / extranet и изначально отключает ее. Когда администратор sitecore разрешает учетную запись пользователя, должна быть запущена функция, чтобы пользователю можно было отправлять почту, но я не нахожу никакого решения для запуска кода.

Это код, который я использовал для создания пользователя в / extranet

 Membership.CreateUser(mailId, password, mailId, "question", "answer", false, out status);
  

Ответ №1:

Ну, есть команда, которая выполняется ( <command name="usermanager:enable" type="Sitecore.Shell.Framework.Commands.UserManager.Enable,Sitecore.Kernel"/> ) — которую вы можете найти в Commands.config файле в App_Config папке — при нажатии на кнопку включения, так что вы можете переопределить это своим собственным кодом (не забудьте также запустить эту Enable функциональность, конечно.

Ответ №2:

Пожалуйста, обратитесь к: http://techmusingz.wordpress.com/2014/06/15/notify-sitecore-user-on-account-enable / для полного примера переопределения соответствующей команды.

Вам нужно будет заменить
<command name="usermanager:enable" type="Sitecore.Shell.Framework.Commands.UserManager.Enable,Sitecore.Kernel"/>

с
<command name="usermanager:enable" type="Sitecore72.Classes.EnableUserNotify, Sitecore72"/>

Вы могли бы использовать отраженный код из Sitecore.Kernel.dll , и добавьте свою логику для уведомления в метод Run — где аргументы.IsPostBack имеет значение true после обновления профиля пользователя (user.IsApproved = true;)

Это позволит вам сохранить окна сообщений, реализованные sitecore, и добавить необходимые пользовательские функции.

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

1. Работает как шарм …!! Несмотря на то, что у меня мало трудностей с пониманием работы, поскольку я новичок, это кажется идеальным решением.

2. Приятно слышать и спасибо, что отметили это как ответ! Sitecore перечисляет различные обработчики событий, запускаемые действиями в их пользовательском интерфейсе, в форме команд, и, поскольку он настраивается, он дает нам возможность переопределять любой обработчик по умолчанию. Это решение в основном скопировало обработчик sitecore по умолчанию и добавило строку для отправки нужных нам электронных писем.