aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Brown <andrew@casabrown.com>2013-09-06 17:42:21 -0400
committerJörn Friedrich Dreyer <jfd@butonic.de>2014-06-05 19:22:22 +0200
commitc46d51473340e1a6fa1b6d1ee7a24422595a0c32 (patch)
tree9b3b424850ef89bc46688936bd1cf961feecc0ed
parentafd24385a8b8a9ba75e6e0e7f3c56dfe1628991b (diff)
downloadnextcloud-server-c46d51473340e1a6fa1b6d1ee7a24422595a0c32.tar.gz
nextcloud-server-c46d51473340e1a6fa1b6d1ee7a24422595a0c32.zip
Add audio and image result types
-rw-r--r--lib/private/search/provider/file.php10
-rw-r--r--lib/search/result/audio.php36
-rw-r--r--lib/search/result/image.php36
3 files changed, 81 insertions, 1 deletions
diff --git a/lib/private/search/provider/file.php b/lib/private/search/provider/file.php
index a9082763002..d5f167b730c 100644
--- a/lib/private/search/provider/file.php
+++ b/lib/private/search/provider/file.php
@@ -43,7 +43,15 @@ class File extends \OC\Search\Provider {
continue;
}
// create folder result
- if($fileData['mimetype'] === 'httpd/unix-directory'){
+ if($fileData['mimepart'] === 'audio'){
+ $result = new \OC\Search\Result\Audio($fileData);
+ }
+ // create image result
+ elseif($fileData['mimepart'] === 'image'){
+ $result = new \OC\Search\Result\Image($fileData);
+ }
+ // create audio result
+ elseif($fileData['mimetype'] === 'httpd/unix-directory'){
$result = new \OC\Search\Result\Folder($fileData);
}
// or create file result
diff --git a/lib/search/result/audio.php b/lib/search/result/audio.php
new file mode 100644
index 00000000000..46f7396ec9f
--- /dev/null
+++ b/lib/search/result/audio.php
@@ -0,0 +1,36 @@
+<?php
+/**
+ * ownCloud
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OC\Search\Result;
+
+/**
+ * A found audio file
+ */
+class Audio extends \OC\Search\Result\File {
+
+ /**
+ * Type name; translated in templates
+ * @var string
+ */
+ public $type = 'audio';
+
+ /**
+ * @TODO add ID3 information
+ */
+}
diff --git a/lib/search/result/image.php b/lib/search/result/image.php
new file mode 100644
index 00000000000..ecc706fffe6
--- /dev/null
+++ b/lib/search/result/image.php
@@ -0,0 +1,36 @@
+<?php
+/**
+ * ownCloud
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OC\Search\Result;
+
+/**
+ * A found image file
+ */
+class Image extends \OC\Search\Result\File {
+
+ /**
+ * Type name; translated in templates
+ * @var string
+ */
+ public $type = 'image';
+
+ /**
+ * @TODO add EXIF information
+ */
+}