Example #1
0
        public async Task <ActionResult> Registration(AccountRegistrationViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = "{0}", code = "{1}" }, Request.Url.Scheme);

            model.ConfirmCallbackUrl = callbackUrl;

            var result = await _membershipService.RegistrationAsync(model.ViewToDomain());

            if (result.Code != 201)
            {
                ShowMessage(new Models.GenericMessageViewModel {
                    Type = MessageTypes.warning, Message = result.Error
                });
                return(View(model));
            }

            ShowMessage(new Models.GenericMessageViewModel {
                Type = MessageTypes.success, Message = $"A confirmation email was sent to your email {result.Value.Email}"
            });
            return(RedirectToAction(nameof(Login)));
        }
        public ActionResult Register(string ReturnUrl)
        {
            var model = new AccountRegistrationViewModel();

            model.ReturnUrl = ReturnUrl;

            return(View(model));
        }
        public ActionResult Register(string ReturnUrl, AccountRegistrationViewModel model)
        {
            try
            {
                // Get the current market
                var configuration = CurrentMarket.Configuration.Orders;

                // Create the request
                var request = new CreateCustomerRequest();

                request.InsertEnrollerTree = true;
                request.FirstName          = model.Customer.FirstName;
                request.LastName           = model.Customer.LastName;
                request.Email              = model.Customer.Email;
                request.CanLogin           = true;
                request.LoginName          = model.Customer.LoginName;
                request.LoginPassword      = model.Password;
                request.CustomerType       = CustomerTypes.RetailCustomer;
                request.CustomerStatus     = CustomerStatuses.Active;
                request.EntryDate          = DateTime.Now.ToCST();
                request.DefaultWarehouseID = configuration.WarehouseID;
                request.CurrencyCode       = configuration.CurrencyCode;
                request.LanguageID         = GlobalUtilities.GetSelectedLanguage(this.HttpContext).LanguageID;
                request.EnrollerID         = Identity.Owner.CustomerID;
                request.MainCountry        = CurrentMarket.MainCountry;

                // Create the customer
                var response = ExigoDAL.WebService().CreateCustomer(request);

                // Opt in the customer if they choose to receive emails
                if (model.Customer.IsOptedIn)
                {
                    ExigoDAL.SendEmailVerification(response.CustomerID, request.Email);
                }

                // Sign in the customer
                var service = new IdentityService();
                service.SignIn(model.Customer.LoginName, model.Password);

                // Redirect the customer to the appropriate place, depending on if they got here from shopping
                if (ReturnUrl.IsNotEmpty())
                {
                    return(Redirect(ReturnUrl));
                }
                else
                {
                    return(RedirectToAction("index", "account", new { webalias = Identity.Owner.WebAlias }));
                }
            }
            catch (Exception ex)
            {
                var newModel = new AccountRegistrationViewModel();
                newModel.ErrorMessage = ex.Message;
                model.ReturnUrl       = ReturnUrl;

                return(View(newModel));
            }
        }
Example #4
0
 public static AccountRegistrationModel ViewToDomain(this AccountRegistrationViewModel @this)
 {
     return(new AccountRegistrationModel
     {
         Email = @this.Email,
         FirstName = @this.FirstName,
         LastName = @this.LastName,
         Password = @this.Password,
         Username = @this.Username,
         ConfirmCallbackUrl = @this.ConfirmCallbackUrl
     });
 }
Example #5
0
        public IActionResult RegisterUser(AccountRegistrationViewModel model)
        {
            //Adds users to database
            User u = new User
            {
                Password = model.Password,
                Email    = model.Email,
                Username = model.UserName
            };

            context.Users.Add(u);
            context.SaveChanges();



            {
                return(Redirect("/Shoe/Add"));
            }
        }
Example #6
0
        public ActionResult Registration(AccountRegistrationViewModel registrationView)
        {
            bool   statusRegistration  = false;
            string messageRegistration = string.Empty;

            if (ModelState.IsValid)
            {
                // Email Verification
                string userName = Membership.GetUserNameByEmail(registrationView.employee_email);
                if (!string.IsNullOrEmpty(userName))
                {
                    ModelState.AddModelError("Warning Email", "Sorry: Email already Exists");
                    return(View(registrationView));
                }

                //Save User Data
                using (ModelAsmRemote _db = new ModelAsmRemote())
                {
                    //var user = new User()
                    //{
                    //    Username = registrationView.Username,
                    //    FirstName = registrationView.FirstName,
                    //    LastName = registrationView.LastName,
                    //    Email = registrationView.Email,
                    //    Password = registrationView.Password,
                    //    ActivationCode = Guid.NewGuid(),
                    //};
                    //dbContext.Users.Add(user);
                    var emp = new ms_employee()
                    {
                        employee_email = registrationView.employee_email,
                        employee_nik   = registrationView.employee_nik,
                        employee_name  = registrationView.employee_name,

                        fl_active    = true,
                        created_by   = UserProfile.UserId,
                        created_date = DateTime.Now,
                        updated_by   = UserProfile.UserId,
                        updated_date = DateTime.Now,
                        deleted_by   = null,
                        deleted_date = null,
                        org_id       = UserProfile.OrgId
                    };

                    emp = _db.ms_employee.Add(emp);
                    //int emp_id = emp.employee_id;

                    var user = new ms_user()
                    {
                        user_name     = registrationView.user_name,
                        user_password = App_Helpers.CryptorHelper.Encrypt(registrationView.user_password, "MD5", true),
                        employee_id   = emp.employee_id,
                        fl_active     = true,
                        created_by    = UserProfile.UserId,
                        created_date  = DateTime.Now,
                        updated_by    = UserProfile.UserId,
                        updated_date  = DateTime.Now,
                        deleted_by    = null,
                        deleted_date  = null,
                        org_id        = UserProfile.OrgId
                    };
                    _db.ms_user.Add(user);

                    _db.SaveChanges();
                }

                //Verification Email:
                //TIDAK usah aktifkan by email -> admin saja yanag mengaktifkan sendiri krna hrus pilih role, job title dan company
                //VerificationEmail(registrationView.Email, registrationView.ActivationCode.ToString());
                messageRegistration = "Your account has been created successfully. ^_^";
                statusRegistration  = true;
            }
            else
            {
                messageRegistration = "Something Wrong!";
            }
            ViewBag.Message = messageRegistration;
            ViewBag.Status  = statusRegistration;

            return(View(registrationView));
        }