start making csv import/export more dynamic

This commit is contained in:
2016-05-19 22:09:03 +10:00
parent d60ff7b10e
commit 9b431c6ee3
2 changed files with 24 additions and 0 deletions

View File

@@ -429,6 +429,7 @@ function booking_admin()
) )
) )
); );
$form['regn_options']['booking_enable_skills'] = array( $form['regn_options']['booking_enable_skills'] = array(
'#type' => 'radios', '#type' => 'radios',
'#title' => t('Enable special skills information?'), '#title' => t('Enable special skills information?'),
@@ -522,6 +523,16 @@ function booking_admin()
'#size' => 150, '#size' => 150,
'#maxlength' => 2000 '#maxlength' => 2000
); );
$form['management']['booking_import_include_fields_dynamic'] = array(
'#type' => 'select',
'#multiple' => TRUE,
'#title' => t('Select database fields'),
'#description' => t('Select database fields to import from an uploaded CSV file. Ensure you hold down control/command when selecting multiple options.'),
'#options' => _booking_get_person_fields(),
'#default_value' => variable_get('booking_import_include_fields_dynamic', ''),
);
return system_settings_form($form); return system_settings_form($form);
} }

View File

@@ -1315,6 +1315,19 @@ function _booking_paypal_form_builder($node, &$form_state, $person, $invoiceid,
return $form; return $form;
} }
/**
* Helper function to provide a list of columns in the booking_person table
* This will be used to select which fields to import/export to/from a CSV
*/
function _booking_get_person_fields() {
$query = db_query('SHOW COLUMNS FROM {booking_person}');
$list_of_columns = new stdClass();
while ($res = db_fetch_array($query)) {
$list_of_columns->$res['Field'] = $res['Field'];
}
return $list_of_columns;
}
/** /**
* Helper function to format registrations details for summary in the confirmation email * Helper function to format registrations details for summary in the confirmation email