function imce_uploader_plupload_submit in IMCE Uploader 7
Submit handler.
Parameters
array $form: Form element.
array $form_state: Form state
See also
1 string reference to 'imce_uploader_plupload_submit'
- imce_uploader_plupload in plugins/
plupload/ imce_uploader_plupload.module - Callback to override the upload form.
File
- plugins/
plupload/ imce_uploader_plupload.module, line 137 - IMCE Uploader - Plupload
Code
function imce_uploader_plupload_submit($form, &$form_state) {
$form_state['redirect'] = FALSE;
$imce =& $form_state['build_info']['args'][0]['imce'];
$diruri = imce_dir_uri($imce);
$replace = variable_get('imce_settings_replace', FILE_EXISTS_RENAME);
$validators = empty($form['fset_upload']['imce']['#upload_validators']) ? array() : $form['fset_upload']['imce']['#upload_validators'];
foreach ($form_state['values']['imce'] as $uploaded_file) {
$tmp = plupload_file_uri_to_object($uploaded_file['tmppath']);
$tmp->filename = $uploaded_file['name'];
$errors = file_validate($tmp, $validators);
if (!empty($errors)) {
$message = t('The specified file %name could not be uploaded.', array(
'%name' => $uploaded_file['name'],
));
if (count($errors) > 1) {
$message .= theme('item_list', array(
'items' => $errors,
));
}
else {
$message .= ' ' . array_pop($errors);
}
drupal_set_message($message, 'error');
}
elseif ($file = file_move($tmp, $diruri . $uploaded_file['name'], $replace)) {
// Core bug #54223.
if ($replace == FILE_EXISTS_RENAME) {
$name = basename($file->uri);
if ($name != $tmp->filename) {
$file->filename = $name;
drupal_set_message(t('The file has been renamed to %filename.', array(
'%filename' => $file->filename,
)));
}
}
// Global user may not be the owner.
$file->uid = $imce['uid'];
$file->status = FILE_STATUS_PERMANENT;
$file->filemime = file_get_mimetype($file->uri);
drupal_chmod($file->uri);
file_save($file);
imce_file_register($file);
drupal_set_message(t('%filename has been uploaded.', array(
'%filename' => $file->filename,
)));
// Update file list.
$img = imce_image_info($file->uri);
$file->width = $img ? $img['width'] : 0;
$file->height = $img ? $img['height'] : 0;
imce_add_file($file, $imce);
// Create thumbnails.
if (isset($form_state['values']['thumbnails']) && $img) {
imce_create_thumbnails($file->filename, $imce, $form_state['values']['thumbnails']);
}
}
else {
$message = t('The specified file %name could not be uploaded.', array(
'%name' => $uploaded_file['name'],
));
drupal_set_message($message, 'error');
}
}
}