Exemple #1
0
        public IActionResult Add(AddCatBindingModel model)
        {
            if (!this.TryValidateModel(model))
            {
                ViewData["Message"] = "Error!";

                return(View());
            }

            Cat cat = new Cat()
            {
                Name     = model.Name,
                Age      = model.Age,
                Breed    = model.Breed,
                ImageUrl = model.ImageUrl
            };

            int id = 0;

            using (var db = new FDMCDbContext())
            {
                db.Cats.Add(cat);

                db.SaveChanges();

                id = cat.Id;
            }

            return(RedirectToAction("Details", new { id }));
        }
        public IActionResult Add(AddKittenBindingModel model)
        {
            this.SetupLayoutHtml();

            Breed breed = 0;

            if (!IsValidModel(model) || !Enum.TryParse(model.Breed, out breed))
            {
                this.Model["message"] = "Invalid data in the fields";

                return(this.View());
            }

            Kitten kitten = new Kitten(model.Name, model.Age, breed);

            using (var db = new FDMCDbContext())
            {
                User user = db.Users.FirstOrDefault(u => u.Username == this.User.Name);

                kitten.OwnerId = user.Id;

                db.Cats.Add(kitten);

                db.SaveChanges();
            }

            this.Model["message"] = "Kitten added!";

            return(this.View());
        }
Exemple #3
0
        public IActionResult Register(RegisterUserBindingModel model)
        {
            this.SetupLayoutHtml();

            if (model.Password != model.ConfirmPassword)
            {
                this.Model["message"] = "Confirm password doesnt match";

                return(View());
            }

            if (!IsValidModel(model))
            {
                this.Model["message"] = "Invalid data in the fields!";

                return(View());
            }
            string passwordHash = PasswordUtilities.GetHash(model.Password);

            User user = new User(model.Username, passwordHash, model.Email);

            using (var db = new FDMCDbContext())
            {
                if (db.Users.Select(u => u.Username).Contains(user.Username))
                {
                    this.Model["message"] = "Username is allready taken!";

                    return(View());
                }

                db.Users.Add(user);

                db.SaveChanges();
            }

            return(this.Login("Successful registration!"));
        }