//[ValidateAntiForgeryToken]
        // public ActionResult Create([Bind(Include = "ReservationFlightDetailID,SeatAssignment,Fare,Reservation,Flight,User")] ReservationFlightDetail reservationFlightDetail)
        public ActionResult Create(Seats SeatAssignment, Decimal Fare, int ReservationID, int FlightID, String id)
        {
            int fare = (int)Fare;

            Fare = CalculateFare(FlightID, id, SeatAssignment, fare);
            ReservationFlightDetail reservationFlightDetail = new ReservationFlightDetail();

            reservationFlightDetail.SeatAssignment = SeatAssignment;
            reservationFlightDetail.Fare           = Fare;
            reservationFlightDetail.Reservation    = db.Reservations.First(r => r.ReservationID == ReservationID);
            reservationFlightDetail.Flight         = db.Flights.First(f => f.FlightID == FlightID);
            reservationFlightDetail.User           = db.Users.First(u => u.Id == id);


            ReservationViewModel FlightInfo = new ReservationViewModel();

            FlightInfo.ReservationNumber = db.Reservations.First(r => r.ReservationID == ReservationID).ReservationNumber;
            //FlightInfo.RoundTrip = RoundTrip;
            //FlightInfo.AnotherFlight = AnotherFlight;
            //FlightInfo.NumberOfFliers = NumberOfFliers;
            FlightInfo.FlightID = FlightID;

            if (ModelState.IsValid)
            {
                db.ReservationFlightDetails.Add(reservationFlightDetail);
                db.SaveChanges();
                return(RedirectToAction("Create", FlightInfo));
            }

            //return View(reservationFlightDetail);
            return(View());
        }
        public ActionResult DeleteConfirmed(int id)
        {
            ReservationFlightDetail reservationFlightDetail = db.ReservationFlightDetails.Find(id);

            db.ReservationFlightDetails.Remove(reservationFlightDetail);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "ReservationFlightDetailID,SeatAssignment,Fare")] ReservationFlightDetail reservationFlightDetail)
 {
     if (ModelState.IsValid)
     {
         db.Entry(reservationFlightDetail).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(reservationFlightDetail));
 }
        // GET: ReservationFlightDetails/Create
        //public ActionResult Create(ReservationViewModel FlightInfo)
        public ActionResult Create(ReservationViewModel FlightInfo) //int ReservationNumber, bool RoundTrip, bool AnotherFlight, int NumberOfFliers,  int FlightID
        {
            ReservationFlightDetail flightdetail = new ReservationFlightDetail();

            ViewBag.ReservationNumber = FlightInfo.ReservationNumber;
            ViewBag.Fare           = GetBaseFare(FlightInfo.FlightID);
            ViewBag.SelectedFlight = GetFlight(FlightInfo.FlightID);
            ViewBag.AllUsers       = GetAllUsers();
            ViewBag.AvailableSeats = GetAvailableSeats(FlightInfo.FlightID);

            flightdetail.Flight      = db.Flights.First(f => f.FlightID == FlightInfo.FlightID);
            flightdetail.Reservation = db.Reservations.First(r => r.ReservationNumber == FlightInfo.ReservationNumber);
            return(View());
        }
        // GET: ReservationFlightDetails/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ReservationFlightDetail reservationFlightDetail = db.ReservationFlightDetails.Find(id);

            if (reservationFlightDetail == null)
            {
                return(HttpNotFound());
            }
            return(View(reservationFlightDetail));
        }
        public ActionResult TicketDetails(int ReservationNumber, Seats SeatAssignment, int Fare, int FlightID, String id)
        {
            ReservationFlightDetail ticket = new ReservationFlightDetail();

            ticket.Reservation    = db.Reservations.First(r => r.ReservationNumber == ReservationNumber);
            ticket.Flight         = db.Flights.First(f => f.FlightID == FlightID);
            ticket.User           = db.Users.First(u => u.Id == id);
            ticket.SeatAssignment = SeatAssignment;
            ticket.Fare           = CalculateFare(FlightID, id, SeatAssignment, Fare);
            Convert.ToDecimal(Fare);


            ViewBag.Reservation = GetReservation(ReservationNumber);
            ViewBag.Flight      = GetFlight(FlightID);
            ViewBag.User        = GetUser(id);
            return(View(ticket));
        }