function word_link_exchange_import_form_validate in Word Link 7.2
Same name and namespace in other branches
- 8 modules/word_link_exchange/word_link_exchange.module \word_link_exchange_import_form_validate()
- 7 modules/word_link_exchange/word_link_exchange.module \word_link_exchange_import_form_validate()
Validate for word_link_exchange_import_form.
File
- modules/
word_link_exchange/ word_link_exchange.module, line 162 - Code for the Word link exchange module.
Code
function word_link_exchange_import_form_validate($form, &$form_state) {
// Preload file.
$file = file_save_upload('file', array(
'file_validate_extensions' => array(
'csv txt',
),
), FALSE, FILE_EXISTS_REPLACE);
if (!empty($file)) {
$file->filepath = drupal_realpath($file->uri);
if (!empty($file->filepath)) {
$content = file($file->filepath);
$values = array();
switch ($form_state['values']['delimiter']) {
case 'comma':
$delimiter = ',';
break;
case 'semicolon':
$delimiter = ';';
break;
case 'tabulation':
$delimiter = "\t";
break;
case 'pipe':
$delimiter = '|';
break;
case 'space':
$delimiter = ' ';
break;
case 'currency_sign':
$delimiter = '¤';
break;
case 'custom_delimiter':
if ($form_state['values']['delimiter_custom'] !== '') {
$delimiter = $form_state['values']['delimiter_custom'];
}
else {
$messages['delimiter_custom'] = t('Delimiter is required.');
}
break;
}
if (!isset($messages['delimiter_custom'])) {
foreach ($content as $row) {
$row = str_getcsv($row, $delimiter);
if (count($row) == 10) {
$values[] = $value = array(
'text' => $row[0],
'case_sensitive' => $row[1],
'url' => $row[2],
'url_title' => $row[3],
'class' => $row[4],
'visibility' => $row[5],
'weight' => $row[6],
'rel' => $row[7],
'status' => $row[8],
'except_list' => $row[9],
);
}
else {
$messages['file'] = t('Wrong file or delimiter.');
}
}
$form_state['values']['file'] = $values;
}
}
}
if (isset($form['taxonomy'])) {
if (empty($form_state['values']['import_limit']) || $form_state['values']['import_limit'] < 0) {
$messages['import_limit'] = t('Import limit must be positive integer.');
}
if (empty($file) && empty($form_state['values']['vocabularies'])) {
$messages['vocabularies'] = t('Please select something.');
$messages['file'] = '';
}
}
// Set error messages.
if (isset($messages)) {
foreach ($messages as $item => $message) {
form_set_error(check_plain($item), filter_xss($message));
}
}
}