Exemple #1
0
        public bool SaveUserImage(int userId, string imagePath, int imageSize, string extension)
        {
            using (var db = new MeetUpDbContext())
            {
                var user = db.Users
                           .Where(u => u.Id == userId)
                           .FirstOrDefault();

                if (user == null)
                {
                    return(false);
                }

                var image = new Image
                {
                    Path      = imagePath,
                    UserId    = userId,
                    Size      = imageSize,
                    Extension = extension
                };

                user.Images.Add(image);
                db.SaveChanges();

                return(true);
            }
        }
Exemple #2
0
 public IEnumerable <UserListingModel> All(int page = 1, int pageSize = 10, int?withoutUserId = 0)
 {
     using (var db = new MeetUpDbContext())
     {
         return(db
                .Users
                .Where(u => (u.Id != withoutUserId && u.Deleted == 0))
                .OrderByDescending(u => u.Id)
                .Skip((page - 1) * pageSize)
                .Take(pageSize)
                .Select(u => new UserListingModel
         {
             Id = u.Id,
             Name = u.FullName,
             Description = u.Description,
             Banned = u.Banned,
             Sex = u.Sex,
             Role = u.Role,
             Active = u.Active,
             Images = u.Images.Select(i => new UserImageModel
             {
                 Id = i.Id,
                 Path = i.Path,
                 Size = i.Size,
                 Extension = i.Extension
             })
         })
                .ToList());
     }
 }
Exemple #3
0
        public bool Create(string email, string password, string fullname, string description, DateTime?birthday = null, UserRole role = UserRole.User, UserSex sex = UserSex.Other)
        {
            using (var db = new MeetUpDbContext())
            {
                var mailExists = db.Users.Any(u => u.Email == email);

                if (mailExists)
                {
                    return(false);
                }

                var salt       = HelperFunctions.Get_SALT();
                var hashedPass = HelperFunctions.Get_HASH_SHA512(password, email, salt);

                var user = new User
                {
                    Email       = email,
                    Password    = hashedPass,
                    Salt        = salt,
                    FullName    = fullname,
                    Description = description,
                    Birthday    = birthday,
                    Sex         = sex,
                    Role        = role,
                    CreateTime  = DateTime.Today,
                    LastOnline  = DateTime.Today
                };

                db.Users.Add(user);
                db.SaveChanges();

                return(true);
            }
        }
Exemple #4
0
 public UserViewModel GetUserById(int id)
 {
     using (var db = new MeetUpDbContext())
     {
         return(db.Users
                .Where(u => u.Id == id)
                .Select(u => new UserViewModel
         {
             Id = u.Id,
             FullName = u.FullName,
             Email = u.Email,
             City = u.City.Name,
             Birthday = u.Birthday,
             Description = u.Description,
             Sex = u.Sex,
             Role = u.Role,
             Active = u.Active,
             Banned = u.Banned,
             Images = u.Images.Select(i => new UserImageModel
             {
                 Id = i.Id,
                 Path = i.Path,
                 Size = i.Size,
                 Extension = i.Extension
             })
         })
                .FirstOrDefault());
     }
 }
Exemple #5
0
        public bool Login(string email, string password)
        {
            string realHashedPassword = string.Empty;

            byte[] salt = new byte[HelperFunctions.saltLengthLimit];

            using (var db = new MeetUpDbContext())
            {
                var user = db.Users
                           .Where(u => u.Email == email && u.Deleted == 0 && u.Banned == 0 && u.Role == UserRole.Admin)
                           .FirstOrDefault();

                if (user == null)
                {
                    return(false);
                }

                realHashedPassword = user.Password;
                salt = user.Salt;

                bool isLogin = HelperFunctions.CompareHashValue(password, email, realHashedPassword, salt);

                if (isLogin)
                {
                    return(true);
                }

                return(false);
            }
        }
Exemple #6
0
 public int Count()
 {
     using (var db = new MeetUpDbContext())
     {
         return(db.Users.Count());
     }
 }
Exemple #7
0
 public IEnumerable <Image> getAllPhotos(int userId)
 {
     using (var db = new MeetUpDbContext())
     {
         return((from image in db.Images where image.UserId == userId && image.Deleted == false select image).ToList());
     }
 }
Exemple #8
0
        public void DeleteImage(int id)
        {
            using (var db = new MeetUpDbContext())
            {
                var image = db.Images
                            .Where(u => u.Id == id)
                            .FirstOrDefault();

                image.Deleted = true;
                db.SaveChanges();
            }
        }
Exemple #9
0
 public CityViewModel GetCityById(int id)
 {
     using (var db = new MeetUpDbContext())
     {
         return(db.Cities
                .Where(u => u.Id == id)
                .Select(u => new CityViewModel
         {
             Id = u.Id,
             Name = u.Name,
         })
                .FirstOrDefault());
     }
 }
