Exemple #1
0
        internal static bool ValidateLastChanged(BoilerplateContext context, int userID, string lastChanged)
        {
            var    user        = context.Users.Find(userID);
            string changedTime = user.EditedDate.ToString() ?? user.CreatedDate.ToString();

            return(changedTime == lastChanged);
        }
Exemple #2
0
 internal static void Register(BoilerplateContext context, string username, string emailAddress, string password)
 {
     context.Users.Add(new User()
     {
         Username = username, EmailAddress = emailAddress, PasswordHash = BCrypt.Net.BCrypt.HashPassword(password), Role = Role.GetUserRole(context)
     });
 }
Exemple #3
0
        internal static void EditEmail(BoilerplateContext context, int id, string emailAddress)
        {
            var userToEdit = context.Users.Find(id);

            userToEdit.EmailAddress = emailAddress;
            context.Users.Attach(userToEdit);
            context.Entry(userToEdit).State = EntityState.Modified;
        }
Exemple #4
0
 internal static bool CheckUniqueUsername(BoilerplateContext context, string username)
 {
     if (context.Users.Where(u => u.Username == username).Count() > 0)
     {
         return(false);
     }
     return(true);
 }
Exemple #5
0
 internal static bool CheckUniqueEmailAddress(BoilerplateContext context, string emailAddress)
 {
     if (context.Users.Where(u => u.EmailAddress == emailAddress).Count() > 0)
     {
         return(false);
     }
     return(true);
 }
Exemple #6
0
        internal static UserDTO Get(BoilerplateContext context, int id)
        {
            var user = context.Users.Find(id);

            context.Entry(user).Reference(e => e.Role).Load();
            return(new UserDTO()
            {
                ID = user.ID, EmailAddress = user.EmailAddress, Role = user.Role.Name, Username = user.Username, LastUpdated = user.EditedDate ?? user.CreatedDate
            });
        }
Exemple #7
0
        internal static int GetTotalPages(BoilerplateContext context, int resultAmount, string search)
        {
            var culture = CultureInfo.InvariantCulture;

            if (!string.IsNullOrWhiteSpace(search))
            {
                return(context.Users.Where(e => culture.CompareInfo.IndexOf(e.EmailAddress, search, CompareOptions.IgnoreCase) >= 0 || culture.CompareInfo.IndexOf(e.Username, search, CompareOptions.IgnoreCase) >= 0).Count() / resultAmount);
            }
            else
            {
                return(context.Users.Count() / resultAmount);
            }
        }
Exemple #8
0
        internal static UserDTO Login(BoilerplateContext context, string usernameOrEmailAddress, string password)
        {
            var user = context.Users
                       .Include(u => u.Role)
                       .Where(u => u.Username == usernameOrEmailAddress || u.EmailAddress == usernameOrEmailAddress)
                       .FirstOrDefault();

            if (user != null && BCrypt.Net.BCrypt.Verify(password, user.PasswordHash))
            {
                return(new UserDTO()
                {
                    EmailAddress = user.EmailAddress, ID = user.ID, Username = user.Username, Role = user.Role.Name
                });
            }
            return(null);
        }
        public static void Seed(BoilerplateContext context)
        {
            int  users      = context.Users.Count();
            var  usersToAdd = new List <User>();
            Role role       = Role.GetUserRole(context);

            for (int i = users; i < 500; i++)
            {
                usersToAdd.Add(new User()
                {
                    Username = RandomString(6), EmailAddress = RandomString(6) + "@" + RandomString(4) + ".com", PasswordHash = BCrypt.Net.BCrypt.HashPassword(RandomString(6)), Role = role
                });
            }
            context.AddRange(usersToAdd);
            return;
        }
Exemple #10
0
        public static void Seed(BoilerplateContext context)
        {
            var rolesToAdd = new List <Role>();

            if (context.Roles.Where(e => e.Name == "User").FirstOrDefault() == null)
            {
                context.Roles.Add(new Role()
                {
                    Name = "User"
                });
            }
            if (context.Roles.Where(e => e.Name == "Admin").FirstOrDefault() == null)
            {
                context.Roles.Add(new Role()
                {
                    Name = "Admin"
                });
            }
            context.AddRange(rolesToAdd);
        }
Exemple #11
0
        internal static List <UserDTO> GetPage(BoilerplateContext context, int pageNumber, int resultAmount, string search)
        {
            int resultsToSkip = pageNumber * resultAmount;
            var culture       = CultureInfo.InvariantCulture;

            if (!string.IsNullOrWhiteSpace(search))
            {
                return(context.Users
                       .OrderBy(e => e.CreatedDate)
                       .Where(e => culture.CompareInfo.IndexOf(e.EmailAddress, search, CompareOptions.IgnoreCase) >= 0 || culture.CompareInfo.IndexOf(e.Username, search, CompareOptions.IgnoreCase) >= 0)
                       .Skip(resultsToSkip)
                       .Take(resultAmount)
                       .Select(e => new UserDTO()
                {
                    EmailAddress = e.EmailAddress,
                    ID = e.ID,
                    LastUpdated = e.EditedDate ?? e.CreatedDate,
                    Role = e.Role.Name,
                    Username = e.Username
                })
                       .ToList());
            }
            else
            {
                return(context.Users
                       .OrderBy(e => e.CreatedDate)
                       .Skip(resultsToSkip)
                       .Take(resultAmount)
                       .Select(e => new UserDTO()
                {
                    EmailAddress = e.EmailAddress,
                    ID = e.ID,
                    LastUpdated = e.EditedDate ?? e.CreatedDate,
                    Role = e.Role.Name,
                    Username = e.Username
                })
                       .ToList());
            }
        }
Exemple #12
0
 internal static Role GetUserRole(BoilerplateContext context)
 {
     return(context.Roles.Where(r => r.Name == "User").FirstOrDefault());
 }
 public HomeController(BoilerplateContext context)
 {
     _context = context;
 }
Exemple #14
0
 public RoleRepository(BoilerplateContext context)
 {
     this.context = context;
 }
 public UnitOfWork()
 {
     this.context = new BoilerplateContext();
 }