示例#1
0
        public ActionResult Index()
        {
            var korisnik = db.Korisniks.Find(User.Identity.Name);

            if (korisnik != null)
            {
                if (korisnik.Administrator != null)
                {
                    return(RedirectToAction("Index", "Admin", new { id = korisnik.ID_korisnika }));
                }
                else if (korisnik.Biletar != null)
                {
                    return(RedirectToAction("Index", "Biletar", new { id = korisnik.ID_korisnika }));
                }
                else
                {
                    return(RedirectToAction("Index", "Gledalac", new { id = korisnik.ID_korisnika }));
                }
            }
            else
            {
                Pozoriste.ViewModel.ProfilKorisnika profil = new ViewModel.ProfilKorisnika();
                //repertoari
                profil.repertoari = new List <Repertoar>();
                var repertoariLista = db.Repertoars.Select(x => x.Datum).ToList();
                foreach (var repertoar in repertoariLista)
                {
                    profil.repertoari.Add(db.Repertoars.Where(x => x.Datum == repertoar).Single());
                }

                DateTime danas      = DateTime.Today;
                DateTime sedamDana  = danas.AddDays(7);
                DateTime mjesecDana = danas.AddDays(30);
                //izvedbe na danasnjem repertoaru
                profil.izvedbeD = new List <Izvedba>();
                var izvedbeDLista = db.Izvedbas.Where(x => x.Repertoar_Datum == danas).Select(x => x.ID_izvedbe).ToList();
                if (izvedbeDLista.Count > 0)
                {
                    foreach (var izvedba in izvedbeDLista)
                    {
                        profil.izvedbeD.Add(db.Izvedbas.Where(x => x.ID_izvedbe == izvedba).Single());
                    }
                }
                //izvedbe koje ce se odigrati u narednih 7 dana
                profil.izvedbeS = new List <Izvedba>();
                var izvedbeSLista = db.Izvedbas.Where(x => x.Repertoar_Datum <= sedamDana).Where(x => x.Repertoar_Datum >= danas).Select(x => x.ID_izvedbe).ToList();
                foreach (var izvedba in izvedbeSLista)
                {
                    profil.izvedbeS.Add(db.Izvedbas.Where(x => x.ID_izvedbe == izvedba).Single());
                }
                //izvedbe koje ce se odigrati u narednih mjesec dana
                profil.izvedbeM = new List <Izvedba>();
                var izvedbeMLista = db.Izvedbas.Where(x => x.Repertoar_Datum <= mjesecDana).Where(x => x.Repertoar_Datum >= danas).Select(x => x.ID_izvedbe).ToList();
                foreach (var izvedba in izvedbeMLista)
                {
                    profil.izvedbeM.Add(db.Izvedbas.Where(x => x.ID_izvedbe == izvedba).Single());
                }
                return(View(profil));
            }
        }
示例#2
0
        public ActionResult EditProfil()
        {
            Pozoriste.ViewModel.ProfilKorisnika profil = new ViewModel.ProfilKorisnika();
            //osnovni podaci
            var korisnik = db.Korisniks.Find(User.Identity.Name);

            return(View(korisnik));
        }
示例#3
0
        //
        // GET: /Gledalac/
        public ActionResult Index()
        {
            Pozoriste.ViewModel.ProfilKorisnika profil = new ViewModel.ProfilKorisnika();
            //osnovni podaci
            var korisnik = db.Korisniks.Find(User.Identity.Name);

            profil.ID_korisnika = korisnik.ID_korisnika;
            profil.Ime          = korisnik.Ime;
            profil.Prezime      = korisnik.Prezime;
            profil.sifra        = korisnik.Sifra;

            //umjesto izvedbi join izvedbe i rezervacije, RezervisanaIzvedba ViewModel srediti itd
            List <Pozoriste.ViewModel.RezervisanaIzvedba> rezervisaneIzvedbe = new List <Pozoriste.ViewModel.RezervisanaIzvedba>();

            var rezervacije = db.Rezervacijas.Where(x => x.Gledalac_ID_korisnika == User.Identity.Name).OrderBy(x => x.Izvedba.Repertoar_Datum).ToList();

            profil.rezervacije = new List <Rezervacija>();
            foreach (var rez in rezervacije)
            {
                profil.rezervacije.Add(rez);
            }

            foreach (var item in db.Izvedbas.Where(x => x.Repertoar_Datum > System.DateTime.Today))
            {
                if (rezervacije.Exists(x => x.Izvedba_ID_izvedbe == item.ID_izvedbe))
                {
                    Pozoriste.ViewModel.RezervisanaIzvedba rezIzv = new ViewModel.RezervisanaIzvedba();
                    rezIzv.id_izvedbe         = item.ID_izvedbe;
                    rezIzv.datum_izvedbe      = item.Repertoar.Datum;
                    rezIzv.naziv_predstave    = item.Predstava.Naziv_Predstave;
                    rezIzv.vrijeme_izvodjenja = item.Vrijeme_izvodjenja;
                    rezIzv.naziv_sale         = item.Sala.Naziv_Sale;
                    rezIzv.mesta = db.Rezervacijas.Where(x => x.Izvedba_ID_izvedbe == item.ID_izvedbe).Select(x => x.Sjediste_ID_sjedista).ToList();
                    rezervisaneIzvedbe.Add(rezIzv);
                }
            }
            profil.rezervisaneIzvedbe = rezervisaneIzvedbe;

            DateTime danas      = DateTime.Today;
            DateTime sedamDana  = danas.AddDays(7);
            DateTime mjesecDana = danas.AddDays(30);

            //izvedbe na danasnjem repertoaru
            profil.izvedbeD = new List <Izvedba>();
            var izvedbeDLista = db.Izvedbas.Where(x => x.Repertoar_Datum == danas).OrderBy(x => x.Vrijeme_izvodjenja).Select(x => x.ID_izvedbe).ToList();

            if (izvedbeDLista.Count > 0)
            {
                foreach (var izvedba in izvedbeDLista)
                {
                    profil.izvedbeD.Add(db.Izvedbas.Where(x => x.ID_izvedbe == izvedba).Single());
                }
            }
            //izvedbe koje ce se odigrati u narednih 7 dana
            profil.izvedbeS = new List <Izvedba>();
            var izvedbeSLista = db.Izvedbas.Where(x => x.Repertoar_Datum <= sedamDana).Where(x => x.Repertoar_Datum >= danas).OrderBy(x => x.Repertoar_Datum).Select(x => x.ID_izvedbe).ToList();

            foreach (var izvedba in izvedbeSLista)
            {
                profil.izvedbeS.Add(db.Izvedbas.Where(x => x.ID_izvedbe == izvedba).Single());
            }
            //izvedbe koje ce se odigrati u narednih mjesec dana
            profil.izvedbeM = new List <Izvedba>();
            var izvedbeMLista = db.Izvedbas.Where(x => x.Repertoar_Datum <= mjesecDana).Where(x => x.Repertoar_Datum >= danas).OrderBy(x => x.Repertoar_Datum).Select(x => x.ID_izvedbe).ToList();

            foreach (var izvedba in izvedbeMLista)
            {
                profil.izvedbeM.Add(db.Izvedbas.Where(x => x.ID_izvedbe == izvedba).Single());
            }


            return(View(profil));
        }