protected function elFinderDrupal::search in elFinder file manager 7.3
Same name and namespace in other branches
- 6.2 inc/elfinder.drupal.inc \elFinderDrupal::search()
- 7.2 inc/elfinder.drupal.inc \elFinderDrupal::search()
Search files
Parameters
array $args command arguments:
Return value
array
File
- inc/
elfinder.drupal.inc, line 35 - elFinder conenctor class
Class
- elFinderDrupal
- @file
Code
protected function search($args) {
$q = trim($args['elfinder_search_q']);
$mimes = !empty($args['mimes']) && is_array($args['mimes']) ? $args['mimes'] : array();
$target = !empty($args['target']) ? $args['target'] : null;
$result = array();
$errors = array();
if ($target) {
if ($volume = $this
->volume($target)) {
$result = $volume
->search($q, $mimes, $target);
$errors = array_merge($errors, $volume
->error());
}
}
else {
foreach ($this->volumes as $volume) {
$result = array_merge($result, $volume
->search($q, $mimes));
$errors = array_merge($errors, $volume
->error());
}
}
// Exclude hidden folders from search results.
$hidden_folders = variable_get('elfinder_settings_misc_hidden_folders', '');
if ($hidden_folders) {
$hidden_folders = explode(',', $hidden_folders);
foreach ($result as $key => $file) {
$parts = explode('/', $file['path']);
if (in_array($parts[1], $hidden_folders)) {
unset($result[$key]);
}
}
}
$result = array(
'files' => $result,
);
if ($errors) {
$result['warning'] = $errors;
}
return $result;
}