Beispiel #1
0
        public ActionResult Delete(string Id)
        {
            var user      = UserManager.FindById(Id);
            var viewModel = new UsersCreateModel(user);

            return(PartialView("_Delete", viewModel));
        }
Beispiel #2
0
        public HttpResponseMessage CreateUser(UsersCreateModel model)
        {
            bool   existingUser = false;
            bool   isCreated    = false;
            string salt;
            string hashedPassword;

            IEnumerable <User> users = ((IManager)this.usersManager).GetItems() as IEnumerable <User>;

            if (users.Any(u => u.Email == model.Email))
            {
                existingUser = true;
            }

            if (!existingUser)
            {
                User user = this.usersFactory.Create(Guid.NewGuid(), model.Email, model.FirstName, model.LastName, model.IsExternal);

                if (model.IsExternal)
                {
                    user.Image     = imageExtractor.GetImageAsBase64Url(model.AccessToken).Result;
                    salt           = string.Empty;
                    hashedPassword = string.Empty;
                }
                else
                {
                    salt           = PasswordHelper.CreateSalt(10);
                    hashedPassword = PasswordHelper.CreatePasswordHash(model.Password, salt);
                }

                user.Salt           = salt;
                user.HashedPassword = hashedPassword;
                user.UserExternalId = model.UserExternalId;
                user.Age            = model.Age;
                user.PhoneNumber    = model.PhoneNumber;
                user.BloodType      = (BloodType)model.BloodType;

                if (model.PreferredLanguage == "en")
                {
                    user.PreferredLanguage = PreferredLanguage.English;
                }
                else if (model.PreferredLanguage == "bg")
                {
                    user.PreferredLanguage = PreferredLanguage.Bulgarian;
                }

                this.usersManager.CreateItem(user);
                this.usersManager.SaveChanges();
                isCreated = true;
            }

            HttpResponseMessage resp = new HttpResponseMessage();

            resp.Content = new StringContent(JsonConvert.SerializeObject(isCreated));
            resp.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            return(resp);
        }
Beispiel #3
0
        public async Task <ActionResult> Edit(string ID)
        {
            if (string.IsNullOrEmpty(ID))
            {
                return(HttpNotFound());
            }
            else
            {
                var user = await UserManager.FindByIdAsync(ID);

                var viewModel = new UsersCreateModel(user);
                return(PartialView("_Action", viewModel));
            }
        }
Beispiel #4
0
        public async Task <JsonResult> Save(UsersCreateModel model)
        {
            JsonResult     json  = new JsonResult();
            var            error = "";
            IdentityResult r     = null;

            if (!string.IsNullOrEmpty(model.ID))                //Edit Case
            {
                var user = await UserManager.FindByIdAsync(model.ID);

                user.UserName = model.UserName;
                user.Email    = model.UserName;
                user.FullName = model.FullName;
                user.Country  = model.Country;
                user.City     = model.City;
                user.Address  = model.Address;

                r = await UserManager.UpdateAsync(user);
            }
            else                   //Create Case
            {
                var user = new ApplicationUser()
                {
                    UserName = model.UserName,
                    Email    = model.UserName,
                    FullName = model.FullName,
                    Country  = model.Country,
                    City     = model.City,
                    Address  = model.Address
                };
                r = await UserManager.CreateAsync(user, model.Password);

                if (r.Succeeded)
                {
                    var defaultRole = "User";
                    await UserManager.AddToRoleAsync(user.Id, defaultRole);
                }
            }
            if (r.Succeeded)
            {
                json.Data = new { Success = r.Succeeded, Link = Url.Action("Listing"), Message = Status.Successfull, Errors = string.Join(", ", r.Errors) };
            }
            else
            {
                json.Data = new { Success = r.Succeeded, Link = Url.Action("Listing"), Message = Status.Failed + " " + error, Errors = string.Join(", ", r.Errors) };
            }
            return(json);
        }
Beispiel #5
0
        public async Task <ActionResult> Create()
        {
            var dbModel = await Bll.DB_AspNetRoles().ListAsync();

            if (!String.IsNullOrEmpty(dbModel.exceptionMessage))
            {
                return(HttpNotFound());
            }
            else
            {
                var result = new UsersCreateModel();
                foreach (var item in dbModel.resultItem)
                {
                    result.roles.Add(new RoleViewModel
                    {
                        Id   = item.Id,
                        Name = item.Name
                    });
                }
                return(View(result));
            }
        }
Beispiel #6
0
        public async Task <ActionResult> Create(UsersCreateModel model)
        {
            if (ModelState.IsValid)
            {
                ApplicationUser _user = new ApplicationUser();
                _user.Email    = model.email;
                _user.UserName = _user.Email;
                var    _guid    = Guid.NewGuid().ToString();
                string password = "";
                for (int i = 0; i < 7; i++)
                {
                    password += _guid[i].ToString();
                }
                var userCreated = await UserManager.CreateAsync(_user, password);

                if (userCreated.Succeeded)
                {
                    var role = await _roleManager.FindByIdAsync(model.role_id);

                    var createUser = await UserManager.FindByEmailAsync(model.email);

                    var addToRole = await UserManager.AddToRoleAsync(createUser.Id, role.Name);

                    if (addToRole.Succeeded)
                    {
                        var action = await Bll.DB_Action().Add(new DataAccessLayer.AdoModel.Action
                        {
                            User_Id   = createUser.Id,
                            Message   = password,
                            Completed = false
                        });

                        if (action.success)
                        {
                            return(RedirectToAction("Index"));
                        }
                        else
                        {
                            ModelState.AddModelError("", "Kullanıcı Şifresi Gönderilmek Üzere Hazırlanırken Bir Hata Oluştu!");
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", "Kullanıcı Oluşturuldu Fakat Yetkilendirilirken Hataya Rastlandı!");
                    }
                }
                else
                {
                    ModelState.AddModelError("", "Kullanıcı Oluşturulamadı!");
                }
            }
            else
            {
                ModelState.AddModelError("", "Kullanıcı Oluşturulamadı!");
            }
            var dbModel = await Bll.DB_AspNetRoles().ListAsync();

            var result = new UsersCreateModel();

            foreach (var item in dbModel.resultItem)
            {
                result.roles.Add(new RoleViewModel
                {
                    Id   = item.Id,
                    Name = item.Name
                });
            }
            return(View(result));
        }
Beispiel #7
0
        public ActionResult Create()
        {
            var viewModel = new UsersCreateModel();

            return(PartialView("_Action", viewModel));
        }