Exemple #1
0
 public ActionResult Edit([Bind(Include = "Id, Name, BirthDate")] AddUserBindingModel editUserBindingModel)
 {
     if (ModelState.IsValid)
     {
         this.customerService.Edit(editUserBindingModel);
     }
     return(this.RedirectToAction("All"));
 }
Exemple #2
0
 public ActionResult Add([Bind(Include = "Name, BirthDate")] AddUserBindingModel addUserBindingModel)
 {
     if (ModelState.IsValid)
     {
         this.customerService.AddUser(addUserBindingModel);
     }
     return(this.Redirect("All"));
 }
Exemple #3
0
        public async Task <IHttpActionResult> AddMember(AddUserBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var project = db.Projects.Find(model.ProjectId);

            if (project == null)
            {
                return(BadRequest());
            }

            var currentUser = UserManager.FindById(User.Identity.GetUserId());

            if (currentUser == null)
            {
                return(Unauthorized());
            }

            var projectMembership = currentUser.Projects.FirstOrDefault(p => p.Role == ProjectRoles.Admin && p.ProjectId == project.Id);

            if (projectMembership == null)
            {
                return(Unauthorized());
            }

            var newMember = UserManager.FindByEmail(model.Email);

            if (newMember == null)
            {
                return(BadRequest());
            }

            var newMemberProjectMembership = newMember.Projects.FirstOrDefault(p => p.ProjectId == project.Id);

            if (newMemberProjectMembership == null)
            {
                var newMembership = new ProjectMembership
                {
                    UserId    = newMember.Id,
                    ProjectId = project.Id,
                    Role      = ProjectRoles.Member
                };
                project.Members.Add(newMembership);
            }
            else if (newMemberProjectMembership.Role == ProjectRoles.Admin)
            {
                project.Members.First(p => p.UserId == newMember.Id).Role = ProjectRoles.Member;
            }

            await db.SaveChangesAsync();

            // eager loading
            project = db.Projects.Where(p => p.Id == project.Id).Include(p => p.Members.Select(m => m.User)).First();
            return(Ok(new ProjectViewModel(project)));
        }
Exemple #4
0
        public IActionResult Register(AddUserBindingModel model, HttpResponse response)
        {
            var service = new AddUserService();

            if (service.ValidateUser(model))
            {
                service.AddUser(model);
                Redirect(response, "/home/index");
                return(null);
            }
            return(this.View());
        }
Exemple #5
0
        public void Edit(AddUserBindingModel bind)
        {
            Customer user = this.Context.Customers.Find(bind.Id);

            if (user == null)
            {
                throw new ArgumentException("Cannot find customer with such id !!");
            }
            user.Name      = bind.Name;
            user.BirthDate = bind.BirthDate;
            this.Context.SaveChanges();
        }
Exemple #6
0
        public async Task <IHttpActionResult> RemoveMember(AddUserBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var project = db.Projects.Find(model.ProjectId);

            if (project == null)
            {
                return(BadRequest());
            }

            var currentUser = UserManager.FindById(User.Identity.GetUserId());

            if (currentUser == null)
            {
                return(Unauthorized());
            }

            var projectMembership = currentUser.Projects.FirstOrDefault(p => p.Role == ProjectRoles.Admin && p.ProjectId == project.Id);

            if (projectMembership == null)
            {
                return(Unauthorized());
            }

            var selectedUser = UserManager.FindByEmail(model.Email);

            if (selectedUser == null)
            {
                return(BadRequest());
            }

            var selectedUserProjectMembership = selectedUser.Projects.FirstOrDefault(p => p.ProjectId == project.Id);

            if (selectedUserProjectMembership == null)
            {
                return(BadRequest());
            }
            else
            {
                var membership = project.Members.First(p => p.UserId == selectedUser.Id);
                project.Members.Remove(membership);
            }

            await db.SaveChangesAsync();

            return(Ok(new ProjectViewModel(project)));
        }
        public UserControllerTest()
        {
            //sample models
            addUser = new AddUserBindingModel {
                Username = "******", About = "Anna is nice.", Email = "*****@*****.**", Password = "******", Age = 20, PictureUrl = ""
            };

            //controller setup
            var userResultsMock = new Mock <IActionResult>();

            mockRepo = new Mock <IRepositoryWrapper>();
            var allUsers = GetUsers();

            userController = new UsersController(mockRepo.Object);
        }
