From 9d661eab23f9ba284e4a5060b5de5d868b330d45 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20M=C3=BCller?= <thomas.mueller@tmit.eu>
Date: Thu, 12 Sep 2013 00:40:35 +0200
Subject: [PATCH] adding calls to \OCA\files\lib\Helper::determineIcon($i) in
 files, trashbin and sharing

---
 apps/files/ajax/list.php      |  1 +
 apps/files/index.php          |  1 +
 apps/files_sharing/public.php | 15 +++++++++++++++
 apps/files_trashbin/index.php |  1 +
 4 files changed, 18 insertions(+)

diff --git a/apps/files/ajax/list.php b/apps/files/ajax/list.php
index c50e96b242..14ed43cbb3 100644
--- a/apps/files/ajax/list.php
+++ b/apps/files/ajax/list.php
@@ -34,6 +34,7 @@ if($doBreadcrumb) {
 $files = array();
 foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $i ) {
 	$i["date"] = OCP\Util::formatDate($i["mtime"] );
+	$i['icon'] = \OCA\files\lib\Helper::determineIcon($i);
 	$files[] = $i;
 }
 
diff --git a/apps/files/index.php b/apps/files/index.php
index f1e120c872..4443bf5fde 100644
--- a/apps/files/index.php
+++ b/apps/files/index.php
@@ -75,6 +75,7 @@ foreach ($content as $i) {
 	}
 	$i['directory'] = $dir;
 	$i['isPreviewAvailable'] = \OCP\Preview::isMimeSupported($i['mimetype']);
+	$i['icon'] = \OCA\files\lib\Helper::determineIcon($i);
 	$files[] = $i;
 }
 
diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php
index ec6b4e815f..ae3e27cab3 100644
--- a/apps/files_sharing/public.php
+++ b/apps/files_sharing/public.php
@@ -19,6 +19,20 @@ function fileCmp($a, $b) {
 	}
 }
 
+function determineIcon($file, $sharingRoot, $sharingToken) {
+	// for folders we simply reuse the files logic
+	if($file['type'] == 'dir') {
+		return \OCA\files\lib\Helper::determineIcon($file);
+	}
+
+	$relativePath = substr($file['path'], 6);
+	$relativePath = substr($relativePath, strlen($sharingRoot));
+	if($file['isPreviewAvailable']) {
+		return OCP\publicPreview_icon($relativePath, $sharingToken);
+	}
+	return OCP\mimetype_icon($file['mimetype']);
+}
+
 if (isset($_GET['t'])) {
 	$token = $_GET['t'];
 	$linkItem = OCP\Share::getShareByToken($token);
@@ -176,6 +190,7 @@ if (isset($path)) {
 				}
 				$i['directory'] = $getPath;
 				$i['permissions'] = OCP\PERMISSION_READ;
+				$i['icon'] = determineIcon($i, $basePath, $token);
 				$files[] = $i;
 			}
 			usort($files, "fileCmp");
diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php
index 0baeab1de9..d7eb143f9a 100644
--- a/apps/files_trashbin/index.php
+++ b/apps/files_trashbin/index.php
@@ -65,6 +65,7 @@ foreach ($result as $r) {
 	}
 	$i['permissions'] = OCP\PERMISSION_READ;
 	$i['isPreviewAvailable'] = \OCP\Preview::isMimeSupported($r['mime']);
+	$i['icon'] = \OCA\files\lib\Helper::determineIcon($i);
 	$files[] = $i;
 }
 
-- 
GitLab