You are here

function bpn_upload_form_step_1_submit in Bulk File Nodes 7

Form submission handler for bpn_upload_form_step_1().

1 string reference to 'bpn_upload_form_step_1_submit'
bpn_upload_form_step_1 in modules/bpn_upload/bpn_upload.module
Form constructor for step one of bpn_upload_form().

File

modules/bpn_upload/bpn_upload.module, line 84
Hooks and functions for the bpn_upload module.

Code

function bpn_upload_form_step_1_submit($form, &$form_state) {
  $node_type = $form_state['node_type'];
  $saved_files = array();
  foreach ($form_state['values']['plupload'] as $uploaded_file) {
    if ($uploaded_file['status'] == 'done') {
      $source = $uploaded_file['tmppath'];
      $destination = file_stream_wrapper_uri_normalize('public://' . $uploaded_file['name']);
      $destination = file_unmanaged_move($source, $destination, FILE_EXISTS_RENAME);
      $file = plupload_file_uri_to_object($destination);
      file_save($file);
      if (function_exists('exif_read_data')) {
        $read_data_compatible_types = array(
          IMAGETYPE_JPEG,
          IMAGETYPE_TIFF_II,
          IMAGETYPE_TIFF_MM,
        );
        $type_of_image = exif_imagetype($destination);
        if (in_array($type_of_image, $read_data_compatible_types)) {
          $extra_info = exif_read_data(drupal_realpath($destination));
        }
      }
      $form_state['saved_files'][] = array(
        'extra_info' => !empty($extra_info) ? $extra_info : FALSE,
        'file_object' => $file,
      );
    }
    else {
      form_set_error('plupload', "Upload of {$uploaded_file['name']} failed");
    }
  }
  $form_state['step'] = 2;
  $form_state['rebuild'] = TRUE;
}