コード例 #1
0
        [RequireSslFilter, HttpPost, NoCache] //, ValidateAntiForgeryToken
        public ActionResult FreeEmailAlertsRegistrationSuccess()
        {
            InitCurrentEvent();
            OuterSubscription os = new OuterSubscription();

            if (!TryUpdateModel(os, new[] { "Country", "Email", "EmailConfirm", "FirstName", "LastName", "State", "IsRecievingWeeklySpecials", "IsRecievingUpdates" }))
            {
                FreeRegisterLinkedData();
                return(View("FreeEmailAlertsRegister", os));
            }
            os.Validate(ModelState);
            if (ModelState.IsValid)
            {
                os.IPAddress = Consts.UsersIPAddress;
                os.IsActive  = false;
                if (!UserRepository.AddOuterSubscription(os))
                {
                    FreeRegisterLinkedData();
                    return(View("FreeEmailAlertsRegister", os));
                }
                Mail.SendFreeEmailRegisterConfirmation(os.Email, os.FirstName, os.LastName, AppHelper.GetSiteUrl(Url.Action("FreeEmailAlertsRegisterConfirm", "Home", new { id = os.ID })));
                return(View());
            }
            FreeRegisterLinkedData();
            return(View("FreeEmailAlertsRegister", os));
        }
コード例 #2
0
        public ActionResult EmailAlertsUnsubscribeSuccess(long?id, char?t)
        {
            SessionUser cuser = AppHelper.CurrentUser;

            if (!id.HasValue)
            {
                return(RedirectToAction("Index", "Home"));
            }
            if (t.HasValue)
            {
                if (t.Value == 'U')
                {
                    User usr = UserRepository.GetUser(id.Value, true);
                    if (usr != null)
                    {
                        UserRepository.UnsubscribeFromEmail(usr.Email);
                        UserRepository.UnsubscribeRegisterUser(id.Value);
                        if (cuser != null && cuser.ID == usr.ID)
                        {
                            cuser.IsRecieveWeeklySpecials = false;
                            cuser.IsRecieveNewsUpdates    = false;
                        }
                        ViewData["Email"] = usr.Email;
                    }
                }
                else if (t.Value == 'M')
                {
                    OuterSubscription os = dataProvider.DifferentRepository.GetOuterSubscription(id.Value);
                    if (os != null)
                    {
                        UserRepository.UnsubscribeRegisterUser(os.Email);
                        UserRepository.UnsubscribeFromOuterSubscribtionByID(id.Value);
                        ViewData["Email"] = os.Email;
                    }
                }
            }
            else
            {
                IUser usr = UserRepository.GetUser(id.Value, true);
                if (usr != null)
                {
                    UserRepository.UnsubscribeFromEmail(usr.Email);
                    UserRepository.UnsubscribeRegisterUser(id.Value);
                    if (cuser != null && cuser.ID == usr.ID)
                    {
                        cuser.IsRecieveWeeklySpecials = false;
                        cuser.IsRecieveNewsUpdates    = false;
                    }
                    ViewData["Email"] = usr.Email;
                }
            }
            if (ViewData["Email"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }
            InitCurrentEvent();
            return(View());
        }
コード例 #3
0
        public ActionResult FreeEmailAlertsRegistrationSuccess()
        {
            OuterSubscription os = new OuterSubscription();

            if (!TryUpdateModel(os, new[] { "Country", "Email", "EmailConfirm", "FirstName", "LastName", "State", "IsRecievingWeeklySpecials", "IsRecievingUpdates" }))
            {
                return(View("FreeEmailAlertsRegister", os));
            }
            os.Validate(ModelState);
            if (ModelState.IsValid)
            {
                UserRepository.AddOuterSubscription(os);
                Mail.SendFreeEmailRegisterConfirmation(os.Email, os.FirstName, os.LastName, AppHelper.GetSiteUrl(Url.Action("FreeEmailAlertsRegisterConfirm", "Home", new { id = os.ID })));
                return(View());
            }
            return(View("FreeEmailAlertsRegister", os));
        }
コード例 #4
0
 public ActionResult EmailAlertsUnsubscribeSuccess(long?id, char?t)
 {
     if (!id.HasValue)
     {
         return(RedirectToAction("FreeEmailAlertsRegister"));
     }
     if (t.HasValue)
     {
         if (t.Value == 'U')
         {
             User usr = UserRepository.GetUser(id.Value, false);
             if (usr != null)
             {
                 UserRepository.UnsubscribeFromEmail(usr.Email);
                 UserRepository.UnsubscribeRegisterUser(id.Value);
                 ViewData["Email"] = usr.Email;
             }
         }
         else if (t.Value == 'M')
         {
             OuterSubscription os = UserRepository.GetOuterSubscription(id.Value);
             if (os != null)
             {
                 UserRepository.UnsubscribeRegisterUser(os.Email);
                 UserRepository.UnsubscribeFromOuterSubscribtionByID(id.Value);
                 ViewData["Email"] = os.Email;
             }
         }
     }
     else
     {
         User usr = UserRepository.GetUser(id.Value, false);
         if (usr != null)
         {
             UserRepository.UnsubscribeFromEmail(usr.Email);
             UserRepository.UnsubscribeRegisterUser(id.Value);
             ViewData["Email"] = usr.Email;
         }
     }
     if (ViewData["Email"] == null)
     {
         return(RedirectToAction("FreeEmailAlertsRegister"));
     }
     InitCurrentEvent();
     return(View());
 }