function _user_import_settings_save in User Import 8
Same name and namespace in other branches
- 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()
- 6.2 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 501 - 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' => '',
'auto_import_directory' => '',
'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);
// Optimise Email Domain option if it's set.
if (!empty($options['email_domain'])) {
$options['email_domain'] = trim($options['email_domain']);
if (substr($options['email_domain'], 0, 1) != '@') {
$options['email_domain'] = '@' . $options['email_domain'];
}
}
// Set defaults for options.
foreach ($options as $key => $value) {
$settings['options'][$key] = isset($settings[$key]) ? $settings[$key] : '';
}
// Optimise Email Domain option if it's set.
if (!empty($settings['options']['email_domain'])) {
$settings['options']['email_domain'] = trim($settings['options']['email_domain']);
if (substr($settings['options']['email_domain'], 0, 1) != '@') {
$settings['options']['email_domain'] = '@' . $settings['options']['email_domain'];
}
}
// Set defaults for fields.
foreach ($database_fields as $key => $value) {
$settings[$key] = isset($settings[$key]) ? $settings[$key] : $value;
}
// Set default values.
$import_id = isset($settings['import_id']) ? $settings['import_id'] : '';
$name = isset($settings['name']) ? trim($settings['name']) : '';
$pointer = isset($settings['pointer']) ? $settings['pointer'] : 0;
$processed = isset($settings['processed']) ? $settings['processed'] : 0;
$valid = isset($settings['valid']) ? $settings['valid'] : 0;
$field_match = isset($settings['field_match']) ? serialize($settings['field_match']) : '';
$roles = isset($settings['roles']) ? serialize($settings['roles']) : '';
$options = isset($settings['options']) ? serialize($settings['options']) : '';
$setting = isset($settings['setting']) ? $settings['setting'] : '';
// Only set an auto import directory if saving a template.
if (isset($settings['auto_import_directory']) && $settings['setting'] == 'template') {
$auto_import_directory = $settings['auto_import_directory'];
}
else {
$auto_import_directory = '';
}
$file->filename = isset($settings['filename']) ? $settings['filename'] : '';
$file->oldfilename = isset($settings['oldfilename']) ? $settings['oldfilename'] : '';
$file->filepath = isset($settings['filepath']) ? $settings['filepath'] : '';
$settings['import_id'] = user_import_import_set($name, $file, $pointer, $processed, $valid, $field_match, $roles, $options, $setting, $auto_import_directory, $import_id);
return $settings;
}