Exemplo n.º 1
0
        void TopicService_Created(object sender, TopicEventArgs e)
        {
            if (e.Topic != null && e.Topic.MemberId > 0)
            {
                var ms = ApplicationContext.Current.Services.MemberService;
                var member = ms.GetById(e.Topic.MemberId);
                member.IncreaseForumPostCount();
                ms.Save(member);

                Action a = new Action("NewTopic");
                a.Perform(member.Id, e.Topic.Id, "New topic created");
            }
        }
Exemplo n.º 2
0
 void TopicService_Updated(object sender, TopicEventArgs e)
 {
     var indexer = (SimpleDataIndexer)ExamineManager.Instance.IndexProviderCollection["ForumIndexer"];
     if (e.Topic.IsSpam)
     {
         indexer.DeleteFromIndex(e.Topic.Id.ToString());
     }
     else
     {
         var dataSet = ((ForumDataService)indexer.DataService).CreateNewDocument(e.Topic.Id);
         var xml = dataSet.RowData.ToExamineXml(dataSet.NodeDefinition.NodeId, dataSet.NodeDefinition.Type);
         indexer.ReIndexNode(xml, "forum");
     }
 }
Exemplo n.º 3
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);
        }
Exemplo n.º 4
0
 void TopicService_Deleted(object sender, TopicEventArgs e)
 {
     var indexer = (SimpleDataIndexer)ExamineManager.Instance.IndexProviderCollection["ForumIndexer"];
     indexer.DeleteFromIndex(e.Topic.Id.ToString());
 }