Beispiel #1
0
        public void SavePicturesFromFiles(HttpPostedFileBase[] filesToUpload, string baseDir)
        {
            using (var transaction = _context.Database.BeginTransaction())
            {
                try
                {
                    foreach (var uploadedFile in filesToUpload)
                    {
                        var picture = PictureEntityFromFile(uploadedFile, baseDir);
                        uploadedFile.SaveAs(picture.Path);

                        _context.Pictures.Add(picture);
                    }

                    _context.SaveChanges();
                }
                catch (Exception)
                {
                    transaction.Rollback();
                    throw;
                }

                transaction.Commit();
            }
        }
Beispiel #2
0
        private User SaveUser(RegisterModel model)
        {
            var passworHash = GetMd5Hash(model.Password);
            var newUser     = new User
            {
                Email        = model.Email,
                PasswordHash = passworHash
            };

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

            return(db.Users
                   .Where(u => u.Email == model.Email && u.PasswordHash == passworHash)
                   .FirstOrDefault());
        }
Beispiel #3
0
        private void RatePicture(int pictureId, bool rate = true)
        {
            var userId = db.GetUserId(User);

            var previousRate = db.Rates
                               .Where(x => x.PictureId == pictureId && x.UserId == userId)
                               .FirstOrDefault();

            if (previousRate != null)
            {
                if (previousRate.Like == rate)
                {
                    db.Rates.Remove(previousRate);
                }
                else
                {
                    previousRate.Like = rate;
                }
            }
            else
            {
                var newRate = new Rate
                {
                    Like      = rate,
                    PictureId = pictureId,
                    UserId    = userId
                };
                db.Rates.Add(newRate);
            }

            db.SaveChanges();
        }
Beispiel #4
0
        public ActionResult InitializeDatabase()
        {
            _context = new PicsurferContext(ConnectionHelper.connStr);
            if (!_context.Users.Any())
            {
                var adminUser = new User
                {
                    Email        = "*****@*****.**",
                    PasswordHash = "202cb962ac59075b964b07152d234b70",
                    IsAdmin      = true
                };

                _context.Users.Add(adminUser);
                _context.SaveChanges();
            }
            ViewBag.Title = "DB is initialised";

            return(View("Index"));
        }