private string dohvatiEmail(int?id)
        {
            UpravljanjeRecepturamaBaza db     = new UpravljanjeRecepturamaBaza();
            IQueryable <Osoba>         osobeQ = from o in db.Osoba
                                                where o.OsobaID == id
                                                select o;

            return(osobeQ.ToList().ElementAt(0).Email);
        }
Beispiel #2
0
        public ActionResult Register(Osoba osoba)
        {
            if (ModelState.IsValid)
            {
                var db = new UpravljanjeRecepturamaBaza();
                IQueryable <Osoba> emailOsoba = from o in db.Osoba
                                                where o.Email == osoba.Email
                                                select o;

                if (emailOsoba.Any())
                {
                    ModelState.AddModelError("", "Već postoji registracija s tim emailom.");
                }
                else
                {
                    using (db = new UpravljanjeRecepturamaBaza())
                    {
                        var crypto = new SimpleCrypto.PBKDF2();

                        var encryptPassword = crypto.Compute(osoba.Lozinka);

                        Osoba osobaR = new Osoba();

                        osobaR.Ime     = osoba.Ime;
                        osobaR.Prezime = osoba.Prezime;
                        osobaR.Email   = osoba.Email;
                        osobaR.Lozinka = encryptPassword;
                        osobaR.Salt    = crypto.Salt;

                        db.Osoba.Add(osobaR);
                        try
                        {
                            db.SaveChanges();
                        }
                        catch (DbEntityValidationException dbEx)
                        {
                            foreach (var validationErrors in dbEx.EntityValidationErrors)
                            {
                                foreach (var validationError in validationErrors.ValidationErrors)
                                {
                                    Trace.TraceInformation("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage);
                                }
                            }
                        }
                    }
                }
            }
            else
            {
                ModelState.AddModelError("", "Netočni podaci za registraciju.");
            }
            return(RedirectToAction("Login", "User"));
        }
Beispiel #3
0
        private bool isValid(String email, String password)
        {
            var  crypto  = new SimpleCrypto.PBKDF2();
            bool isValid = false;

            using (var db = new UpravljanjeRecepturamaBaza())
            {
                var osoba = db.Osoba.FirstOrDefault(o => o.Email == email);

                if (osoba != null)
                {
                    if (osoba.Lozinka == crypto.Compute(password, osoba.Salt))
                    {
                        isValid = true;
                    }
                }
            }

            return(isValid);
        }
        //
        // GET: /Application/
        protected override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            if (User != null)
            {
                var username = User.Identity.Name;

                if (!string.IsNullOrEmpty(username))
                {
                    UpravljanjeRecepturamaBaza db    = new UpravljanjeRecepturamaBaza();
                    IQueryable <Osoba>         osoba = from o in db.Osoba
                                                       where o.Email == username
                                                       select o;
                    string imePrezime = null;
                    foreach (Osoba o in osoba)
                    {
                        imePrezime = o.Ime + " " + o.Prezime;
                    }
                    ViewData.Add("FullName", imePrezime);
                }
            }
            base.OnActionExecuted(filterContext);
        }
        public ActionResult Novi(JeloViewModel jeloViewModel)
        {
            if (postojiIme(jeloViewModel.NazivJela))
            {
                ViewBag.Message = "Ime jela već postoji u bazi.";
                jeloViewModel.GrupaJelaLista = dohvatiGrupeJela();
                foreach (SastojakViewModel s in jeloViewModel.ListaSastojaka)
                {
                    s.listaJela     = dohvatiJela();
                    s.listaJedinica = dohvatiJedinice();
                }
                return(View(jeloViewModel));
            }

            for (int i = 0; i < jeloViewModel.ListaSastojaka.Count(); i++)
            {
                for (int j = i + 1; j < jeloViewModel.ListaSastojaka.Count(); j++)
                {
                    if (jeloViewModel.ListaSastojaka.ElementAt(i).SastojakID == jeloViewModel.ListaSastojaka.ElementAt(j).SastojakID)
                    {
                        ViewBag.Message = "Ne možete unijeti dva puta isti sastojak.";
                        jeloViewModel.GrupaJelaLista = dohvatiGrupeJela();
                        foreach (SastojakViewModel s in jeloViewModel.ListaSastojaka)
                        {
                            s.listaJela     = dohvatiJela();
                            s.listaJedinica = dohvatiJedinice();
                        }
                        return(View(jeloViewModel));
                    }
                }
            }

            if (!ModelState.IsValid)
            {
                //JeloViewModel jeloV = dohvatiGrupeJela();
                jeloViewModel.GrupaJelaLista = dohvatiGrupeJela();
                foreach (SastojakViewModel s in jeloViewModel.ListaSastojaka)
                {
                    s.listaJela     = dohvatiJela();
                    s.listaJedinica = dohvatiJedinice();
                }
                return(View(jeloViewModel));
            }

            Jelo jelo = new Jelo();

            if (jeloViewModel.SlikaJela != null)
            {
                byte[] uploadedFile = new byte[jeloViewModel.SlikaJela.InputStream.Length];
                jeloViewModel.SlikaJela.InputStream.Read(uploadedFile, 0, uploadedFile.Length);

                jelo.SlikaJela = uploadedFile;
            }

            jelo.NazivJela = jeloViewModel.NazivJela;

            jelo.GrupaJelaID = jeloViewModel.GrupaJelaID;
            jelo.Recept      = jeloViewModel.Recept;

            Osoba osoba = new Osoba();
            //UpravljanjeRecepturamaBaza db = new UpravljanjeRecepturamaBaza();

            IQueryable <Osoba> osobe = from o in db.Osoba
                                       where o.Email == jeloViewModel.Email
                                       select o;

            foreach (Osoba o in osobe)
            {
                jelo.OsobaID = o.OsobaID;
            }
            int jeloID;

            using (UpravljanjeRecepturamaBaza dc = new UpravljanjeRecepturamaBaza())
            {
                dc.Jelo.Add(jelo);
                dc.SaveChanges();
                jeloID = jelo.JeloID;
                ModelState.Clear();
                jelo            = null;
                ViewBag.Message = "Uspješno dodan recept. :)";
            }

            if (jeloViewModel.ListaSastojaka.Any())
            {
                foreach (SastojakViewModel s in jeloViewModel.ListaSastojaka)
                {
                    Sastojak noviSastojak = new Sastojak();

                    noviSastojak.JeloID          = jeloID;
                    noviSastojak.SastojakID      = s.SastojakID;
                    noviSastojak.JedinicaMjereID = s.JedinicaMjereID;
                    noviSastojak.Kolicina        = s.Kolicina;

                    using (UpravljanjeRecepturamaBaza dc = new UpravljanjeRecepturamaBaza())
                    {
                        dc.Sastojak.Add(noviSastojak);
                        dc.SaveChanges();
                        ModelState.Clear();
                        noviSastojak = null;
                    }
                }
            }
            return(RedirectToAction("ReceptPrikaz", "Recept", new { id = jeloID }));
        }