/// <summary>
        /// Performs company registration
        /// </summary>
        /// <param name="userCompanyCreateDto">company registration details</param>
        /// <returns>Registered company account ID</returns>
        public async Task <Guid> RegisterCompany(UserCompanyCreateDto userCompanyCreateDto)
        {
            using (var uow = UnitOfWorkProvider.Create())
            {
                var id = await userService.RegisterUserAsync(userCompanyCreateDto);

                await uow.Commit();

                return(id);
            }
        }
Exemple #2
0
        public async Task <Guid> RegisterUserAsync(UserCompanyCreateDto userDto)
        {
            var company = Mapper.Map <Company>(userDto);

            if (await GetIfUserExistsAsync(company.Username))
            {
                throw new ArgumentException();
            }

            var password = CreateHash(userDto.Password);

            company.PasswordHash = password.Item1;
            company.PasswordSalt = password.Item2;

            companyRepository.Create(company);

            return(company.Id);
        }
        public async Task <ActionResult> RegisterCompany(UserCompanyCreateDto userCompanyCreateDto)
        {
            try
            {
                await CompanyFacade.RegisterCompany(userCompanyCreateDto);

                //FormsAuthentication.SetAuthCookie(userCreateDto.Username, false);

                var authTicket = new FormsAuthenticationTicket(1, userCompanyCreateDto.Username, DateTime.Now,
                                                               DateTime.Now.AddMinutes(30), false, "");
                string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
                var    authCookie      = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                HttpContext.Response.Cookies.Add(authCookie);

                return(RedirectToAction("Index", "Company"));
            }
            catch (ArgumentException)
            {
                ModelState.AddModelError("Username", "Account with that username already exists!");
                return(View());
            }
        }