Form for adding variety session to timeslot
This commit is contained in:
@@ -310,23 +310,49 @@ function booking_menu() {
|
|||||||
);
|
);
|
||||||
|
|
||||||
$items['admin/config/booking/variety/create'] = array(
|
$items['admin/config/booking/variety/create'] = array(
|
||||||
'title' => 'Add New Variety Session',
|
'title' => 'Add New Variety Session Timeslot',
|
||||||
'description' => 'Add variety session for the Booking module',
|
'description' => 'Add variety session timeslot for the Booking module',
|
||||||
'page callback' => 'drupal_get_form',
|
'page callback' => 'drupal_get_form',
|
||||||
//'page arguments' => array('booking_price_create'),
|
//'page arguments' => array('booking_price_create'),
|
||||||
'page arguments' => array('booking_variety_form', true),
|
'page arguments' => array('booking_variety_timeslot_form', true),
|
||||||
'access arguments' => array('access administration pages'),
|
'access arguments' => array('access administration pages'),
|
||||||
'type' => MENU_LOCAL_ACTION,
|
'type' => MENU_LOCAL_ACTION,
|
||||||
);
|
);
|
||||||
|
|
||||||
$items['admin/config/booking/variety/%/edit'] = array(
|
$items['admin/config/booking/variety/%/edit'] = array(
|
||||||
'title' => 'Edit Variety Session',
|
'title' => 'Edit Variety Session Timeslot',
|
||||||
'page callback' => 'drupal_get_form',
|
'page callback' => 'drupal_get_form',
|
||||||
'page arguments' => array('booking_variety_form', false, 4),
|
'page arguments' => array('booking_variety_timeslot_form', false, 4),
|
||||||
'access arguments' => array('access administration pages'),
|
'access arguments' => array('access administration pages'),
|
||||||
'type' => MENU_CALLBACK,
|
'type' => MENU_CALLBACK,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$items['admin/config/booking/variety/%/session/list'] = array(
|
||||||
|
'title' => 'List Variety Sessions',
|
||||||
|
'description' => 'List variety sessions for the specified timeslot',
|
||||||
|
'page callback' => 'drupal_get_form',
|
||||||
|
'page arguments' => array('booking_variety_list_session_form', 4),
|
||||||
|
'access arguments' => array('access administration pages'),
|
||||||
|
'type' => MENU_CALLBACK,
|
||||||
|
);
|
||||||
|
|
||||||
|
$items['admin/config/booking/variety/%/session/create'] = array(
|
||||||
|
'title' => 'Add New Variety Session',
|
||||||
|
'description' => 'Add variety session to the specified timeslot',
|
||||||
|
'page callback' => 'drupal_get_form',
|
||||||
|
'page arguments' => array('booking_variety_create_session_form', 4),
|
||||||
|
'access arguments' => array('access administration pages'),
|
||||||
|
'type' => MENU_CALLBACK,
|
||||||
|
);
|
||||||
|
|
||||||
|
$items['admin/config/booking/variety/%/session/edit'] = array(
|
||||||
|
'title' => 'Edit Variety Session',
|
||||||
|
'description' => 'Edit variety session for the specified timeslot',
|
||||||
|
'page callback' => 'drupal_get_form',
|
||||||
|
'page arguments' => array('booking_variety_edit_session_form', 4),
|
||||||
|
'access arguments' => array('access administration pages'),
|
||||||
|
'type' => MENU_CALLBACK,
|
||||||
|
);
|
||||||
|
|
||||||
//the paypal IPN
|
//the paypal IPN
|
||||||
$items[BOOKING_PAYPAL_IPN_PATH] = array(
|
$items[BOOKING_PAYPAL_IPN_PATH] = array(
|
||||||
|
@@ -13,16 +13,18 @@ function booking_variety_admin()
|
|||||||
// tabledrag example http://dropbucket.org/node/204
|
// tabledrag example http://dropbucket.org/node/204
|
||||||
$form = array ();
|
$form = array ();
|
||||||
$options = array ();
|
$options = array ();
|
||||||
$prefix = t("<p>!link</p>",
|
//$prefix = t("<p>!link</p>",
|
||||||
array ('!link' => l('Add New Event', 'admin/config/booking/variety/create')));
|
// array ('!link' => l('Add New Variety Timeslot', 'admin/config/booking/variety/create')));
|
||||||
|
|
||||||
$header = array (
|
$header = array (
|
||||||
'tid' => t('Event ID'),
|
'tid' => t('Event ID'),
|
||||||
'booking_variety_time_descrip' => t('Description'),
|
'booking_variety_time_descrip' => t('Description'),
|
||||||
'booking_variety_status' => t('Status'),
|
'booking_variety_status' => t('Status'),
|
||||||
'booking_variety_start' => t('Session Start'),
|
'booking_variety_start' => t('Timeslot Start'),
|
||||||
'booking_variety_end' => t('Session End'),
|
'booking_variety_end' => t('Timeslot End'),
|
||||||
'booking_edit' => t('Edit event'),
|
'variety_edit' => t('Edit Timeslot'),
|
||||||
|
'variety_session_list' => t('List Sessions'),
|
||||||
|
'variety_session_add' => t('Add Session'),
|
||||||
);
|
);
|
||||||
|
|
||||||
$result = db_query("SELECT * from {booking_variety_times}");
|
$result = db_query("SELECT * from {booking_variety_times}");
|
||||||
@@ -36,7 +38,9 @@ function booking_variety_admin()
|
|||||||
'booking_variety_status' => $data->booking_variety_status,
|
'booking_variety_status' => $data->booking_variety_status,
|
||||||
'booking_variety_start' => date("Y-m-d H:i", $data->booking_variety_start),
|
'booking_variety_start' => date("Y-m-d H:i", $data->booking_variety_start),
|
||||||
'booking_variety_end' => date("Y-m-d H:i", $data->booking_variety_end),
|
'booking_variety_end' => date("Y-m-d H:i", $data->booking_variety_end),
|
||||||
'booking_edit' => l('Edit', t('admin/config/booking/variety/!tid/edit', array('!tid' => $data->tid))),
|
'variety_edit' => l('Edit Timeslot', t('admin/config/booking/variety/!tid/edit', array('!tid' => $data->tid))),
|
||||||
|
'variety_session_list' => l('List Sessions', t('admin/config/booking/variety/!tid/session/list', array('!tid' => $data->tid))),
|
||||||
|
'variety_session_add' => l('Add Session', t('admin/config/booking/variety/!tid/session/create', array('!tid' => $data->tid))),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -75,7 +79,7 @@ function booking_variety_admin_submit($form, &$form_state)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function booking_variety_form($node, &$form_state, $create, $editid = 0)
|
function booking_variety_timeslot_form($node, &$form_state, $create, $editid = 0)
|
||||||
{
|
{
|
||||||
global $event;
|
global $event;
|
||||||
$form = array ();
|
$form = array ();
|
||||||
@@ -110,7 +114,7 @@ function booking_variety_form($node, &$form_state, $create, $editid = 0)
|
|||||||
|
|
||||||
$form['booking_variety_time_descrip'] = array (
|
$form['booking_variety_time_descrip'] = array (
|
||||||
'#type' => 'textfield',
|
'#type' => 'textfield',
|
||||||
'#title' => t('The name of this variety session'),
|
'#title' => t('The name of this variety session timeslot'),
|
||||||
'#size' => 60,
|
'#size' => 60,
|
||||||
'#maxlength' => 150,
|
'#maxlength' => 150,
|
||||||
'#required' => TRUE,
|
'#required' => TRUE,
|
||||||
@@ -170,7 +174,7 @@ function booking_variety_form($node, &$form_state, $create, $editid = 0)
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function booking_variety_form_submit($form, &$form_state) {
|
function booking_variety_timeslot_form_submit($form, &$form_state) {
|
||||||
global $event;
|
global $event;
|
||||||
$values = $form_state['input'];
|
$values = $form_state['input'];
|
||||||
|
|
||||||
@@ -223,5 +227,88 @@ function booking_variety_form_submit($form, &$form_state) {
|
|||||||
->execute();
|
->execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$form_state['redirect'] = array('admin/config/booking/variety');
|
||||||
|
}
|
||||||
|
|
||||||
|
function booking_variety_create_session_form($node, &$form_state, $editid = 0)
|
||||||
|
{
|
||||||
|
global $event;
|
||||||
|
$form = array ();
|
||||||
|
$prefix = "<p>Add a new variety session to the specified variety session timeslot for the bookings module.</p>";
|
||||||
|
$data = $node;
|
||||||
|
|
||||||
|
//verify that $editid is a number
|
||||||
|
if (! preg_match('/^[0-9]+$/', $editid)) {
|
||||||
|
drupal_set_message("Error: Invalid variety ID supplied. Unable to update variety session information.", 'error', FALSE);
|
||||||
|
drupal_goto('admin/config/booking/variety');
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = db_select ('booking_variety_times', 'v')
|
||||||
|
->condition('v.tid', $editid, '=')
|
||||||
|
->fields('v')
|
||||||
|
->execute()
|
||||||
|
->fetchObject();
|
||||||
|
|
||||||
|
//add this to the form in a hidden field so we can update the right event
|
||||||
|
$form['tid'] = array (
|
||||||
|
'#type' => 'hidden',
|
||||||
|
'#value' => $editid,
|
||||||
|
);
|
||||||
|
|
||||||
|
$form['booking_variety_descrip'] = array (
|
||||||
|
'#type' => 'textfield',
|
||||||
|
'#title' => t('The name of the variety session to add to this timeslot'),
|
||||||
|
'#size' => 60,
|
||||||
|
'#maxlength' => 150,
|
||||||
|
'#required' => TRUE,
|
||||||
|
'#default_value' => !empty($data->booking_variety_descrip) ? $data->booking_variety_descrip : '',
|
||||||
|
);
|
||||||
|
|
||||||
|
$form['booking_variety_status'] = array(
|
||||||
|
'#type' => 'checkbox',
|
||||||
|
'#title' => t('Make this variety session active?'),
|
||||||
|
'#default_value' => !empty($data->booking_variety_status) ? $data->booking_variety_status : '',
|
||||||
|
);
|
||||||
|
|
||||||
|
$form['booking_variety_maxsize'] = array (
|
||||||
|
'#type' => 'textfield',
|
||||||
|
'#title' => t('The maximum number of people permitted in this variety session'),
|
||||||
|
'#size' => 5,
|
||||||
|
'#maxlength' => 5,
|
||||||
|
'#required' => TRUE,
|
||||||
|
'#default_value' => !empty($data->booking_variety_maxsize) ? $data->booking_variety_maxsize : '0',
|
||||||
|
);
|
||||||
|
|
||||||
|
$form['submit'] = array
|
||||||
|
(
|
||||||
|
'#type' => 'submit',
|
||||||
|
'#value' => t('Create'),
|
||||||
|
);
|
||||||
|
|
||||||
|
return array (
|
||||||
|
'first_para' => array (
|
||||||
|
'#type' => 'markup',
|
||||||
|
'#markup' => $prefix,
|
||||||
|
),
|
||||||
|
'form' => $form,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function booking_variety_create_session_form_submit($form, &$form_state) {
|
||||||
|
global $event;
|
||||||
|
$values = $form_state['input'];
|
||||||
|
|
||||||
|
db_insert('booking_variety_options')
|
||||||
|
->fields(array(
|
||||||
|
'booking_eventid' => $event->eid,
|
||||||
|
'booking_variety_timeslot_id' => $values['tid'],
|
||||||
|
'booking_variety_status' => $values['booking_variety_status'] == 1 ? 1 : 0,
|
||||||
|
'booking_variety_descrip' => $values['booking_variety_descrip'],
|
||||||
|
'booking_variety_maxsize' => $values['booking_variety_maxsize'],
|
||||||
|
'booking_variety_regncount' => 0,
|
||||||
|
))
|
||||||
|
->execute();
|
||||||
|
|
||||||
$form_state['redirect'] = array('admin/config/booking/variety');
|
$form_state['redirect'] = array('admin/config/booking/variety');
|
||||||
}
|
}
|
Reference in New Issue
Block a user