function word_link_exchange_export_form_submit in Word Link 7.2
Same name and namespace in other branches
- 8 modules/word_link_exchange/word_link_exchange.module \word_link_exchange_export_form_submit()
- 7 modules/word_link_exchange/word_link_exchange.module \word_link_exchange_export_form_submit()
Submit for export form.
File
- modules/
word_link_exchange/ word_link_exchange.module, line 499 - Code for the Word link exchange module.
Code
function word_link_exchange_export_form_submit($form, &$form_state) {
// This is the order of columns for our file.
$values = array(
'text',
'case_sensitive',
'url',
'url_title',
'class',
'visibility',
'weight',
'rel',
'status',
'except_list',
);
// Get all words from DB.
$words = word_link_load_all(FALSE);
// Get right delimiter.
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':
$delimiter = $form_state['values']['delimiter_custom'];
break;
}
// Get right line ending.
switch ($form_state['values']['line_ending']) {
case 'unix':
$line_ending = "\n";
break;
case 'mac':
$line_ending = "\r";
break;
case 'ms':
$line_ending = "\r\n";
break;
}
// Check if there is write access and prepare file.
$filename = file_unmanaged_save_data('', 'public://' . 'word_link_' . format_date(REQUEST_TIME, 'custom', 'd\\_m\\_Y\\TH\\_i') . '.csv', 'FILE_EXISTS_REPLACE');
if ($filename) {
$file = (object) array(
'filename' => basename($filename),
'filepath' => drupal_realpath($filename),
'filesize' => filesize($filename),
);
}
else {
drupal_set_message(t('The file could not be created.'), 'error');
return;
}
$operations = array();
foreach ($words as $word) {
$string = '';
foreach ($values as $value) {
if ($value != 'except_list') {
$string .= $word->{$value};
$string .= $delimiter;
}
else {
$except = str_replace(array(
"\r\n",
"\n",
"\r",
), '|', trim($word->{$value}));
$string .= !empty($except) ? $except : '""';
$string .= $line_ending;
}
}
$operations[] = array(
'word_link_exchange_write_file',
array(
$string,
$file,
),
);
}
$batch = array(
'title' => t('Exporting links...'),
'operations' => $operations,
'finished' => 'word_link_exchange_export_batch_finish',
);
batch_set($batch);
}