1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- <?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;
- }
- }
|