function kwresearch_site_keywords_import_form_submit in Keyword Research 7
Same name and namespace in other branches
- 6 kwresearch.admin.inc \kwresearch_site_keywords_import_form_submit()
Processes site keywords import form
_state
Parameters
$form:
File
- ./
kwresearch.admin.inc, line 392 - Admin include file.
Code
function kwresearch_site_keywords_import_form_submit($form, &$form_state) {
global $user;
$lines = explode("\n", $form_state['values']['import_data']);
$add_fields = $form_state['values']['add_fields'];
$delineator = $form_state['values']['delineator'];
$imported = 0;
//dsm($form_state);
foreach ($lines as $line) {
$delineator = str_replace("\\t", "\t", $delineator);
$a = explode($delineator, $line);
$keyword = drupal_strtolower(trim($a[0]));
if (!$keyword || substr($keyword, 0, 1) == '#') {
continue;
}
$i = 1;
$priority = NULL;
if ($add_fields['priority']) {
$priority = isset($a[$i]) ? $a[$i] : NULL;
$i++;
}
$value = NULL;
if ($add_fields['value']) {
$value = isset($a[$i]) ? $a[$i] : NULL;
$i++;
}
// TODO: tight coupling issue with linkintel module, decouple back to linkintel
$link_path = NULL;
if (!empty($add_fields['link_path'])) {
$link_path = isset($a[$i]) ? trim($a[$i]) : NULL;
$i++;
}
$link_priority = NULL;
if (!empty($add_fields['link_priority'])) {
$link_priority = isset($a[$i]) ? trim($a[$i]) : NULL;
$i++;
}
$keyword_obj = new stdClass();
$set = '';
$fields = '';
$values = '';
$format = 0;
if ($priority) {
$keyword_obj->priority = (int) $priority;
}
else {
$keyword_obj->priority = 0;
}
if ($value) {
$keyword_obj->value = (double) $value;
}
$kid = kwresearch_save_site_keyword($keyword, NULL, $keyword_obj);
// save linkintel request if enabled
if ($link_path) {
$request = new stdClass();
$request->attributes = array();
$request->kid = $kid;
$request->path = linkintel_reduce_path($link_path);
if ($link_priority) {
$request->priority = $link_priority;
}
linkintel_request_save($request);
}
$imported++;
}
drupal_set_message(t('@imported keywords were imported.', array(
'@imported' => $imported,
)));
}