Beispiel #1
0
        /// <summary>
        /// Save admin user
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ResponseModel SaveUserSetupModel(UserSetupModel model)
        {
            ResponseModel response;

            try
            {
                Mapper.CreateMap <UserSetupModel, User>();
                var siteAdmin = Mapper.Map <UserSetupModel, User>(model);

                string saltKey, hashPass;
                model.Password.GeneratePassword(out saltKey, out hashPass);

                siteAdmin.PasswordSalt = saltKey;
                siteAdmin.Password     = hashPass;

                siteAdmin.IsSystemAdministrator = true;
                siteAdmin.Status = UserEnums.UserStatus.Active;

                response = _userRepository.InsertUser(siteAdmin);

                WorkContext.SetupInformation.InitialUser = model;
            }
            catch (Exception exception)
            {
                response = new ResponseModel
                {
                    Success = false,
                    Message = exception.Message
                };
            }

            return(response);
        }
Beispiel #2
0
        public JsonResult UserSetup(UserSetupModel model)
        {
            if (ModelState.IsValid)
            {
                var response = _siteSetupService.SaveUserSetupModel(model);

                return(Json(response));
            }

            return(Json(new ResponseModel
            {
                Success = false,
                Message = ModelState.BuildValidationMessages()
            }));
        }
        public ActionResult Create(UserSetupModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            UserInviteDto userInvite = this.userService.GetUserInvite(model.Key);

            if (userInvite == null)
            {
                return(View("InvalidKey"));
            }

            this.createUser(model, userInvite.Email, false);

            return(RedirectToAction("Index", "Dashboard"));
        }
        public ActionResult CreateInitUser(UserSetupModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.Key != this.tenantContext.ID)
            {
                return(View("InvalidKey"));
            }

            if (this.userService.GetUsers().Any())
            {
                return(View("InvalidKey"));
            }

            this.createUser(model, model.Email, true);

            return(RedirectToAction("Index", "Dashboard"));
        }
        private void createUser(UserSetupModel model, string email, bool isAdmin)
        {
            var idpID = ((ClaimsPrincipal)this.User).FindFirst(ClaimTypes.NameIdentifier).Value;

            List <ContactDto> contacts = new List <ContactDto>();

            contacts.Add(new ContactDto()
            {
                Value = model.PrimaryNumber, Type = global::Server.Service.Users.Contact.PrimaryNumber
            });

            if (!string.IsNullOrEmpty(model.SecondaryNumber))
            {
                contacts.Add(new ContactDto()
                {
                    Value = model.SecondaryNumber, Type = global::Server.Service.Users.Contact.SecondaryNumber
                });
            }

            this.userService.Add(idpID, email, model.FullName, contacts, isAdmin);
        }