public NotRegisteredViewModel(Data.Identity.ApplicationUser applicationUser)
 {
     if (applicationUser != null)
     {
         this.Id   = applicationUser.Id;
         FirstName = applicationUser.FirstName;
         LastName  = applicationUser.LastName;
         BirthDate = applicationUser.BirthDate;
         GenderId  = applicationUser.EGenderId;
     }
 }
예제 #2
0
        public ActionResult SubCategoryUserEdit(Models.Race.RaceCategory.RaceRunners.RaceRunnerEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                Data.Models.RaceCategoryUser  raceCategoryUser;
                Data.Identity.ApplicationUser au;
                if (!string.IsNullOrWhiteSpace(model.Id))
                {
                    raceCategoryUser = RaceCategoryUsersRepository.GetById(Convert.ToInt32(model.Id));
                    au = raceCategoryUser.ApplicationUser;
                }
                else
                {
                    raceCategoryUser = new Data.Models.RaceCategoryUser();
                    au = new Data.Identity.ApplicationUser();
                }

                if (!model.isRegistered)
                {
                    au.FirstName = model.FirstName;
                    au.LastName  = model.LastName;
                    au.EGenderId = model.GenderId;
                    au.BirthDate = model.BirthDate.Value;
                }
                raceCategoryUser.RunnerNumber      = model.RunnerNumber;
                raceCategoryUser.RaceSubCategoryId = model.RaceSubCategoryId;

                if (!string.IsNullOrWhiteSpace(model.Id))
                {
                    ApplicationUserRepository.Update(au, false);
                    RaceCategoryUsersRepository.Update(raceCategoryUser, true);
                }
                else
                {
                    au.UserName = Guid.NewGuid().ToString();
                    ApplicationUserRepository.Create(au, false);

                    raceCategoryUser.ApplicationUserId = au.Id;
                    raceCategoryUser.RaceCategoryId    = model.RaceCategoryId.Value;


                    RaceCategoryUsersRepository.Create(raceCategoryUser, true);
                }
                return(Content("OK"));
            }
            model.RaceSubCategoryDropDownModel = new Models.DropDown.RaceSubCategoryDropDownModel(model.RaceCategoryId.Value);
            return(PartialView("/Views/Race/Category/SubCategory/EditUser.cshtml", model));
        }
        public async System.Threading.Tasks.Task <ActionResult> RegisterOrganizer(Models.Organizer.CreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                Data.DataDbContext context = new Data.DataDbContext();

                var user = new Data.Identity.ApplicationUser {
                    UserName  = model.registerViewModel.Email,
                    Email     = model.registerViewModel.Email, FirstName = model.registerViewModel.FirstName, LastName = model.registerViewModel.SurName,
                    EGenderId = model.registerViewModel.EGenderId, BirthDate = model.registerViewModel.BirthDate, LockoutEnabled = false
                };

                var result = await UserManager.CreateAsync(user, model.registerViewModel.Password);

                if (result.Succeeded)
                {
                    await UserManager.SetLockoutEnabledAsync(user.Id, false);

                    await UserManager.AddToRoleAsync(user.Id, "Organizer");

                    var organizer = new Data.Models.Organizer()
                    {
                        Name        = model.organizerViewModel.Name,
                        Description = model.organizerViewModel.Description
                    };
                    var usr = new Code.Repository.ApplicationUserRepository().GetById(user.Id);
                    organizer.Organizers.Add(usr);


                    new Code.Repository.OrganizerRepository().Create(organizer, true);

                    await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                    Code.MailTools.SmtpPipe.Instance.SendWelcomeEmail(user);
                    return(RedirectToAction("Index", "Home"));
                }
                AddErrors(result);
            }
            return(View("/Views/Organizer/Register.cshtml", model));
        }
예제 #4
0
 public void SendWelcomeEmail(Data.Identity.ApplicationUser user)
 {
     Core.Instance.sendHTMLMail(user.Email, "Vítejte na MůjZávod.cz",
                                $"Právě jste se zaregistrovali na {System.Web.Configuration.WebConfigurationManager.AppSettings.Get("webUrl")}");
 }
 public Authoriser(IPrincipal principal)
 {
     _Principal   = principal;
     _Identity    = principal.Identity as IdentityUser;
     _CurrentUser = new Repository.ApplicationUserRepository().GetActAu();
 }