Example #1
0
        private SiteUser PopulateSiteUser(UserCore userCore)
        {
            if (userCore == null)
            {
                return(null);
            }

            var agreementPage = ContentExtensions.GetUserAgreementPage();

            if (agreementPage == null)
            {
                return(new SiteUser(userCore));
            }

            var userAcceptedAgreement = _userTermsOfUseRepository.CheckUserAccepts(userCore.UserId, agreementPage.TermId);

            return(new SiteUser(userCore)
            {
                AcceptedAgreementVersion = userAcceptedAgreement ? agreementPage.Version : -1
            });
        }
Example #2
0
        void IActionFilter.OnActionExecuting(ActionExecutingContext filterContext)
        {
            var siteUser = filterContext.HttpContext.GetSiteUser();

            if (siteUser == null || filterContext.Controller is UserAgreementsPageController)
            {
                base.OnActionExecuting(filterContext);
                return;
            }

            var agreementPage = ContentExtensions.GetUserAgreementPage();

            if (agreementPage != null && siteUser.AcceptedAgreementVersion < agreementPage.Version)
            {
                var userAgreementRef  = ContentExtensions.GetSettingsPage()?.UserAgreementPage;
                var userAgreementLink = LinkHelpers.GetFriendlyLinkOfPage(userAgreementRef);
                filterContext.Result = new RedirectResult(userAgreementLink);
                return;
                //filterContext.HttpContext.Response.Redirect(userAgreementLink, true);
            }

            base.OnActionExecuting(filterContext);
        }