From 317d77c36a74e7315bca9acede9e1c5697e9d14e Mon Sep 17 00:00:00 2001 From: rahuljain-dev Date: Tue, 30 Apr 2024 15:50:28 +0530 Subject: [PATCH] WEBUI-1501: Update our elements to show a view instead of a download --- .../nuxeo-document-grid-thumbnail.js | 19 ++++++++++++++++--- .../nuxeo-document-list-item.js | 19 ++++++++++++++++--- 2 files changed, 32 insertions(+), 6 deletions(-) diff --git a/elements/nuxeo-data-grid/nuxeo-document-grid-thumbnail.js b/elements/nuxeo-data-grid/nuxeo-document-grid-thumbnail.js index f7a55a7055..50f9e33ad0 100644 --- a/elements/nuxeo-data-grid/nuxeo-document-grid-thumbnail.js +++ b/elements/nuxeo-data-grid/nuxeo-document-grid-thumbnail.js @@ -271,13 +271,26 @@ Polymer({ observers: ['_selectedItemsChanged(selectedItems.splices)'], _thumbnail(doc) { - return doc && + if ( + doc && doc.uid && doc.contextParameters && doc.contextParameters.thumbnail && doc.contextParameters.thumbnail.url - ? doc.contextParameters.thumbnail.url - : ''; + ) { + if (!this.isFollowRedirectEnabled()) { + const splitter = doc.contextParameters.thumbnail.url.indexOf('?') > -1 ? '&' : '?'; + doc.contextParameters.thumbnail.url = `${doc.contextParameters.thumbnail.url}${splitter}clientReason=view`; + } + return doc.contextParameters.thumbnail.url; + } + return ''; + }, + + isFollowRedirectEnabled() { + const followRedirect = + Nuxeo && Nuxeo.UI && Nuxeo.UI.config && Nuxeo.UI.config.url && Nuxeo.UI.config.url.followRedirect; + return followRedirect ? String(followRedirect).toLowerCase() === 'true' : false; }, handleClick(e) { diff --git a/elements/nuxeo-data-list/nuxeo-document-list-item.js b/elements/nuxeo-data-list/nuxeo-document-list-item.js index f3c6d13e76..8e8aff3d89 100644 --- a/elements/nuxeo-data-list/nuxeo-document-list-item.js +++ b/elements/nuxeo-data-list/nuxeo-document-list-item.js @@ -256,13 +256,26 @@ Polymer({ observers: ['_selectedItemsChanged(selectedItems.splices)'], _thumbnail(doc) { - return doc && + if ( + doc && doc.uid && doc.contextParameters && doc.contextParameters.thumbnail && doc.contextParameters.thumbnail.url - ? doc.contextParameters.thumbnail.url - : ''; + ) { + if (!this.isFollowRedirectEnabled()) { + const splitter = doc.contextParameters.thumbnail.url.indexOf('?') > -1 ? '&' : '?'; + doc.contextParameters.thumbnail.url = `${doc.contextParameters.thumbnail.url}${splitter}clientReason=view`; + } + return doc.contextParameters.thumbnail.url; + } + return ''; + }, + + isFollowRedirectEnabled() { + const followRedirect = + Nuxeo && Nuxeo.UI && Nuxeo.UI.config && Nuxeo.UI.config.url && Nuxeo.UI.config.url.followRedirect; + return followRedirect ? String(followRedirect).toLowerCase() === 'true' : false; }, handleClick(e) {