public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var currentLoggedInUserId = User.Identity.GetUserId();
                model.registeringUser.RegistrationDate = DateTime.Now;
                model.registeringUser.UpdatedDate      = DateTime.Now;
                var user = new ApplicationUser
                {
                    UserName       = model.Email,
                    Email          = model.Email,
                    registeredUser = model.registeringUser
                };


                if (currentLoggedInUserId != null)
                {
                    var userRegistrationResult = await UserIdentityManager.
                                                 CreateIdnetityUser(user, model.Password, currentLoggedInUserId);

                    if (userRegistrationResult.All(res => res.Succeeded))
                    {
                        return(RedirectToAction("Index", "UserOperations"));
                    }
                    AddErrors(userRegistrationResult);
                }
            }

            //Assigning models porperties before redirecting to the registration form
            model = new RegisterViewModel
            {
                registeringUser = model.registeringUser,
                rolesList       = await UserIdentityManager.GetRoles()
            };
            // If we got this far, something failed, redisplay form
            return(View(model));
        }