function testdbBookingsModule() { // create a booking and test inserting and retrieving it from dbBookings $today = date('y-m-d'); $b = new Booking($today, "", "Meghan2075551234", "pending", "", "Tiny", array("Meghan:mother", "Jean:father", "Teeny:sibling"), array(), "", "", "Millie2073631234", "Maine Med", "SCU", "00000000000", "\$10 per night", "", "", "", "new"); $this->assertTrue(insert_dbBookings($b)); $this->assertTrue(retrieve_dbBookings($b->get_id())); //$this->assertTrue(in_array("Meghan2077291234", $b->get_guest_id())); //checks that the initial status is "pending" $this->assertTrue(retrieve_dbBookings($b->get_id())->get_status(), "pending"); //checks that initial flag is "new" $this->assertTrue(retrieve_dbBookings($b->get_id())->get_flag(), "new"); $pending_bookings = retrieve_all_pending_dbBookings(); // $this->assertEqual($pending_bookings[0]->get_id(), $b->get_id()); // make some changes and test updating it in the database // Add a loaner to the booking $b->add_loaner("remote3"); $b->add_occupant("Jordan", "brother"); $b->set_flag("viewed"); $this->assertTrue($b->assign_room("126", $today)); $bretrieved = retrieve_dbBookings($b->get_id()); $this->assertTrue(in_array("Jordan: brother", $bretrieved->get_occupants())); $this->assertTrue(in_array("remote3", $bretrieved->get_loaners())); $this->assertEqual($bretrieved->get_status(), "active"); $this->assertEqual($bretrieved->get_id(), $b->get_id()); $this->assertEqual($bretrieved->get_room_no(), "126"); $today = date('y-m-d'); $this->assertEqual($bretrieved->get_date_in(), $today); $this->assertEqual($bretrieved->get_flag(), "viewed"); //tests updating after a checkout $this->assertTrue($bretrieved->check_out($today)); $bretrieved2 = retrieve_dbBookings($b->get_id()); $this->assertEqual($bretrieved2->get_status(), "closed"); $this->assertEqual($bretrieved2->get_date_out(), $today); //tests the delete function $this->assertTrue(delete_dbBookings($b->get_id())); $this->assertFalse(retrieve_dbBookings($b->get_id())); echo "testdbBookings complete"; }
function build_POST_booking($primaryGuest, $referralid) { $current_date = date("y-m-d"); $referred_by = trim(str_replace("'", "\\'", htmlentities($_POST['referred_by']))); $hospital = trim(str_replace("'", "\\'", htmlentities($_POST['hospital']))); $department = trim(str_replace("'", "\\'", htmlentities($_POST['dept']))); if ($_POST['payment'] != "other") { $payment = "10 per night"; } else { $payment = trim(str_replace("'", "\\'", htmlentities($_POST['payment_description']))); } $notes = trim(str_replace("'", "\\'", htmlentities($_POST['notes']))); $healthvalues = array("flu", "shingles", "tb", "strep", "lice", "whoopingcough", "measles", "nomeaslesshot", "chickenpox", "chickenpoxshot", "hepatitisb"); $health_questions = ""; for ($i = 1; $i <= 11; $i++) { if ($_POST['health'] && in_array($healthvalues[$i - 1], $_POST['health'])) { $health_questions .= "1"; } else { $health_questions .= "0"; } } if ($_POST['visitOrWC'] == "Will Call") { $date_in = "Will Call"; } else { if ($_POST['date_in_year'] && $_POST['date_in_month'] && $_POST['date_in_day']) { $date_in = $_POST['date_in_year'] . '-' . $_POST['date_in_month'] . '-' . $_POST['date_in_day']; } } if ($referralid) { $pendingBooking = retrieve_dbBookings($referralid); $pendingBooking->set_health_questions($health_questions); $pendingBooking->set_payment_arrangement($payment); $pendingBooking->set_mgr_notes($notes); $pendingBooking->set_referred_by($referred_by); $pendingBooking->set_hospital($hospital); $pendingBooking->set_department($department); $pendingBooking->remove_occupants(); } else { $pendingBooking = new Booking($current_date, $date_in, $primaryGuest->get_id(), "pending", "", $primaryGuest->get_patient_name(), array(), array(), null, null, $referred_by, $hospital, $department, $health_questions, $payment, $_POST['overnight'], $_POST['day'], $notes, "new"); } $pendingBooking->add_occupant($primaryGuest->get_first_name() . " " . $primaryGuest->get_last_name(), $primaryGuest->get_patient_relation()); for ($count = 1; $count <= 4; $count++) { if ($_POST['additional_guest_' . $count] != "") { $pendingBooking->add_occupant($_POST['additional_guest_' . $count], $_POST['additional_guest_' . $count . '_relation']); } } insert_dbBookings($pendingBooking); return $pendingBooking; }
/** * Updates a Booking in the dbBookings table by deleting it and re-inserting it * @param $booking the Booking to update */ function update_dbBookings($booking) { if (!$booking instanceof Booking) { echo "Invalid argument for update_dbBookings function call"; return false; } if (delete_dbBookings($booking->get_id())) { return insert_dbBookings($booking); } else { echo mysql_error() . "unable to update dbBookings table: " . $booking->get_id(); return false; } }