OurUmbraco.NotificationsWeb.Services.NotificationService.SubscribeToForumTopic C# (CSharp) Method

SubscribeToForumTopic() public method

public SubscribeToForumTopic ( int topicId, int memberId ) : void
topicId int
memberId int
return void
        public void SubscribeToForumTopic(int topicId, int memberId)
        {
            var r = _databaseContext.Database.SingleOrDefault<ForumTopicSubscriber>(
                "SELECT * FROM forumtopicsubscribers WHERE topicId=@0 and memberId=@1",
                topicId,
                memberId);

            if(r == null)
            {
                var rec = new ForumTopicSubscriber
                {
                    MemberId = memberId,
                    TopicId = topicId
                };

                _databaseContext.Database.Insert(rec);
            }
        }

Usage Example

Example #1
0
        void TopicService_Created(object sender, TopicEventArgs e)
        {
            var ns = new NotificationService(ApplicationContext.Current.DatabaseContext);
            ns.SubscribeToForumTopic(e.Topic.Id, e.Topic.MemberId);

            //send notification
            InstantNotification not = new InstantNotification();

            //data for notification:
            var membershipHelper = new MembershipHelper(Umbraco.Web.UmbracoContext.Current);
            var member = membershipHelper.GetById(e.Topic.MemberId);
            var memberName = string.Empty;
            if (member != null)
                memberName = member.Name;

            not.Invoke(Config.ConfigurationFile, Config.AssemblyDir, "NewTopic", e.Topic, e.Topic.GetUrl(), memberName);
        }