diff options
Diffstat (limited to 'webapp/components/file_attachment.jsx')
-rw-r--r-- | webapp/components/file_attachment.jsx | 47 |
1 files changed, 31 insertions, 16 deletions
diff --git a/webapp/components/file_attachment.jsx b/webapp/components/file_attachment.jsx index 9459c44ef..3d7f936c8 100644 --- a/webapp/components/file_attachment.jsx +++ b/webapp/components/file_attachment.jsx @@ -1,15 +1,15 @@ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See License.txt for license information. -import Constants from 'utils/constants.jsx'; -import {getFileUrl, getFileThumbnailUrl} from 'mattermost-redux/utils/file_utils'; -import * as Utils from 'utils/utils.jsx'; - +import PropTypes from 'prop-types'; +import React from 'react'; import {Tooltip, OverlayTrigger} from 'react-bootstrap'; -import PropTypes from 'prop-types'; +import Constants from 'utils/constants.jsx'; +import * as FileUtils from 'utils/file_utils'; +import * as Utils from 'utils/utils.jsx'; -import React from 'react'; +import {getFileUrl, getFileThumbnailUrl} from 'mattermost-redux/utils/file_utils'; export default class FileAttachment extends React.Component { constructor(props) { @@ -101,6 +101,8 @@ export default class FileAttachment extends React.Component { trimmedFilename = fileName; } + const canDownloadFiles = FileUtils.canDownloadFiles(); + let filenameOverlay; if (this.props.compactDisplay) { filenameOverlay = ( @@ -124,7 +126,7 @@ export default class FileAttachment extends React.Component { </a> </OverlayTrigger> ); - } else { + } else if (canDownloadFiles) { filenameOverlay = ( <OverlayTrigger trigger={['hover', 'focus']} @@ -143,6 +145,27 @@ export default class FileAttachment extends React.Component { </a> </OverlayTrigger> ); + } else { + filenameOverlay = ( + <span className='post-image__name'> + {trimmedFilename} + </span> + ); + } + + let downloadButton = null; + if (canDownloadFiles) { + downloadButton = ( + <a + href={fileUrl} + download={fileName} + className='post-image__download' + target='_blank' + rel='noopener noreferrer' + > + <span className='fa fa-download'/> + </a> + ); } return ( @@ -157,15 +180,7 @@ export default class FileAttachment extends React.Component { <div className='post-image__details'> {filenameOverlay} <div> - <a - href={fileUrl} - download={fileName} - className='post-image__download' - target='_blank' - rel='noopener noreferrer' - > - <span className='fa fa-download'/> - </a> + {downloadButton} <span className='post-image__type'>{fileInfo.extension.toUpperCase()}</span> <span className='post-image__size'>{Utils.fileSizeToString(fileInfo.size)}</span> </div> |