function feed_import_import_feed_form_submit in Feed Import 7.2
Same name and namespace in other branches
- 7.3 feed_import.module \feed_import_import_feed_form_submit()
- 7 feed_import.module \feed_import_import_feed_form_submit()
Feed import form submit
File
- ./
feed_import.module, line 777 - User interface, cron functions for feed_import module
Code
function feed_import_import_feed_form_submit($form, &$form_state) {
// Get all names and machine names.
$feeds = FeedImport::loadFeeds();
$names = array(
'name' => array(),
'machine_name' => array(),
);
if (!empty($feeds)) {
foreach ($feeds as $feed) {
$names['machine_name'][$feed['machine_name']] = TRUE;
$names['name'][$feed['name']] = TRUE;
$feed = NULL;
}
}
// Silence unserialize warning.
$feeds = @unserialize(base64_decode(trim($form_state['values']['code'])));
// There is only one feed.
if (isset($feeds['xpath']['#root'])) {
$feeds['enabled'] = 0;
// Mark feed name as imported if name already exists.
if (isset($names['name'][$feeds['name']])) {
$feeds['name'] .= ' (' . t('imported') . ')';
}
// Machine names must be unique.
$index = '';
while (isset($names['machine_name'][$feeds['machine_name'] . $index])) {
$index = (int) $index + 1;
}
$feeds['machine_name'] .= $index;
FeedImport::saveFeed($feeds);
drupal_set_message(t('Feed @name was imported and disabled.', array(
'@name' => $feeds['name'],
)));
}
else {
$imported = array();
foreach ($feeds as &$feed) {
$feed['enabled'] = 0;
// Mark feed name as imported if name already exists.
if (isset($names['name'][$feed['name']])) {
$feed['name'] .= ' (' . t('imported') . ')';
}
// Machine name must be unique.
$index = '';
while (isset($names['machine_name'][$feed['machine_name'] . $index])) {
$index = (int) $index + 1;
}
$feed['machine_name'] .= $index;
// Add to all amchine names.
$names['machine_name'][$feed['machine_name']] = TRUE;
FeedImport::saveFeed($feed);
$imported[] = $feed['name'];
$feed = NULL;
}
$imported = implode(', ', $imported);
drupal_set_message(t('Feeds @names were imported and disabled.', array(
'@names' => $imported,
)));
}
drupal_goto(FEED_IMPORT_PATH);
}