public Flight(int id) //creates flight using a reservation ID { try { this.resId = id; this.planeName = DBPlanes.getName(DBReservations.getPlane(resId)); this.capacity = DBPlanes.getCapacity(DBReservations.getPlane(resId)); this.departureTime = DBReservations.getDate(resId); this.destination = DBDestinations.getLocation(DBReservations.getDestination(resId)); this.travelDistance = DBDestinations.getDistanceFromLR(this.destination); this.flightSpeed = DBPlanes.getSpeed(DBPlanes.getID(this.planeName)); this.passengerCount = 0; this.travelTime = ((this.travelDistance * 2) / this.flightSpeed) + 1; //Travel time to and from destination with 1 extra hour for refuling and acceleration/deceleration; List <string> flightResList = DBReservations.getReservationsByPlane(DBPlanes.getID(this.planeName)); foreach (String s in flightResList) // "Out of all the reservations made for the plane that this Flight belongs to..." -ksm { int resNum = Convert.ToInt32(s); if (this.departureTime == DBReservations.getDate(resNum) && this.destination == DBDestinations.getLocation(DBReservations.getDestination(resNum))) { this.passengerCount++; //"... Add 1 passenger for each reservation that matches this flight." -ksm } } this.seatsAvailable = this.capacity - this.passengerCount; this.returnTime = this.departureTime; TimeSpan time = TimeSpan.FromHours(travelTime); this.returnTime = this.returnTime + time; } catch (Exception ex) { throw ex; } }