diff --git a/booking.install b/booking.install
index 4e77f9b..ef87142 100644
--- a/booking.install
+++ b/booking.install
@@ -585,6 +585,16 @@ function booking_update_7237() {
_booking_node_create_mysqlview();
}
+/**
+* Add description field to room definitions
+*/
+function booking_update_7237() {
+ $spec = array('type' => 'varchar', 'length' => '200', 'not null' => FALSE);
+ db_add_field('booking_room_definition', 'booking_room_description', $spec);
+ //update the view to match the new table definition
+ _booking_node_create_mysqlview();
+}
+
/**
* Implementation of hook_install().
*/
@@ -921,6 +931,7 @@ function booking_schema() {
'booking_room_doublebeds' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => FALSE, 'disp-width' => '10', 'default' => 0),
'booking_room_queenbeds' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => FALSE, 'disp-width' => '10', 'default' => 0),
'booking_room_ensuite' => array('type' => 'varchar', 'length' => '1', 'not null' => FALSE, 'default' => 'N'),
+ 'booking_room_description' => array('type' => 'varchar', 'length' => '200', 'not null' => TRUE),
),
'primary key' => array('rid'),
);
diff --git a/booking.regn_node.inc b/booking.regn_node.inc
index f7d39b0..14b71a2 100644
--- a/booking.regn_node.inc
+++ b/booking.regn_node.inc
@@ -762,7 +762,7 @@ function booking_view($node, $view_mode) {
}
$rows[] = array(t('Linked Partner:'), t($partner_name));
$rows[] = array(t('Linked Boyfriend/Girlfriend:'), t($bf_gf));
- $rows[] = array(t('Node ID to keep separate:'), $node->booking_keepseparate_id);
+ $rows[] = array(t('Node ID to keep separate:'), $node->booking_keepseparate_id == 0 ? 'N/A' : $node->booking_keepseparate_id);
$rows[] = array(t('Home Phone Number:'), t('!home', array('!home' => $node->booking_phone)));
$rows[] = array(t('Mobile Phone Number:'), t('!mob', array('!mob' => $node->booking_mobile)));
$rows[] = array(t('Postal Address:'), t('!street
!suburb !state !code
!country',
diff --git a/booking.rooms_admin.inc b/booking.rooms_admin.inc
index c7fc96b..428907e 100644
--- a/booking.rooms_admin.inc
+++ b/booking.rooms_admin.inc
@@ -225,18 +225,20 @@ function booking_rooms_view_definitions() {
$definition_query->join('booking_room_locations', 'l', 'l.lid = r.booking_room_location_id');
$definition_query->condition('l.booking_roomlocation_active', 'Y', '=')
->fields('r')
- ->fields('l');
+ ->fields('l')
+ ->orderBy('lid')->orderBy('booking_room_number');
$definition_result = $definition_query->execute();
$location_header = array (
- 'booking_roomlocation_descrip' => t('Location Description'),
- 'booking_roomlocation_active' => t('Location Active?'),
+ 'booking_roomlocation_descrip' => t('Location Description'),
+ 'booking_roomlocation_active' => t('Location Active?'),
'booking_location_edit' => t('Edit Location'),
);
$definition_header = array (
- 'booking_room_location_description' => t('Room Location'),
- 'booking_room_number' => t('Room Number'),
+ 'booking_room_location_description' => t('Room Location'),
+ 'booking_room_number' => t('Room Number'),
+ 'booking_room_description' => t('Room Description'),
'booking_room_singlebeds' => t('Number Single Beds'),
'booking_room_doublebeds' => t('Number Double Beds'),
'booking_room_queenbeds' => t('Number Queen Beds'),
@@ -244,8 +246,7 @@ function booking_rooms_view_definitions() {
'booking_room_edit' => t('Edit Room'),
);
- foreach($location_result as $data)
- {
+ foreach($location_result as $data) {
$location_rows[] = array (
$data->booking_roomlocation_descrip,
$data->booking_roomlocation_active == 'Y' ? 'Yes' : 'No',
@@ -253,12 +254,12 @@ function booking_rooms_view_definitions() {
);
}
- foreach($definition_result as $data)
- {
+ foreach($definition_result as $data) {
$definition_rows[] = array (
- //_booking_room_location_lookup($data->booking_room_location_id),
+ //_booking_room_location_lookup($data->booking_room_location_id),
$data->booking_roomlocation_descrip,
- $data->booking_room_number,
+ $data->booking_room_number,
+ $data->booking_room_description,
$data->booking_room_singlebeds,
$data->booking_room_doublebeds,
$data->booking_room_queenbeds,
@@ -309,33 +310,30 @@ function booking_rooms_definition_form($node, &$form_state, $create, $room_id =
$query = db_query("SELECT * FROM {booking_room_locations} where booking_roomlocation_active='Y'");
- foreach($query as $row)
- {
+ foreach($query as $row) {
$location_options[$row->lid] = $row->booking_roomlocation_descrip;
}
- if ($create == true)
- {
+ if ($create == true) {
$data = $node;
$prefix = t("
Create new room defintion.
"); //watchdog('booking', 'Creating new room definition: @info', array ('@info' => var_export($node, TRUE))); } - else - { + else { //verify that $editid is a number if (! preg_match('/^[0-9]+$/', $room_id)) { drupal_set_message("Error: Invalid room ID supplied. Unable to update room definition.", 'error', FALSE); drupal_goto('admin/config/booking/rooms'); return ""; } - - //$data = $form_state['input']; - $data = db_query("SELECT * FROM {booking_room_definition} WHERE rid = :id", - array(':id' => $room_id)) - ->fetchObject(); $prefix = t("Update the room defintions.
"); + + //$data = $form_state['input']; + $data = db_query("SELECT * FROM {booking_room_definition} WHERE rid = :id", array(':id' => $room_id)) + ->fetchObject(); + //add this to the form in a hidden field so we can update the right price - $form['booking_rid'] = array ( + $form['booking_rid'] = array( '#type' => 'hidden', '#value' => $room_id, ); @@ -343,15 +341,14 @@ function booking_rooms_definition_form($node, &$form_state, $create, $room_id = } //create the options array for bed counts - for ($i = 0; $i <= 15; $i++) + for ($i = 0; $i <= 15; $i++) { $bedcount_options[$i] = $i; + } //define the form for adding to the room definitions - if(!isset($form_state['storage']['confirm'])) { - $form[] = array ( - 'first_heading' => array ( + 'first_heading' => array( '#type' => 'markup', '#markup' => $prefix, ), @@ -363,26 +360,33 @@ function booking_rooms_definition_form($node, &$form_state, $create, $room_id = '#options' => $location_options, '#default_value' => !empty($data->booking_room_location_id) ? $data->booking_room_location_id : '' ); - $form['booking_room_number'] = array ( + $form['booking_room_number'] = array( '#type' => 'textfield', '#title' => t('Specify room number'), '#size' => 5, '#maxlength' => 10, '#default_value' => !empty($data->booking_room_number) ? $data->booking_room_number : '', ); - $form['booking_room_singlebeds'] = array ( + $form['booking_room_description'] = array( + '#type' => 'textfield', + '#title' => t('Specify room label (not mandatory)'), + '#size' => 50, + '#maxlength' => 100, + '#default_value' => !empty($data->booking_room_description) ? $data->booking_room_description : '', + ); + $form['booking_room_singlebeds'] = array( '#type' => 'select', '#title' => t('Specify number of single beds'), '#options' => $bedcount_options, '#default_value' => !empty($data->booking_room_singlebeds) ? $data->booking_room_singlebeds : '', ); - $form['booking_room_doublebeds'] = array ( + $form['booking_room_doublebeds'] = array( '#type' => 'select', '#title' => t('Specify number of double beds'), '#options' => $bedcount_options, '#default_value' => !empty($data->booking_room_doublebeds) ? $data->booking_room_doublebeds : '', ); - $form['booking_room_queenbeds'] = array ( + $form['booking_room_queenbeds'] = array( '#type' => 'select', '#title' => t('Specify number of queen beds'), '#options' => $bedcount_options, @@ -394,21 +398,18 @@ function booking_rooms_definition_form($node, &$form_state, $create, $room_id = '#default_value' => (!empty($data->booking_room_ensuite) && $data->booking_room_ensuite == 'Y') ? 1 : 0, ); - if ($create == true) - { - $form['submit'] = array - ( + if ($create == true) { + $form['submit'] = array( '#type' => 'submit', '#value' => t('Add Room'), ); - } else { - $form['Update'] = array - ( + } + else { + $form['Update'] = array( '#type' => 'submit', '#value' => t('Update Room'), ); - $form['Delete'] = array - ( + $form['Delete'] = array( '#type' => 'submit', '#value' => t('Delete Room'), ); @@ -418,12 +419,10 @@ function booking_rooms_definition_form($node, &$form_state, $create, $room_id = 'form' => $form, ); } - else - { + else { return confirm_form($form, "Are you sure you wish to delete room definition with id " . $room_id . "?", current_path(), NULL, "Delete Room"); } - } /** @@ -437,30 +436,28 @@ function booking_rooms_definition_form_submit($form, &$form_state) { //watchdog('booking', "Room definition submission:\n@info", array('@info' => print_r( $form_state, true))); //if we're deleting, add the confirmation to the form if it hasn't been defined yet - if($form_state['values']['op'] == 'Delete Room' && (!isset($form_state['storage']['confirm']))) - { + if($form_state['values']['op'] == 'Delete Room' && (!isset($form_state['storage']['confirm']))) { //watchdog('booking', "
Room deletion confirmation being set:\n@info", array('@info' => print_r( $form_state, true))); $form_state['storage']['confirm'] = TRUE; $form_state['rebuild'] = TRUE; - } - elseif ($form_state['values']['op'] == 'Delete Room') - { + } + elseif ($form_state['values']['op'] == 'Delete Room') { //delete the room watchdog('booking', "Deleting room ID !rid", array('!rid' => $values['booking_rid'])); - + db_delete('booking_room_definition') ->condition('rid', $values['booking_rid']) ->execute(); - + drupal_set_message('Deleted room id ' . $values['booking_rid'] ); $form_state['redirect'] = $redirect_path; } - elseif ($form_state['values']['op'] == 'Update Room') - { + elseif ($form_state['values']['op'] == 'Update Room') { $result = db_update('booking_room_definition') ->fields(array( - 'booking_room_location_id' => $values['booking_room_location_id'], - 'booking_room_number' => $values['booking_room_number'], + 'booking_room_location_id' => $values['booking_room_location_id'], + 'booking_room_number' => $values['booking_room_number'], + 'booking_room_description' => $values['booking_room_description'], 'booking_room_singlebeds' => $values['booking_room_singlebeds'], 'booking_room_doublebeds' => $values['booking_room_doublebeds'], 'booking_room_queenbeds' => $values['booking_room_queenbeds'], @@ -475,8 +472,9 @@ function booking_rooms_definition_form_submit($form, &$form_state) { { db_insert('booking_room_definition') ->fields(array( - 'booking_room_location_id' => $values['booking_room_location_id'], - 'booking_room_number' => $values['booking_room_number'], + 'booking_room_location_id' => $values['booking_room_location_id'], + 'booking_room_number' => $values['booking_room_number'], + 'booking_room_description' => $values['booking_room_description'], 'booking_room_singlebeds' => $values['booking_room_singlebeds'], 'booking_room_doublebeds' => $values['booking_room_doublebeds'], 'booking_room_queenbeds' => $values['booking_room_queenbeds'],