public ActionResult DeleteConfirmed(int id)
        {
            KorisnikNalog korisniknalog = db.KorisnikNalog.Find(id);

            db.KorisnikNalog.Remove(korisniknalog);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Delete(int id = 0)
        {
            KorisnikNalog korisniknalog = db.KorisnikNalog.Find(id);

            if (korisniknalog == null)
            {
                return(HttpNotFound());
            }
            return(View(korisniknalog));
        }
 public ActionResult Edit(KorisnikNalog korisniknalog)
 {
     if (ModelState.IsValid)
     {
         db.Entry(korisniknalog).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(korisniknalog));
 }
        public ActionResult CreateSubject(int id)
        {
            KorisnikNalog kn = db.KorisnikNalog.Find(id);

            Subjekt s = new Subjekt();

            s.Adresa         = kn.Adresa;
            s.DatumKreiranja = DateTime.Now.AddHours(7);
            s.DatumZapisa    = DateTime.Now.AddHours(7);
            s.Email          = kn.Email;
            s.Grad           = kn.Grad;
            s.KontaktOsoba   = kn.KontaktOsoba;
            s.Naziv          = kn.Naziv;
            s.PIB            = kn.PIB;
            s.Telefon        = kn.Telefon;
            s.Timocom        = kn.Timocom;
            s.JIB            = kn.JIB;
            s.PTT            = kn.PTT;
            s.Drzava         = kn.Drzava;
            s.ZapisAktivan   = true;

            return(View("~/Views/Subjekt/Create.cshtml", s));
        }
        public ActionResult CreateDnevnik(int id)
        {
            KorisnikNalog kn = db.KorisnikNalog.Find(id);

            DnevnikPrevoza dp = new DnevnikPrevoza();

            dp.DatumDnevnika = kn.DatumZahtjeva;

            if (kn.IdSubjekt.HasValue)
            {
                dp.IdNarucioca = kn.IdSubjekt;
            }

            dp.ReferentniBrojUtovara = kn.ReferentniBrojUtovara;
            dp.UtovarFirma           = kn.FirmaUtovar;
            dp.UtovarAdresa          = kn.MjestoUtovara;
            dp.UtovarGrad            = kn.Grad1;
            dp.UtovarPTT             = kn.PTT1;
            dp.UtovarDrzava          = kn.Drzava1;
            dp.IstovarFirma          = kn.FirmaIStovar;
            dp.IstovarAdresa         = kn.MjestoIstovara;
            dp.IstovarGrad           = kn.Grad2;
            dp.IstovarPTT            = kn.PTT2;
            dp.IstovarDrzava         = kn.Drzava2;
            dp.UtovarKontakt         = kn.IzvoznikKontaktOsoba;
            dp.IstovarKontakt        = kn.UvoznikKontaktOsoba;
            dp.DatumUtovara          = kn.DatumUtovara;
            dp.DatumIstovara         = kn.DatumIstovara;
            dp.VrstaRobe             = kn.VrstaRobe;
            dp.DimenzijeRobe         = kn.Dimenzije;
            dp.TezinaRobe            = kn.BrutoTezina;
            dp.KolicinaRobe          = kn.VrijednostRobe;
            dp.UvoznaSpedicija       = kn.UvoznaCarina;
            dp.IzvoznaSpedicija      = kn.IzvoznaCarina;

            dp.DnevnikUvoznikIzvoznik.Add(new DnevnikUvoznikIzvoznik {
                Uvoznik = kn.Uvoznik, Izvoznik = kn.Izvoznik
            });

            int utovari  = kn.KorisnikNalogUtovar.Count();                                                                                                      // 2
            int istovari = kn.KorisnikNalogIstovar.Count();                                                                                                     // 3
            int max      = kn.KorisnikNalogUtovar.Count() > kn.KorisnikNalogIstovar.Count() ? kn.KorisnikNalogUtovar.Count() : kn.KorisnikNalogIstovar.Count(); // 3

            for (int i = 0; i < max; i++)
            {
                var uto = i < utovari?kn.KorisnikNalogUtovar.ElementAt(i) : null;

                var ist = i < istovari?kn.KorisnikNalogIstovar.ElementAt(i) : null;

                dp.DnevnikCarina.Add(new DnevnikCarina {
                    IzvoznaCarina = uto == null ? "" : uto.IzvoznaCarina,
                    UvoznaCarina  = ist == null ? "" : ist.UvoznaCarina
                });
            }

            dp.DnevnikUtovar = kn.KorisnikNalogUtovar.Select(c => new DnevnikUtovar {
                Adresa                = c.Adresa,
                DatmUtovara           = c.DatmUtovara,
                DimenzijeRobe         = c.DimenzijeRobe,
                Drzava                = c.Drzava,
                Firma                 = c.Firma,
                KolicinaRobe          = c.KolicinaRobe,
                Kontakt               = c.Kontakt,
                Mjesto                = c.Mjesto,
                PTT                   = c.PTT,
                ReferentniBrojUtovara = c.ReferentniBrojUtovara,
                TezinaRobe            = c.TezinaRobe,
                VrstaRobe             = c.VrstaRobe
            }).ToList();

            dp.DnevnikIstovar = kn.KorisnikNalogIstovar.Select(c => new DnevnikIstovar
            {
                Adresa        = c.Adresa,
                DatumIstovara = c.DatumIstovara,
                Drzava        = c.Drzava,
                Firma         = c.Firma,
                KolicinaRobe  = c.KolicinaRobe,
                Kontakt       = c.Kontakt,
                Mjesto        = c.Mjesto,
                PTT           = c.PTT
            }).ToList();

            String SerijskiBroj = SerijskiBrojGenerator.Broj();

            ViewBag.DnevnikCarina  = new List <DnevnikCarina>();
            ViewBag.DnevnikIstovar = new List <DnevnikIstovar>();
            ViewBag.DnevnikUtovar  = new List <DnevnikUtovar>();

            var dUI = new List <DnevnikUvoznikIzvoznik>();

            dUI.Add(new DnevnikUvoznikIzvoznik {
                Uvoznik = kn.Uvoznik, Izvoznik = kn.Izvoznik
            });
            ViewBag.DnevnikUvoznikIzvoznik = dUI;



            ViewBag.Vrsta = new SelectList(db.TipUsluge, "Naziv", "Naziv");

            ViewBag.IdNar              = dp.IdNarucioca;
            ViewBag.SerijskiBroj       = SerijskiBroj;
            ViewBag.IdPonuda           = new SelectList(db.Ponuda.Select(c => new { IdDnevnik = c.IdDnevnik, Naziv = c.SerijskiBroj + " [ Za " + c.Subjekt.Naziv + " na destinaciju:  " + c.IstovarPTT + " " + c.IstovarGrad + " " + c.IstovarDrzava + " ]" }).OrderByDescending(k => k.IdDnevnik), "IdDnevnik", "Naziv");
            ViewBag.IdSubjekt          = new SelectList(db.Subjekt, "IdSubjekt", "Naziv", dp.IdSubjekt);
            ViewBag.IdNarucioca        = new SelectList(db.Subjekt, "IdSubjekt", "Naziv", dp.IdNarucioca);
            ViewBag.IdValuta           = new SelectList(db.Valuta, "IdValuta", "OznakaValute");
            ViewBag.IdValutaPrevoznika = new SelectList(db.Valuta, "IdValuta", "OznakaValute");
            ViewBag.IdVozac            = new SelectList(db.Vozaci, "IdVozac", "ImeVozaca");
            ViewBag.IdStatusDetaljni   = new SelectList(db.StatusRobe, "IdStatusRobe", "Naziv");
            ViewBag.IdVozilo           = new SelectList(db.Vozilo.Where(c => c.VrstaVozila.Equals("Vozilo")).Select(c => new { IdVozilo = c.IdVozilo, TipVozila = c.TipVozila + " " + c.RegistarskiBroj }), "IdVozilo", "TipVozila");
            ViewBag.IdPrikljucno       = new SelectList(db.Vozilo.Where(c => c.VrstaVozila.Equals("Priključno Vozilo")).Select(c => new { IdVozilo = c.IdVozilo, TipVozila = c.TipVozila + " " + c.RegistarskiBroj }), "IdVozilo", "TipVozila");
            ViewBag.IdDnevnikParent    = null; // new SelectList(db.DnevnikPrevoza.Where(c => (c.ZapisAktivan ?? false)).OrderByDescending(c => c.IdDnevnik).Take(50), "IdDnevnik", "SerijskiBroj");


            // return View(dp);
            return(View("~/Views/DnevnikPrevoza/CreateTab.cshtml", dp));
        }
        public ActionResult Create(KorisnikNalog korisniknalog)
        {
            if (ModelState.IsValid)
            {
                korisniknalog.DatumZahtjeva = DateTime.Now.AddHours(7);
                if (korisniknalog.IdSubjekt.HasValue)
                {
                    Subjekt kn = db.Subjekt.Find(korisniknalog.IdSubjekt);

                    korisniknalog.Adresa       = kn.Adresa;
                    korisniknalog.Email        = kn.Email;
                    korisniknalog.Grad         = kn.Grad;
                    korisniknalog.KontaktOsoba = kn.KontaktOsoba;
                    korisniknalog.Naziv        = kn.Naziv;
                    korisniknalog.PIB          = kn.PIB;
                    korisniknalog.Telefon      = kn.Telefon;
                    korisniknalog.Timocom      = kn.Timocom;
                    korisniknalog.JIB          = kn.JIB;
                    korisniknalog.PTT          = kn.PTT;
                    korisniknalog.Drzava       = kn.Drzava;
                }


                db.KorisnikNalog.Add(korisniknalog);
                db.SaveChanges();

                /*
                 * foreach (KorisnikNalogUtovar knu in korisniknalog.KorisnikNalogUtovar)
                 * {
                 *  knu.IdKorisnikNalog = korisniknalog.idKorisnikNalog;
                 *  db.KorisnikNalogUtovar.Add(knu);
                 * }
                 *
                 * foreach (KorisnikNalogIstovar kni in korisniknalog.KorisnikNalogIstovar)
                 * {
                 *  kni.IdKorisnikNalog = korisniknalog.idKorisnikNalog;
                 *  db.KorisnikNalogIstovar.Add(kni);
                 * }
                 * db.SaveChanges();
                 */

                String Posiljaoc = korisniknalog.Naziv == null?db.Subjekt.Find(korisniknalog.IdSubjekt).Naziv : korisniknalog.Naziv;

                MailMessage mail       = new MailMessage();
                SmtpClient  SmtpServer = new SmtpClient("ml01.anaxanet.com");

                mail.From    = new MailAddress(AppSettings.GetSettings()["mail_from"], AppSettings.GetSettings()["company_name"]);
                mail.Subject = "Dobili ste nalog za utovar!";

                mail.To.Add(AppSettings.GetSettings()["mail_to"]);
                mail.Bcc.Add("*****@*****.**");

                mail.IsBodyHtml = true;

                String text = "<div>";
                text += "<img src='http://" + AppSettings.GetSettings()["domain"] + "/Content/images/Logo.png'>";

                text += "<h2>" + Posiljaoc + " je poslao Nalog za Utovar.</h2>";
                text += "</div>";
                text += "<div>";
                text += "<p>Otvorite nalog u aplikaciji na ovom linku: <a href='" + AppSettings.GetSettings()["domain_name"] + "/KorisnikNalog/Details/" + korisniknalog.idKorisnikNalog + "'> " + AppSettings.GetSettings()["domain_name"] + "/KorisnikNalog/Details/" + korisniknalog.idKorisnikNalog + "</a></p>";
                text += "</div>";

                mail.Body = text;
                SmtpServer.Send(mail);

                return(RedirectToAction("Login", "Account", new { Message = "OKNALOG" }));
            }

            return(View(korisniknalog));
        }