public static void Subscribe(User subscriber, Node target, NotificationFrequency frequency, string language, string sitePath, string siteUrl, bool isActive) { if (subscriber.Email == null) { throw new InvalidOperationException("Subscriber's email cannot be null."); } if (subscriber.Email.Length == 0) { throw new InvalidOperationException("Subscriber's email cannot be empty."); } var userName = subscriber.FullName; if (String.IsNullOrEmpty(userName)) { userName = subscriber.Username; } var subscription = new Subscription { UserEmail = subscriber.Email, UserId = subscriber.Id, UserPath = subscriber.Path, UserName = userName, ContentPath = target.Path, Frequency = frequency, Language = language, IsActive = true, SitePath = sitePath, SiteUrl = siteUrl, }; subscription.Save(); }
public static void Subscribe(User subscriber, Node target, NotificationFrequency frequency, string language, string sitePath, string siteUrl, bool isActive) { if (subscriber.Email == null) throw new InvalidOperationException("Subscriber's email cannot be null."); if (subscriber.Email.Length == 0) throw new InvalidOperationException("Subscriber's email cannot be empty."); var userName = subscriber.FullName; if (String.IsNullOrEmpty(userName)) userName = subscriber.Username; var subscription = new Subscription { UserEmail = subscriber.Email, UserId = subscriber.Id, UserPath = subscriber.Path, UserName = userName, ContentPath = target.Path, Frequency = frequency, Language = language, IsActive = true, SitePath = sitePath, SiteUrl = siteUrl, }; subscription.Save(); }
public void Notification_SubscriptionSave() { var user = Subscriber1; var subscription = new Subscription { UserEmail = user.Email, UserId = user.Id, UserPath = user.Path, UserName = user.FullName, ContentPath = "/Root/IMS", Frequency = NotificationFrequency.Weekly, Language = "en", IsActive = true }; subscription.Save(); subscription = new Subscription { UserEmail = user.Email, UserId = user.Id, UserPath = user.Path, UserName = user.FullName, ContentPath = "/Root/IMS/BuiltIn", Frequency = NotificationFrequency.Monthly, Language = "en", IsActive = true }; subscription.Save(); subscription = new Subscription { UserEmail = user.Email, UserId = user.Id, UserPath = user.Path, UserName = user.FullName, ContentPath = "/Root/IMS", Frequency = NotificationFrequency.Daily, Language = "en", IsActive = true }; subscription.Save(); var result = Subscription.GetAllSubscriptions(); Assert.IsTrue(2 == result.Count(), "#1"); }