Exemplo n.º 1
0
        // GET: PredlogBorbe
        //Puni view PredloziBorbe

        public ActionResult PredloziBorbe()
        {
            DataClasses1DataContext dc = new DataClasses1DataContext();

            List <PredlogBorbe> predlozi = dc.PredlogBorbes.Where(m => m.IDKorisnika1 == (int)Session["idKorisnika"] ||
                                                                  m.IDKorisnika2 == (int)Session["idKorisnika"] && m.StanjePredloga == false).ToList();

            //sada sledi mapiranje u ViewModel klasu predloga borbe za prikaz u view-u
            List <PredlogBorbeViewModelKorisnik> predloziBorbe = new List <PredlogBorbeViewModelKorisnik>();

            foreach (PredlogBorbe pr in predlozi)
            {
                PredlogBorbeViewModelKorisnik predlog = new PredlogBorbeViewModelKorisnik();
                predlog.IDPredloga         = pr.IDPredloga;
                predlog.Korisnik1          = dc.Korisniks.Where(k => k.IDKorisnika == pr.IDKorisnika1).SingleOrDefault();
                predlog.Korisnik2          = dc.Korisniks.Where(k => k.IDKorisnika == pr.IDKorisnika2).SingleOrDefault();
                predlog.DatumVremeBorbe    = pr.datumVremeBorbe;
                predlog.TipBorbe           = pr.tipBorbe;
                predlog.TezinskaKategorija = pr.tezinskaKategorija;
                predlog.Cena                  = pr.Cena;
                predlog.vremeBorbe            = (TimeSpan)pr.vremeBorbe;
                predlog.Napomene              = pr.Napomene;
                predlog.IDAdministratora      = pr.IDAdministratora;
                predlog.SportskoBorilackiKlub = dc.SportskoBorilačkiKlubs.Where(s => s.IDSportskoBorilačkogKluba == pr.IDSportskoBorilačkogKluba).SingleOrDefault();

                predloziBorbe.Add(predlog);
            }


            //ViewBag.predloziBorbe = predloziBorbe;

            return(View(predloziBorbe));
        }
Exemplo n.º 2
0
        //obradiPredlog metoda za handlovanje prihvatanja ili odbijanja predloga za borbu!
        public ActionResult obradiPredlog(PredlogBorbeViewModelKorisnik model)
        {
            DataClasses1DataContext dc      = new DataClasses1DataContext();
            PredlogBorbe            predlog = dc.PredlogBorbes.Where(m => m.IDPredloga == model.IDPredloga).SingleOrDefault();

            //ukoliko je korisnik prihvatio predlog!
            if (Request.Form["btnPrihvatiPred"] != null)
            {
                if (predlog.PrviOdgovor)
                {
                    predlog.DrugiOdgovor = true;
                }
                else
                {
                    predlog.PrviOdgovor = true;
                }

                //Prihvacen je zahtev od strane oba borca
                if (predlog.PrviOdgovor == true && predlog.DrugiOdgovor == true)
                {
                    predlog.StanjePredloga = true;

                    try
                    {
                        dc.SubmitChanges();
                    }
                    catch (Exception ex)
                    {
                        Session["greskaPotvrdePredloga"] = "Trenutno imamo tehničkih problema sa serverom. Molimo Vas, pokušajte ponovo.";
                        return(RedirectToAction("PredloziBorbe"));
                    }
                    Session["uspehPotvrdePredlogaDatum"]       = model.DatumVremeBorbe;
                    Session["uspehPotvrdePredlogaVreme"]       = model.vremeBorbe;
                    Session["uspehPotvrdePredlogaNazivKluba"]  = model.SportskoBorilackiKlub.Naziv;
                    Session["uspehPotvrdePredlogaAdresaKluba"] = model.SportskoBorilackiKlub.Adresa;

                    //predlog je zvanicno prihvacen, dakle izbrisati sve ostale predloge za tog korisnika
                    List <PredlogBorbe> predloziZaBrisanje = dc.PredlogBorbes.Where(m => m.IDKorisnika1 == predlog.IDKorisnika1 ||
                                                                                    m.IDKorisnika2 == predlog.IDKorisnika1 || m.IDKorisnika1 == predlog.IDKorisnika2 || m.IDKorisnika2 == predlog.IDKorisnika2).ToList();
                    foreach (PredlogBorbe p in predloziZaBrisanje)
                    {
                        if (p.IDPredloga != model.IDPredloga)
                        {
                            //PredlogBorbe dalijeNasPredlog = dc.PredlogBorbes.Where(model.IDPredloga != p.IDPredloga).SingleOrDefault();
                            dc.PredlogBorbes.DeleteOnSubmit(p);
                        }
                        try
                        {
                            dc.SubmitChanges();
                        }
                        catch (Exception ex)
                        {
                            Session["greskaPotvrdePredloga"] = "Trenutno imamo tehničkih problema sa serverom. Molimo Vas, pokušajte ponovo.";
                            return(RedirectToAction("PredloziBorbe"));
                        }
                    }//kraj brisanja ostalih predloga

                    return(RedirectToAction("PredloziBorbe"));
                }

                //nije prihvaćen od strane oba borca, poruka da korisnik sačeka da drugi borac prihvati
                dc.SubmitChanges();
                Session["cekanje"] = "Uspešno ste prihvatili predlog! Čeka se potvrda od strane drugog borca...";
                Session["uspehPotvrdePredlogaDatum1"]      = model.DatumVremeBorbe;
                Session["uspehPotvrdePredlogaVreme"]       = model.vremeBorbe;
                Session["uspehPotvrdePredlogaNazivKluba"]  = model.SportskoBorilackiKlub.Naziv;
                Session["uspehPotvrdePredlogaAdresaKluba"] = model.SportskoBorilackiKlub.Adresa;
                return(RedirectToAction("PredloziBorbe"));
            }
            //ukoliko je korisnik odbio predlog, obrisi samo taj predlog
            else
            {
                dc.PredlogBorbes.DeleteOnSubmit(predlog);
                try
                {
                    dc.SubmitChanges();
                }
                catch (Exception ex)
                {
                    Session["greskaPotvrdePredloga"] = "Trenutno imamo tehničkih problema sa serverom. Molimo Vas, pokušajte ponovo.";
                    return(RedirectToAction("PredloziBorbe"));
                }

                Session["odbijenPredlog"] = model.IDPredloga;
                return(RedirectToAction("PredloziBorbe"));
            }
            //return RedirectToAction("PredloziBorbe");
        }