blob: 9bd509315179b93688e26e97d79b9d8d62f81789 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
<?php
class OC_Search_Provider_File extends OC_Search_Provider{
function search($query) {
$files=\OC\Files\Filesystem::search($query, true);
$results=array();
$l=OC_L10N::get('lib');
foreach($files as $fileData) {
$path = $fileData['path'];
$mime = $fileData['mimetype'];
$name = basename($path);
$container = dirname($path);
$text = '';
$skip = false;
if($mime=='httpd/unix-directory') {
$link = OC_Helper::linkTo( 'files', 'index.php', array('dir' => $path));
$type = (string)$l->t('Files');
}else{
$link = OC_Helper::linkToRoute( 'download', array('file' => $path));
$mimeBase = $fileData['mimepart'];
switch($mimeBase) {
case 'audio':
$skip = true;
break;
case 'text':
$type = (string)$l->t('Text');
break;
case 'image':
$type = (string)$l->t('Images');
break;
default:
if($mime=='application/xml') {
$type = (string)$l->t('Text');
}else{
$type = (string)$l->t('Files');
}
}
}
if(!$skip) {
$results[] = new OC_Search_Result($name, $text, $link, $type, $container);
}
}
return $results;
}
}
|