Exemple #1
0
        private string ProcesSpremanjaSlike(IgracDodajVM obj)
        {
            string ImeFajla = null;

            if (obj != null)
            {
                Directory.CreateDirectory(Path.Combine(_host.WebRootPath, "igraci").ToString());
                ImeFajla = Guid.NewGuid().ToString() + "_" + obj.PrikaznoIme + obj.Slika.FileName.Substring(obj.Slika.FileName.IndexOf("."));
                string PathSpremanja = Path.Combine(_host.WebRootPath, "igraci", ImeFajla);
                using (var fileStream = new FileStream(PathSpremanja, FileMode.Create))
                {
                    obj.Slika.CopyTo(fileStream);
                }
            }
            return(ImeFajla);
        }
Exemple #2
0
        public IActionResult Dodaj(IgracDodajVM igrac)
        {
            if (ModelState.IsValid)
            {
                if (igrac.PrikaznoIme != null && !JeLiUnique(igrac.PrikaznoIme))
                {
                    ModelState.AddModelError(nameof(igrac.PrikaznoIme), "Prikazno ime je zauzeto.");
                    return(View(igrac));
                }
                int   id   = KreirajLoginIUsera();
                Igrac novi = new Igrac
                {
                    ID = id,
                    BrojPosjetaNaProfil = 0,
                    ELO         = 1000,
                    JacaRuka    = igrac.JacaRuka,
                    PrikaznoIme = igrac.PrikaznoIme,
                    Visina      = igrac.Visina
                };
                Statistika statistika = new Statistika(novi.ID);

                if (igrac.Slika != null)
                {
                    if (!igrac.Slika.ContentType.Contains("image"))
                    {
                        ModelState.AddModelError(nameof(igrac.Slika), "Mozete uploadat samo sliku.");
                    }
                    else
                    {
                        string ImeFajla = ProcesSpremanjaSlike(igrac);
                        novi.ProfileImagePath = "~/igraci/" + ImeFajla;
                    }
                }
                else
                {
                    novi.ProfileImagePath = "/profile_picture_default.png";
                }
                db.Add(novi);
                db.Add(statistika);
                db.SaveChanges();
                return(Redirect("/Igrac/PrikazProfila/" + novi.ID));
            }

            return(View(igrac));
        }
Exemple #3
0
        public IActionResult Dodaj(IgracDodajVM igrac)
        {
            if (ModelState.IsValid)
            {
                if (igrac.ID == null || igrac.Token == "")
                {
                    return(RedirectToAction("Neuspjeh", new { poruka = "Igrac se moze kreirati samo prilikom potvrde mejla" }));
                }
                if (igrac.PrikaznoIme != null && !JeLiUnique(igrac.PrikaznoIme))
                {
                    ModelState.AddModelError(nameof(igrac.PrikaznoIme), "Prikazno ime je zauzeto.");
                    return(View(igrac));
                }
                //int id=KreirajLoginIUsera();
                Igrac novi = new Igrac
                {
                    ID = igrac.ID.GetValueOrDefault(),
                    BrojPosjetaNaProfil = 0,
                    ELO         = 1000,
                    JacaRuka    = igrac.JacaRuka,
                    PrikaznoIme = igrac.PrikaznoIme,
                    Visina      = igrac.Visina,
                    GradID      = igrac.GradId,
                    Spol        = igrac.Spol
                };
                Statistika statistika = new Statistika(novi.ID);

                if (igrac.Slika != null)
                {
                    if (!igrac.Slika.ContentType.Contains("image"))
                    {
                        ModelState.AddModelError(nameof(igrac.Slika), "Mozete uploadat samo sliku.");
                    }
                    else
                    {
                        string ImeFajla = ProcesSpremanjaSlike(igrac);
                        novi.ProfileImagePath = "~/igraci/" + ImeFajla;
                    }
                }
                else
                {
                    novi.ProfileImagePath = "/profile_picture_default.png";
                }
                var user = db.Users.Where(x => x.Id == novi.ID).AsNoTracking().FirstOrDefault();
                db.Entry(user).State = EntityState.Detached;

                db.Igraci.Add(novi);
                db.Statistike.Add(statistika);
                db.SaveChanges();
                db.ChangeTracker.Entries().ToList(); // visak samo zbog testiranja stavljeno
                return(RedirectToAction("PotvrdiMail", "Account", new
                {
                    userid = novi.ID.ToString(),
                    token = igrac.Token
                }));
            }
            ViewBag.id    = igrac.ID.GetValueOrDefault();
            ViewBag.token = igrac.Token;
            GetGradove();
            return(View(igrac));
        }