diff --git a/apps/files/js/files.js b/apps/files/js/files.js
index 8ccb448abfbffc31ab3f96ada14a414cdf4ee6c4..ec688eaf63efff3ea5d0dc70db8e85e08a45f2ac 100644
--- a/apps/files/js/files.js
+++ b/apps/files/js/files.js
@@ -644,7 +644,11 @@ function lazyLoadPreview(path, mime, ready, width, height) {
 		if ( ! height ) {
 			height = $('#filestable').data('preview-y');
 		}
-		var previewURL = OC.Router.generate('core_ajax_preview', {file: encodeURIComponent(path), x:width, y:height});
+		if( $('#publicUploadButtonMock').length ) {
+			var previewURL = OC.Router.generate('core_ajax_public_preview', {file: encodeURIComponent(path), x:width, y:height, t:$('#dirToken').val()});
+		} else {
+			var previewURL = OC.Router.generate('core_ajax_preview', {file: encodeURIComponent(path), x:width, y:height});
+		}
 		$.get(previewURL, function() {
 			previewURL = previewURL.replace('(', '%28');
 			previewURL = previewURL.replace(')', '%29');
diff --git a/apps/files/lib/helper.php b/apps/files/lib/helper.php
index 08c807d7f7b20b31492a642d4656aae8fbf377e3..1d431df04f15b7d81fdaf77a9db1f41a0da471a2 100644
--- a/apps/files/lib/helper.php
+++ b/apps/files/lib/helper.php
@@ -39,8 +39,8 @@ class Helper
 		}
 
 		if($file['isPreviewAvailable']) {
-			$relativePath = substr($file['path'], 6);
-			return \OC_Helper::previewIcon($relativePath);
+			$pathForPreview = $file['directory'] . '/' . $file['name'];
+			return \OC_Helper::previewIcon($pathForPreview);
 		}
 		return \OC_Helper::mimetypeIcon($file['mimetype']);
 	}