function file_managed_file_validate
file_managed_file_validate(&$element, &$form_state)
An #element_validate callback for the managed_file element.
File
- modules/file/file.module, line 597
- Defines a "managed_file" Form API field and a "file" field for Field module.
Code
function file_managed_file_validate(&$element, &$form_state) { // If referencing an existing file, only allow if there are existing // references. This prevents unmanaged files from being deleted if this // item were to be deleted. $clicked_button = end($form_state['triggering_element']['#parents']); if ($clicked_button != 'remove_button' && !empty($element['fid']['#value'])) { if ($file = file_load($element['fid']['#value'])) { if ($file->status == FILE_STATUS_PERMANENT) { $references = file_usage_list($file); if (empty($references)) { form_error($element, t('The file used in the !name field may not be referenced.', array('!name' => $element['#title']))); } } } else { form_error($element, t('The file referenced by the !name field does not exist.', array('!name' => $element['#title']))); } } // Check required property based on the FID. if ($element['#required'] && empty($element['fid']['#value']) && !in_array($clicked_button, array('upload_button', 'remove_button'))) { form_error($element['upload'], t('!name field is required.', array('!name' => $element['#title']))); } // Consolidate the array value of this field to a single FID. if (!$element['#extended']) { form_set_value($element, $element['fid']['#value'], $form_state); } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!file!file.module/function/file_managed_file_validate/7.x