Exemplo n.º 1
0
        protected void ButtonAddFlight_Click(object sender, EventArgs e)
        {
            Control footerControl = null;

            if (this.GridViewFlightsAdmin.FooterRow != null)
            {
                footerControl = this.GridViewFlightsAdmin.FooterRow;
            }
            else
            {
                footerControl = this.GridViewFlightsAdmin.Controls[0].Controls[0];
            }

            string fromAirport = (footerControl.FindControl("TextBoxFromAirPort") as TextBox).Text;
            string toAirport = (footerControl.FindControl("TextBoxToAirPort") as TextBox).Text;

            DateTimePicker dtp = (footerControl.FindControl("DateTimePicker") as DateTimePicker);
            string date = (dtp.FindControl("TextBoxFlightDate") as TextBox).Text;
            string time = (dtp.FindControl("TextBoxFlightTime") as TextBox).Text;
            string dateAndTime = date + " " + time;

            //  string result = (dtp.FindControl("TextBoxFlightDate") as TextBox).Text;
            DateTime flightDate = DateTime.ParseExact(dateAndTime, "dd-MM-yyyy HH:mm", System.Globalization.CultureInfo.InvariantCulture);
            int availableTickets = int.Parse((footerControl.FindControl("TextBoxAvailableTickets") as TextBox).Text);
            decimal price = decimal.Parse((footerControl.FindControl("TextBoxPrice") as TextBox).Text);

            if (fromAirport != null && toAirport != null)
            {
                var db = new AirPortDbContext();
                Flight flight = new Flight()
                {
                    FromAirPort = fromAirport,
                    ToAirPort = toAirport,
                    FlightDate = flightDate,
                    AvailableTickets = availableTickets,
                    Price = price
                };

                db.Flights.Add(flight);
                db.SaveChanges();

                (footerControl.FindControl("TextBoxFromAirPort") as TextBox).Text = "";
                (footerControl.FindControl("TextBoxToAirPort") as TextBox).Text = "";
                (footerControl.FindControl("TextBoxAvailableTickets") as TextBox).Text = "";
                (footerControl.FindControl("TextBoxPrice") as TextBox).Text = "";
                DataBind();
            }
        }
Exemplo n.º 2
0
 public void GridViewFlightsAdmin_UpdateItem(int id)
 {
     var db = new AirPortDbContext();
     Flight item = db.Flights.FirstOrDefault(f => f.Id == id);
     if (item == null)
     {
         ModelState.AddModelError("", String.Format("Item with id {0} was not found", id));
         return;
     }
     TryUpdateModel(item);
     if (ModelState.IsValid)
     {
         db.SaveChanges();
     }
 }
        protected void ButtonBuyTicket_Click(object sender, EventArgs e)
        {
            if (Context.User.Identity.IsAuthenticated)
            {
                string user = Context.User.Identity.Name;
                int flightId = int.Parse(Request.Params["FlightId"]);
                string cardType = (this.DetailsViewBuyTicket.FindControl("CardType") as DropDownList).SelectedValue;
                string cardNumber = (this.DetailsViewBuyTicket.FindControl("TextBoxCardNumber") as TextBox).Text;

                if (cardType == null || cardType == string.Empty)
                {
                    ErrorSuccessNotifier.AddErrorMessage("Please select card type");
                }
                else if (cardNumber == null || cardNumber == string.Empty)
                {
                    ErrorSuccessNotifier.AddErrorMessage("Please enter card number");
                }
                else
                {
                    try
                    {
                        using (TransactionScope scope = new TransactionScope())
                        {
                            var db = new AirPortDbContext();
                            AirPortUser currentUser = db.Users.FirstOrDefault(u => u.UserName == user);
                            Flight currentFlight = db.Flights.FirstOrDefault(f => f.Id == flightId);
                            Ticket currentTicket = new Ticket() { Flight = currentFlight, User = currentUser };
                            Log currentLog = new Log()
                            {
                                CardNumber = cardNumber,
                                CardType = cardType,
                                DateBought = DateTime.Now,
                                Ticket = currentTicket,
                                User = currentUser
                            };

                            if (currentFlight.AvailableTickets <= 0)
                            {
                                ErrorSuccessNotifier.AddInfoMessage("No tickets available!");
                                ErrorSuccessNotifier.ShowAfterRedirect = true;
                                Response.Redirect("~/", false);
                                return;
                            }

                            currentFlight.AvailableTickets = currentFlight.AvailableTickets - 1;
                            db.Tickets.Add(currentTicket);
                            db.Logs.Add(currentLog);
                            db.SaveChanges();
                            scope.Complete();

                            ErrorSuccessNotifier.AddSuccessMessage("Ticket bought successfully!");
                            ErrorSuccessNotifier.ShowAfterRedirect = true;
                            Response.Redirect("~/", false);
                        }
                    }
                    catch (Exception ex)
                    {
                        ErrorSuccessNotifier.AddErrorMessage(ex);
                    }
                }
            }
            else
            {
                ErrorSuccessNotifier.AddErrorMessage("Please login!");
            }
        }
Exemplo n.º 4
0
 public void GridViewFlightsAdmin_DeleteItem(int id)
 {
     var db = new AirPortDbContext();
     AirPortSystem.Models.Flight item = db.Flights.FirstOrDefault(f => f.Id == id);
     if (item == null)
     {
         ModelState.AddModelError("", String.Format("Item with id {0} was not found", id));
         return;
     }
     else
     {
         db.Flights.Remove(item);
         db.SaveChanges();
     }
 }
Exemplo n.º 5
0
        protected void UploadBtn_Click(object sender, EventArgs e)
        {
            if (ValidateFile())
            {
                var dbContext = new AirPortDbContext();
                using (dbContext)
                {
                    var length = UploadAvatar.PostedFile.ContentLength;
                    byte[] fileData = new byte[length + 1];

                    Stream fileStream = UploadAvatar.PostedFile.InputStream;
                    fileStream.Read(fileData, 0, length);

                    var userId = User.Identity.GetUserId();
                    var user = dbContext.Users.Find(userId);
                    user.Image = fileData;
                    this.profileImage.Src = "data:image/jpeg;base64," + Convert.ToBase64String(fileData);
                    dbContext.SaveChanges();
                    this.SuccessMessage = "Image Upload Successful!";
                    successMessage.Visible = !String.IsNullOrEmpty(SuccessMessage);
                }
            }
        }