You are here

function feed_import_fields_form_submit in Feed Import 7.3

Edit fields form submit

File

./feed_import.module, line 2173
User interface, cron functions for feed_import module

Code

function feed_import_fields_form_submit($form, &$form_state) {
  $v =& $form_state['values'];
  if (!($feed = FeedImport::loadFeed($v['machine_name']))) {
    return;
  }
  $e = FeedImport::getEntityInfo($feed->entity);
  $fields = array();
  for ($i = 0; $i <= $form_state['#current_item']; $i++) {
    if (empty($v['fields']['container_' . $i]['field'])) {
      continue;
    }
    $f =& $v['fields']['container_' . $i];
    $fields[$f['field']] = array(
      'field' => $f['field'],
      'column' => isset($e->fields[$f['field']]),
      'paths' => array_filter(_feed_import_lines($f['paths']), 'strlen'),
      'default_action' => (int) $f['default_action'],
      'default_value' => $f['default_value'],
      'update_mode' => (int) $f['update_mode'],
      'filters' => isset($feed->settings['fields'][$f['field']]['filters']) ? $feed->settings['fields'][$f['field']]['filters'] : array(),
      'prefilters' => isset($feed->settings['fields'][$f['field']]['prefilters']) ? $feed->settings['fields'][$f['field']]['prefilters'] : array(),
    );
    unset($f);
  }
  $feed->settings['uniq_path'] = $v['uniq'];
  $feed->settings['fields'] = $fields;

  // Save feed.
  if (FeedImport::saveFeed($feed)) {
    drupal_set_message(t('Feed saved'));
  }
}