function feed_import_class_settings_form in Feed Import 7.3
Class options edit form.
1 string reference to 'feed_import_class_settings_form'
- feed_import_menu in ./
feed_import.module - Implements hook_menu().
File
- ./
feed_import.module, line 1168 - User interface, cron functions for feed_import module
Code
function feed_import_class_settings_form($form, &$form_state, $feed, $setting, $title = FALSE) {
// Get all settings.
if (!($settings = feed_import_get_class_settings($setting))) {
drupal_goto(FEED_IMPORT_PATH);
}
// Set title if any.
if ($title) {
$title .= ' - @name';
drupal_set_title(t($title, array(
'@name' => $feed->name,
)), PASS_THROUGH);
}
// Get setting name.
if (isset($form_state['values']['name'])) {
$default = $form_state['values']['options'];
$sn = $form_state['values']['name'];
unset($form_state['values']['options'], $form_state['input']['options']);
}
else {
if (!isset($feed->settings[$setting]['name'])) {
$default = array();
// Use a default setting.
$first = reset($settings);
$sn = key($settings);
$feed->settings[$setting] = array(
'name' => $sn,
'class' => $first['class'],
'options' => array(),
);
}
else {
$sn = $feed->settings[$setting]['name'];
$default = $feed->settings[$setting]['options'];
}
}
// Get setting.
$set =& $settings[$sn];
// Get setting options.
$options = array();
foreach ($settings as $key => &$r) {
if (empty($r['hidden'])) {
$options[$key] = $r['name'];
}
}
$form['machine_name'] = array(
'#type' => 'value',
'#value' => $feed->machine_name,
);
$form['setting'] = array(
'#type' => 'value',
'#value' => $setting,
);
$form['class'] = array(
'#type' => 'value',
'#value' => $set['class'],
);
$form['#id'] = 'feed_import_class_settings';
$form['name'] = array(
'#type' => 'select',
'#title' => t('Select option'),
'#options' => $options,
'#default_value' => $sn,
'#description' => isset($set['description']) ? $set['description'] : '',
'#ajax' => array(
'event' => 'change',
'callback' => '_feed_import_ajax_whole_form',
'wrapper' => 'feed_import_class_settings',
'method' => 'replace',
),
);
$form['options'] = array(
'#type' => 'fieldset',
'#title' => t('Settings'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
'#tree' => TRUE,
);
// Get form fields.
$fields = _feed_import_get_class_options_form($set, $settings, $default);
// Add settings into fieldset.
$form['options'] += $fields;
// Add submit button.
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
return $form;
}