Exemple #10
0
 public UserServiceModel GetUserByEmail(string email)
 {
     using (var db = new MeetUpDbContext())
     {
         return(db.Users
                .Where(u => u.Email == email)
                .Select(u => new UserServiceModel
         {
             Id = u.Id,
             Email = u.Email,
             FullName = u.FullName
         })
                .FirstOrDefault());
     }
 }
Exemple #11
0
        public void UpdateCity(int id,
                               string name = null,
                               int?deleted = null)
        {
            using (var db = new MeetUpDbContext())
            {
                var dbCity = db.Cities
                             .Where(u => u.Id == id)
                             .FirstOrDefault();

                dbCity.Name    = name ?? dbCity.Name;
                dbCity.Deleted = deleted ?? dbCity.Deleted;

                db.SaveChanges();
            }
        }
Exemple #12
0
        public void Populate()
        {
            using (var db = new MeetUpDbContext())
            {
                if (!db.Cities.Any())
                {
                    var city = new City
                    {
                        Name = "Sofia"
                    };

                    db.Cities.Add(city);
                    db.SaveChanges();
                }
            }
        }
Exemple #13
0
 private static void CreateSystemUser(MeetUpDbContext context, Guid serviceId, string serviceName)
 {
     context.AspNetUsers.AddOrUpdate(
         m => m.Id,
         new AspNetUser
     {
         Id            = serviceId,
         FirstName     = serviceName,
         LastName      = nameof(SystemUsers),
         Email         = $"{serviceName.ToLower()}@sysusers.internal", // must be unique, and better conform to email format
         InternalEmail = $"#ERR_{serviceName}#",                       // not possible to email sys-users, yet must be unique, conform or not?
         IsSystemUser  = true,
         LanguageCode  = LanguageCode.English,
         Tracking      = EntityTracker.StartTracking(SystemUsers.Migrator)
     });
 }
Exemple #14
0
 public IEnumerable <CityListingModel> All(int page = 1, int pageSize = 10)
 {
     using (var db = new MeetUpDbContext())
     {
         return(db
                .Cities
                .OrderByDescending(u => u.Id)
                .Skip((page - 1) * pageSize)
                .Take(pageSize)
                .Where(u => u.Deleted == 0)
                .Select(u => new CityListingModel
         {
             Id = u.Id,
             Name = u.Name,
         })
                .ToList());
     }
 }
Exemple #15
0
        public bool Create(string name)
        {
            using (var db = new MeetUpDbContext())
            {
                var cityExists = db.Cities.Any(u => u.Name == name);

                if (cityExists)
                {
                    return(false);
                }

                var city = new City
                {
                    Name = name,
                };

                db.Cities.Add(city);
                db.SaveChanges();

                return(true);
            }
        }
Exemple #16
0
        public void UpdateUser(int id,
                               string fullname    = null,
                               string description = null,
                               int?cityId         = null,
                               DateTime?birthday  = null,
                               string password    = null,
                               int?active         = null,
                               int?deleted        = null,
                               int?banned         = null,
                               UserRole?role      = null,
                               UserSex?sex        = null)
        {
            using (var db = new MeetUpDbContext())
            {
                var dbUser = db.Users
                             .Where(u => u.Id == id)
                             .FirstOrDefault();

                if (password != null)
                {
                    var salt       = dbUser.Salt;
                    var hashedPass = HelperFunctions.Get_HASH_SHA512(password, dbUser.Email, salt);

                    dbUser.Password = hashedPass;
                }

                dbUser.FullName    = fullname ?? dbUser.FullName;
                dbUser.Description = description ?? dbUser.Description;
                dbUser.CityId      = cityId ?? dbUser.CityId;
                dbUser.Birthday    = birthday ?? dbUser.Birthday;
                dbUser.Active      = active ?? dbUser.Active;
                dbUser.Deleted     = deleted ?? dbUser.Deleted;
                dbUser.Banned      = banned ?? dbUser.Banned;
                dbUser.Sex         = sex ?? dbUser.Sex;
                dbUser.Role        = role ?? dbUser.Role;

                db.SaveChanges();
            }
        }
Exemple #17
0
 public UnitOfWorkWithPermissions(MeetUpDbContext context, Guid userId)
     : base(new PermissionsWrapper(context, userId))
 {
     _userId = userId;
 }
Exemple #18
0
 public UnitOfWorkWithPermissions(MeetUpDbContext context) : base(context)
 {
 }
 public PermissionsWrapper(MeetUpDbContext context, Guid userId)
 {
     _context = context;
     _userId  = userId;
 }
Exemple #20
0
 public UserService(MeetUpDbContext db)
 {
     this.db = db;
 }
 public DailySuggestionService(MeetUpDbContext db)
 {
     this.db = db;
 }
Exemple #22
0
 /// <summary>
 /// Injection .ctor
 /// </summary>
 /// <remarks>This is slightly better, to be used with factory, but this has to be controlled by consumer code</remarks>
 protected BaseRepository(MeetUpDbContext context)
 {
     _context = new Lazy <MeetUpDbContext>(() => context);
 }