You are here

function imce_uploader_plupload_value in IMCE Uploader 7

Validate callback for plupload form element.

See also

imce_uploader_plupload()

imce_uploader_plupload_process()

1 string reference to 'imce_uploader_plupload_value'
imce_uploader_plupload in plugins/plupload/imce_uploader_plupload.module
Callback to override the upload form.

File

plugins/plupload/imce_uploader_plupload.module, line 94
IMCE Uploader - Plupload

Code

function imce_uploader_plupload_value(&$element, $input = FALSE, $form_state = NULL) {

  // Fool the default element value callback.
  $extensions = array();
  $id = $element['#id'];
  $files = array();
  foreach ($form_state['input'] as $key => $value) {
    if (preg_match('/' . $id . '_([0-9]+)_(.*)/', $key, $reg)) {
      $i = $reg[1];
      $key = $reg[2];
      if (in_array($key, array(
        'tmpname',
        'name',
      ))) {
        $info = pathinfo($value);
        if (!empty($info['extension'])) {
          $ext = strtolower($info['extension']);
          $extensions[$ext] = $ext;
        }
      }
    }
  }
  $element['#upload_validators']['file_validate_extensions'] = array_values($extensions);
  $callback = $element['#default_value_callback'];
  $files = $callback($element, $input, $form_state);
  unset($element['#upload_validators']['file_validate_extensions']);
  return $files;
}