Exemple #8
0
        public IActionResult CreateUser([FromBody] AddUserBindingModel bm)
        {
            var newUser = new User
            {
                Username   = bm.Username,
                Password   = bm.Password,
                Email      = bm.Email,
                Age        = bm.Age,
                About      = bm.About,
                PictureUrl = bm.PictureUrl
            };
            var createdUser = databases.Users.Add(newUser).Entity;

            databases.SaveChanges();
            return(Ok(createdUser.GetViewModel()));
        }
Exemple #9
0
        public void AddUser(AddUserBindingModel model)
        {
            var user = new User();

            user.Username = model.Username;
            user.Email    = model.Email;
            user.Password = model.Password;
            if (Data.Data.Contex.Users.Count() == 0)
            {
                user.IsAdmin = true;
            }
            else
            {
                user.IsAdmin = false;
            }
            Data.Data.Contex.Users.Add(user);
            Data.Data.Contex.SaveChanges();
        }
Exemple #10
0
        public IActionResult CreateUser(AddUserBindingModel bm)
        {
            var newUser = new User
            {
                Username   = bm.Username,
                Password   = bm.Password,
                Email      = bm.Email,
                Age        = bm.Age,
                About      = bm.About,
                PictureUrl = bm.PictureUrl
            };

            repo.Users.Create(newUser);
            repo.Save();
            //databases.Users.Add(newUser);
            //databases.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #11
0
        public async void AddUser(AddUserBindingModel userToAdd)
        {
            Dictionary <string, object> claims = new Dictionary <string, object> {
                { ClaimTypes.Role, userToAdd.Role }
            };

            UserRecordArgs newUser = new UserRecordArgs()
            {
                Email         = userToAdd.Email,
                EmailVerified = false,
                Password      = CommonSecurityConstants.FirstPassword,
                Disabled      = false
            };

            UserRecord record = await FirebaseAuth
                                .DefaultInstance.CreateUserAsync(newUser);

            await FirebaseAuth.DefaultInstance
            .SetCustomUserClaimsAsync(record.Uid, claims);
        }
Exemple #12
0
        public async Task <IHttpActionResult> Add(AddUserBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var user = new ApplicationUser()
            {
                UserName = model.Username
            };

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

            if (!result.Succeeded)
            {
                return(GetErrorResult(result));
            }

            return(Ok());
        }
Exemple #13
0
        public bool ValidateUser(AddUserBindingModel model)
        {
            var regUsername = Regex.Match(model.Username, "[a-z0-9]*");
            var regPassword = Regex.Match(model.Password, "[0-9]*");

            if (Data.Data.Contex.Users.Any(x => x.Username == model.Username || x.Email == model.Email))
            {
                return(false);
            }
            if (model.Username.Length < 3 || !regUsername.Success)
            {
                return(false);
            }
            if (model.Password.Length != 4 || !regPassword.Success)
            {
                return(false);
            }
            if (!model.Password.Equals(model.PasswordCheck))
            {
                return(false);
            }

            return(true);
        }
Exemple #14
0
        public void AddUser(AddUserBindingModel addUserBindingModel)
        {
            var timeNow           = DateTime.Now.Year;
            var eligbleForLicense = addUserBindingModel.BirthDate.Year + 18;

            if ((timeNow - eligbleForLicense) > 2)
            {
                var newUser = new Customer()
                {
                    Name = addUserBindingModel.Name, BirthDate = addUserBindingModel.BirthDate, IsYoungDriver = false
                };
                this.Context.Customers.Add(newUser);
            }
            else
            {
                var newUser = new Customer()
                {
                    Name = addUserBindingModel.Name, BirthDate = addUserBindingModel.BirthDate, IsYoungDriver = true
                };
                this.Context.Customers.Add(newUser);
            }

            this.Context.SaveChanges();
        }