Пример #1
0
        public virtual ActionResult UpdateWidget(ProfileWidgetEditModel model)
        {
            if (ModelState.IsValid)
            {
                model = ProfileWidgetHelper.SaveWidget(model);
            }

            return(PartialView("EditWidget", model));
        }
Пример #2
0
        public virtual ActionResult ViewWidget(ICoreWidgetInstance instance)
        {
            if (instance != null && instance.InstanceId.HasValue)
            {
                var widgetModel = ProfileWidgetHelper.BindWidgetModel(instance, this.CorePrincipal());
                return(PartialView(widgetModel));
            }

            return(Content(HttpContext.Translate("Messages.SetupRegistrationForm", ResourceHelper.GetControllerScope(this))));
        }
Пример #3
0
        public virtual ActionResult SaveUser(ProfileWidgetViewModel model, FormCollection collection)
        {
            var widgetService        = ServiceLocator.Current.GetInstance <IProfileWidgetService>();
            var authenticationHelper = ServiceLocator.Current.GetInstance <IAuthenticationHelper>();
            var widget             = widgetService.Find(model.PageWidgetId);
            var userProfileService = ServiceLocator.Current.GetInstance <IUserProfileService>();

            if (widget != null)
            {
                if (widget.DisplayMode == ProfileWidgetDisplayMode.ProfileDetails)
                {
                    ModelState.Clear();
                }

                var userProfile = userProfileService.GetUserProfile(this.CorePrincipal());

                if (widget.DisplayMode != ProfileWidgetDisplayMode.CommonDetails)
                {
                    if (userProfile != null)
                    {
                        ProfileWidgetHelper.Validate(collection, ModelState, userProfile);
                    }
                }

                if (ModelState.IsValid)
                {
                    User user;
                    if (ProfileWidgetHelper.SaveUser(model, collection, userProfile, this.CorePrincipal(), widget, out user))
                    {
                        Success(HttpContext.Translate("Messages.UserUpdated", String.Empty));

                        if (widget.DisplayMode != ProfileWidgetDisplayMode.ProfileDetails)
                        {
                            authenticationHelper.LogoutUser();
                            authenticationHelper.LoginUser(user, true);
                        }
                    }
                }
                else
                {
                    ViewData[String.Format("FormCollection{0}", widget.Id)] = collection;
                    Error(HttpContext.Translate("Messages.ValidationError", String.Empty));
                }

                model.Widget  = widget;
                model.Profile = userProfile;
            }

            return(PartialView("ViewWidget", model));
        }