public Subscription GetSubscriptions(Subscription subscription)
 {
     var predicateGroup = new PredicateGroup { Operator = GroupOperator.And, Predicates = new List<IPredicate>() };
     predicateGroup.Predicates.Add(Predicates.Field<Subscription>(f => f.IsActive, Operator.Eq, true));
     predicateGroup.Predicates.Add(Predicates.Field<Subscription>(f => f.IsDeleted, Operator.Eq, false));
     predicateGroup.Predicates.Add(Predicates.Field<Subscription>(f => f.EmployeeName, Operator.Eq, subscription.EmployeeName));
     predicateGroup.Predicates.Add(Predicates.Field<Subscription>(f => f.ForumName, Operator.Eq, subscription.ForumName));
     return
         SqlHelper.Find<Subscription>(predicateGroup);
 }
 public bool UnsubscribeAllSubscriptions(Subscription subscription)
 {
     var resultSubscriptions = SqlHelper.GetAll<Subscription>()
         .Where(x => x.IsActive &&
             !x.IsDeleted &&
             x.ForumName == subscription.ForumName &&
             x.EmployeeEmail == subscription.EmployeeEmail).ToList();
     foreach (var item in resultSubscriptions)
     {
         item.IsActive = false;
         item.IsDeleted = true;
         UpdateSubscription(item);
     }
     return true;
 }
 public bool InsertSubscription(Subscription subscription)
 {
     return SqlHelper.Insert(subscription);
 }
 public bool UpdateSubscription(Subscription subscription)
 {
     return SqlHelper.Update(subscription);
 }
 public bool UnsubscribeAllSubscriptions(Subscription subscription)
 {
     return ForumSubscriptionDao.UnsubscribeAllSubscriptions(subscription);
 }
 public Subscription GetSubscriptions(Subscription subscription)
 {
     return ForumSubscriptionDao.GetSubscriptions(subscription);
 }
 public bool UpdateSubscription(Subscription subscription)
 {
     return ForumSubscriptionDao.UpdateSubscription(subscription);
 }
 public bool InsertSubscription(Subscription subscription)
 {
     return ForumSubscriptionDao.InsertSubscription(subscription);
 }
Exemplo n.º 9
0
        private void RemoveChildForums(ForumsDetailsModel forums)
        {
            var account = new AccountInfo();
            SetFullNameAndEmail();

            foreach (var forumItem in forums.SubForums)
            {
                var subscriptionModel = new Subscription()
                {
                    CreatedBy = account.GetFullName(),
                    EmployeeName = account.GetUserName(), //User.Identity.Name.Replace("\\", "/"),
                    ForumName = forumItem.ForumFullPath,
                    IsActive = true,
                    IsDeleted = false,
                    IsSubscribed = true,
                };
                subscriptionModel = ForumSubscriptionService.GetSubscriptions(subscriptionModel);
                if (subscriptionModel != null)
                {
                    subscriptionModel.IsActive = false;
                    subscriptionModel.IsDeleted = true;
                    ForumSubscriptionService.UpdateSubscription(subscriptionModel);
                }
                if (forumItem.SubForums.Count > 0)
                    RemoveChildForums(forumItem);
            }
        }
Exemplo n.º 10
0
        private void WriteChildForums(ForumsDetailsModel forums, string email)
        {
            var account = new AccountInfo();
            SetFullNameAndEmail();
            foreach (var forumItem in forums.SubForums)
            {
                var subscriptionModel = new Subscription()
                 {
                     CreatedBy = account.GetFullName(),
                     EmployeeEmail = account.GetEmailAddress(),
                     EmployeeName = account.GetUserName(), //User.Identity.Name.Replace("\\", "/"),
                     ForumName = forumItem.ForumFullPath,
                     IsActive = true,
                     IsDeleted = false,
                     IsSubscribed = true,
                     CreatedDate = DateTime.Now
                 };
                ForumSubscriptionService.InsertSubscription(subscriptionModel);

                if (forumItem.SubForums.Count > 0)
                    WriteChildForums(forumItem, email);
            }
        }
