// Button 'Lagre'
        // Validate input and update database record
        private void buttonEditBookingConfirm_Click(object sender, EventArgs e)
        {
            // Validation variables
            Boolean checkedin    = false;
            Boolean guestchanged = false;
            Boolean guestconfirm = true;

            // Display error messages if value is not selected
            if (listBoxGuest.SelectedIndex == -1)
            {
                MessageBox.Show("Select a guest before saving entry");
            }
            if (!roomchecked || roomid == null)
            {
                MessageBox.Show("Select a room before saving entry");
            }

            // Make sure guest and room is selected and reservationid set
            if (listBoxGuest.SelectedIndex > -1 && roomchecked && roomid != null && reservationid > 0)
            {
                //Reference variables
                string datefrom = datePickerArrival.Value.ToString("yyyy-MM-dd");
                string dateto   = datePickerDeparture.Value.ToString("yyyy-MM-dd");
                int    guestid  = Convert.ToInt32(listBoxGuest.SelectedValue);
                string remark;
                if (string.IsNullOrWhiteSpace(textBoxRemark.Text))
                {
                    remark = null;
                }
                else
                {
                    remark = textBoxRemark.Text;
                }

                ValidateInput();
                // Check all relevant fields for input
                if (validinput)
                {
                    // Check if reservation is checked in
                    if (DBGetData.GetRoomCheckedin(reservationid) > 0)
                    {
                        checkedin = true;
                    }
                    if (checkedin)
                    {
                        new StatusMessage("Room reservation has already checked in.");
                    }

                    // Check if guestid has changed
                    MySqlDataReader getReservationGuest = DBGetData.GetRoomreservationGuest(reservationid, guestid);
                    if (getReservationGuest.Read())
                    {
                        guestchanged = true;
                    }
                    getReservationGuest.Dispose();

                    // Give warning if guest has changed and ask for confirmation
                    if (!guestchanged)
                    {
                        DialogResult guestDifferent = MessageBox.Show("You have changed the guest for this reservation" +
                                                                      "\nAre you sure you want to continue?", "Warning!", MessageBoxButtons.YesNo);
                        if (guestDifferent == DialogResult.No)
                        {
                            // Cancel edit and reload data
                            guestconfirm = false;
                            LoadDataBooking();
                            // Clear flowlayoutpanel and set parameter to enable drag and drop
                            flowLayoutPanel1.Controls.Clear();
                            roomchecked = false;
                        }
                    }

                    if (!checkedin && guestconfirm)
                    {
                        DBSetData.RoomreservationEdit(reservationid, guestid, roomid, datefrom, dateto, remark);
                        // Refresh datagridview, close form and display new StatusMessage
                        bookingForm.DisplayDefaultRoom();
                        bookingForm.Refresh();
                        this.Close();
                        new StatusMessage("Reservation for roomnumber " + roomid + " saved in database and previous roomnumber released.");
                    }
                }
            }
        }