Umbraco 4.6.2를 사용 중이며 제공하는 기본 알림을 확장해야합니다. 이 질문을 위해 "게시 취소"알림을 추가하려고한다고 가정 해 봅시다.Umbraco - 맞춤 알림을 추가하는 방법은 무엇인가요?
\umbraco\presentation\umbraco\dialogs\notifications.aspx.cs
에서 컨텍스트 메뉴에서 "알림"대화 상자를 열 때 사용자에게 표시되는 checkbx 항목의 목록을 구성합니다.
각 Action
에는 ShowInNotifier 속성이 있습니다.이 값을 UnPublish 액션에 대해 true
으로 설정하려면 어떻게해야합니까? 코어 코드베이스를 수정해야합니까, 아니면 정상적으로 Umbraco를 확장 할 수있는 좋은 방법이 있습니까?
그래서 이것을 추가하면 사용자가 게시 취소 알림을 구독 할 수 있습니다 (여기에 단계가 누락 되었습니까?). 알림이 자동으로 전송됩니까?
내가하지 같은데요, 그래서 수행 한 다음 일은이 게시 취소 이벤트 중독되어
: 실제되지 않은 코드의public class CustomEvents : ApplicationBase
{
public CustomEvents()
{
Document.AfterUnPublish += new Document.UnPublishEventHandler(Document_AfterUnPublish);
}
void Document_AfterUnPublish(Document sender, umbraco.cms.businesslogic.UnPublishEventArgs e)
{
var user = User.GetCurrent();
if (!string.IsNullOrEmpty(user.Email) && user.GetNotifications(sender.Path).Contains("UnPublish"))
{
//Send a notification here using default Umbraco settings, or, construct email and send manually:
string umbracoNotificationSenderAddress = ""; //How to get the address stored in umbracoSettings.config -> <notifications> -> <email>
//How to use the same subject/message formats used for other notifications? With the links back to the content?
string subject = "Notification of UnPublish performed on " + MyUtilities.GetFriendlyName(sender.Id);
string message = MyUtilities.GetFriendlyName(sender.Id) + " has just been unpublished.";
umbraco.library.SendMail(umbracoNotificationSenderAddress, user.Email, subject, message, true);
}
}
}
그래서 비트/I는 일부 포인터를 필요
사용자가 특정 알림에 가입했는지 확인하는 올바른 방법입니까?
기본 umbraco 설정을 사용하여 알림을 보내려면 어떻게해야합니까? 가능하지 않은 경우
(예 : 그냥 다른 통지처럼 이메일을 생성) 나는 내 자신의 이메일을 구성해야합니다
가 어떻게 umbracoSettings에 저장된 이메일에서 주소를받을 수 있나요. config that
기본 Umbraco 알림에서 사용되는 형식을 어떻게 복사 할 수 있습니까? 수동으로 복사해야합니까 (프로그래밍 방식으로) 이렇게하는 것이 더 좋은 방법일까요?
어떤 도움 (또는 단지 관련 사례에 대한 링크) 감사합니다 :>
오른쪽, 그래서 이것은 당신이 이메일을 보낼 수 있습니다,하지만 그것은 Umbraco 시스템 알림을 사용하지 않습니다. 즉, 사용자가 특정 이벤트에 '구독'할 수있는 방법을 제공하지는 않습니다. 나 또한 이미 내 질문에 그 정확한 라인을 가지고 :) – elwyn