Ejemplo n.º 1
0
        public async Task <IActionResult> Register([FromBody] RegisterRequest req)
        {
            if (req == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var user = await repository.GetByEmail(req.Email);

            if (user != null)
            {
                return(BadRequest());
            }

            user          = new DataLayer.Models.User();
            user.Email    = req.Email;
            user.Name     = req.Name;
            user.Password = req.Password;

            await repository.Add(user);

            return(Ok());
        }
Ejemplo n.º 2
0
        public User Add(User userToAdd)
        {
            var user = ((UserProvider)dataProvider).GetByName(userToAdd.Name);

            if (user != null)
            {
                throw new UserAlreadyExistsException($"Username {userToAdd.Name} already exists.");
            }

            var userModel = new DataLayer.Models.User
            {
                Id               = Guid.NewGuid(),
                Name             = userToAdd.Name,
                LastActiveTime   = null,
                LastLoginTime    = null,
                PasswordHash     = null,
                PasswordHashSalt = null
            };

            byte[] pwdHash, pwdHashSalt;
            CreatePasswordHash(userToAdd.Password, out pwdHash, out pwdHashSalt);
            userModel.PasswordHash     = pwdHash;
            userModel.PasswordHashSalt = pwdHashSalt;

            var addedUser = dataCollector.Add(userModel);

            var userDto = new User
            {
                Id       = addedUser.Id,
                Name     = addedUser.Name,
                Password = null
            };

            return(userDto);
        }
Ejemplo n.º 3
0
 public UserListingViewModel(DataLayer.Models.User user)
 {
     Name       = user.UserName;
     FirstName  = user.FirstName;
     SecondName = user.SecondName;
     Avatar     = user.AvatarUrl;
 }
        public void Add(User item)
        {
            var user = new DataLayer.Models.User()
            {
                EmailAddress = item.EmailAddress,
            };

            _userRepository.Add(user);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Translates a user model to a user.
        /// </summary>
        /// <param name="model">The user model.</param>
        /// <returns>The user.</returns>
        public Task <DataLayer.Models.User> TranslateUser(UserModel model)
        {
            byte[] password = null;
            byte[] salt     = null;
            if (null != model.Password)
            {
                salt     = PasswordGenerator.GenerateRandom(64);
                password = PasswordGenerator.HashPassword(salt, model.Password);
            }

            var result = new DataLayer.Models.User(model.Id, model.Name, model.Email, salt, password, model.Roles.ToHashSet());

            return(Task.FromResult(result));
        }
Ejemplo n.º 6
0
 public LoginResponse(DataLayer.Models.User user) : base(user)
 {
 }
Ejemplo n.º 7
0
 public UserBase(DataLayer.Models.User user)
 {
     this.User = user.Email;
     this.Name = user.Name;
 }
Ejemplo n.º 8
0
        /// <summary>
        /// Adds an uncomfirmed booking for to the database
        /// </summary>
        /// <param name="db">The database instance</param>
        /// <param name="slots">The time slots for the booking</param>
        /// <param name="user">The user</param>
        /// <param name="resource">The resource</param>
        /// <param name="date">The date</param>
        /// <param name="bookedBy">The person who made the group booking</param>
        public void AddUnconfirmedBooking(ReScrumEntities db, List <DataLayer.Models.Slot> slots, DataLayer.Models.User user, DataLayer.Models.Resource resource, DateTime date, DataLayer.Models.User bookedBy)
        {
            foreach (DataLayer.Models.Slot slot in slots)
            {
                var booking = new DataLayer.Models.UnconfirmedBooking();

                booking.Date     = date;
                booking.Slot     = slot;
                booking.Resource = resource;
                booking.User     = user;
                booking.BookedBy = bookedBy;

                db.UnconfirmedBooking.Add(booking);
            }

            db.SaveChanges();
        }