Exemplo n.º 11
0
        private void WriteUpdateSubscription(string forumName, string email, string isSubscribed, bool subscribeParentOnly)
        {
            var account = new AccountInfo();
            SetFullNameAndEmail();

            #region Subscription database writing
            if (isSubscribed == "True")
            {
                var output = ConvertToForumDetailsListModel(ForumService.GetListofForums(forumName));
                var forum = new ForumsDetailsModel();
                forum.SubForums.AddRange(output);
                forum = null;
                var names = forumName.ForumSplit();
                foreach (var item in names)
                {
                    forum = (forum == null) ? output.FirstOrDefault(x => x.DisplayName == item) : forum.SubForums.FirstOrDefault(x => x.DisplayName == item);
                }

                var subscriptionModel = new Subscription()
                                        {
                                            CreatedBy = account.GetFullName(),
                                            EmployeeEmail = account.GetEmailAddress(),//email,
                                            EmployeeName = account.GetUserName(), //User.Identity.Name.Replace("\\", "/"),
                                            ForumName = forumName,
                                            IsActive = true,
                                            IsDeleted = false,
                                            IsSubscribed = true,
                                            CreatedDate = DateTime.Now
                                        };
                ForumSubscriptionService.InsertSubscription(subscriptionModel);
                if (!subscribeParentOnly)
                {
                    foreach (var forumItem in forum.SubForums)
                    {
                        subscriptionModel = new Subscription()
                        {
                            CreatedBy = account.GetFullName(),
                            EmployeeEmail = account.GetEmailAddress(),
                            EmployeeName = account.GetUserName(), //User.Identity.Name.Replace("\\", "/"),
                            ForumName = forumItem.ForumFullPath,
                            IsActive = true,
                            IsDeleted = false,
                            IsSubscribed = true,
                            CreatedDate = DateTime.Now
                        };
                        ForumSubscriptionService.InsertSubscription(subscriptionModel);

                        WriteChildForums(forumItem, email);
                    }
                }
                ForumSubscriptionService.SubscriptionRequestMail(forumName.ForumSplit().ForumJoin(), account.GetEmailAddress(), true);
            }
            #endregion

            #region un-Subscription database writing
            else if (isSubscribed == "False" && !subscribeParentOnly)
            {
                var output = ConvertToForumDetailsListModel(ForumService.GetListofForums(forumName));
                var forum = new ForumsDetailsModel();
                forum.SubForums.AddRange(output);
                forum = null;
                var names = forumName.ForumSplit();
                foreach (var item in names)
                {
                    forum = (forum == null) ? output.FirstOrDefault(x => x.DisplayName == item) : forum.SubForums.FirstOrDefault(x => x.DisplayName == item);
                }

                var subscriptionModel = new Subscription()
                {
                    CreatedBy = account.GetFullName(),
                    EmployeeEmail = account.GetEmailAddress(),
                    EmployeeName = account.GetUserName(), //User.Identity.Name.Replace("\\", "/"),
                    ForumName = forumName,
                    IsActive = true,
                    IsDeleted = false,
                    IsSubscribed = true,
                };
                subscriptionModel = ForumSubscriptionService.GetSubscriptions(subscriptionModel);
                if (subscriptionModel != null)
                {
                    subscriptionModel.IsActive = false;
                    subscriptionModel.IsDeleted = true;

                    ForumSubscriptionService.UpdateSubscription(subscriptionModel);
                }
                foreach (var forumItem in forum.SubForums)
                {
                    subscriptionModel = new Subscription()
                    {
                        CreatedBy = account.GetFullName(),
                        EmployeeEmail = account.GetEmailAddress(),
                        EmployeeName = account.GetUserName(), //User.Identity.Name.Replace("\\", "/"),
                        ForumName = forumItem.ForumFullPath,
                        IsActive = true,
                        IsDeleted = false,
                        IsSubscribed = true,
                    };
                    subscriptionModel = ForumSubscriptionService.GetSubscriptions(subscriptionModel);
                    if (subscriptionModel != null)
                    {
                        subscriptionModel.IsActive = false;
                        subscriptionModel.IsDeleted = true;

                        ForumSubscriptionService.UnsubscribeAllSubscriptions(subscriptionModel);
                    }
                    RemoveChildForums(forumItem);
                }
                ForumSubscriptionService.SubscriptionRequestMail(forumName.ForumSplit().ForumJoin(), account.GetEmailAddress(), false);
            }
            #endregion
        }