function _user_import_settings_save in User Import 6.2
Same name and namespace in other branches
- 8 user_import.module \_user_import_settings_save()
- 5.2 user_import.module \_user_import_settings_save()
- 5 user_import.module \_user_import_settings_save()
- 6.4 user_import.module \_user_import_settings_save()
- 7.3 user_import.module \_user_import_settings_save()
- 7 user_import.module \_user_import_settings_save()
- 7.2 user_import.module \_user_import_settings_save()
5 calls to _user_import_settings_save()
- user_import_add_form_submit in ./
user_import.admin.inc - user_import_edit_submit in ./
user_import.admin.inc - user_import_template_new_submit in ./
user_import.admin.inc - Save a new template.
- user_import_template_update_submit in ./
user_import.admin.inc - Update an existing template.
- _user_import_initialise_import in ./
user_import.admin.inc
File
- ./
user_import.module, line 326 - Import or update users with data from a comma separated file (csv).
Code
function _user_import_settings_save($settings) {
// Database field defaults.
$database_fields = array(
'import_id' => NULL,
'name' => '',
'filename' => '',
'oldfilename' => '',
'filepath' => '',
'started' => 0,
'pointer' => 0,
'processed' => 0,
'valid' => 0,
'field_match' => array(),
'roles' => '',
'options' => array(),
'setting' => '',
);
// Form elements we never want to save in the options column.
$form_variables = array(
'form_id',
'form_token',
'form_build_id',
'cancel',
'import',
'submit',
'op',
0,
'return_path',
);
$form_variables = array_flip($form_variables);
// Remove settings we don't need in the options column.
$options = array_diff_key($settings, $database_fields);
$options = array_diff_key($options, $form_variables);
// Set defaults for options.
foreach ($options as $key => $value) {
$settings['options'][$key] = isset($settings[$key]) ? $settings[$key] : '';
}
// Set defaults for fields.
foreach ($database_fields as $key => $value) {
$settings[$key] = isset($settings[$key]) ? $settings[$key] : $value;
}
// Update settings for existing import
if (isset($settings['import_id'])) {
db_query("UPDATE {user_import} \n SET name = '%s', filename = '%s', oldfilename = '%s', filepath = '%s', pointer = %d, processed = %d, valid= %d, field_match = '%s', roles = '%s', options = '%s', setting = '%s' \n WHERE import_id = %d\n ", trim($settings['name']), $settings['filename'], $settings['oldfilename'], $settings['filepath'], $settings['pointer'], $settings['processed'], $settings['valid'], serialize($settings['field_match']), serialize($settings['roles']), serialize($settings['options']), $settings['setting'], $settings['import_id']);
// Save settings for new import
}
else {
db_query("INSERT INTO {user_import} \n (name, filename, oldfilename, filepath, started, pointer, processed, valid, field_match, roles, options, setting) \n VALUES ('%s', '%s', '%s', '%s', %d, %d, %d, %d, '%s', '%s', '%s', '%s')\n ", trim($settings['name']), $settings['filename'], $settings['oldfilename'], $settings['filepath'], time(), $settings['pointer'], $settings['processed'], $settings['valid'], serialize($settings['field_match']), serialize($settings['roles']), serialize($settings['options']), $settings['setting']);
switch ($GLOBALS['db_type']) {
case 'mysql':
case 'mysqli':
$settings['import_id'] = db_result(db_query("SELECT LAST_INSERT_ID()"));
break;
case 'pgsql':
$settings['import_id'] = db_result(db_query("SELECT currval('{user_import_import_id_seq}')"));
break;
}
}
return $settings;
}