You are here

function _webform_multifile_convert_files_array in Webform Multiple File Upload 6

Same name and namespace in other branches
  1. 7 multifile.inc \_webform_multifile_convert_files_array()
1 call to _webform_multifile_convert_files_array()
_webform_validate_multifile in ./multifile.inc
A Form API element validate function.

File

./multifile.inc, line 776
Webform module file component.

Code

function _webform_multifile_convert_files_array($form_key) {

  // file_save_upload expects the usual Forms API _FILES structure, which is
  // incompatible to jquery.MultiFile.js
  $keys = array();
  $file_properties = array(
    'type',
    'tmp_name',
    'error',
    'size',
    'orig_name',
  );
  foreach ($_FILES['files']['type'][$form_key] as $key => $empty) {
    $newkey = $form_key . $key;
    if (!empty($_FILES['files']['orig_name'][$form_key][$key])) {
      $_FILES['files']['name'][$newkey] = transliteration_clean_filename(_webform_multifile_get_files_array_value($_FILES['files']['orig_name'][$form_key][$key], $form_key));
    }
    else {
      $_FILES['files']['name'][$newkey] = transliteration_clean_filename(_webform_multifile_get_files_array_value($_FILES['files']['name'][$form_key][$key], $form_key));
    }
    foreach ($file_properties as $file_property) {
      $_FILES['files'][$file_property][$newkey] = _webform_multifile_get_files_array_value($_FILES['files'][$file_property][$form_key][$key], $form_key);
    }
    $keys[] = $newkey;
  }
  unset($_FILES['files']['name'][$form_key]);
  foreach ($file_properties as $file_property) {
    unset($_FILES['files'][$file_property][$form_key]);
  }
  return $keys;
}