[FIX] LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off (#24320)

Co-authored-by: Pierre Lehnen <pierre.lehnen@rocket.chat>
pull/24936/head
Matheus Barbosa Silva 4 years ago committed by GitHub
parent 091ab0e291
commit e2b83fb7e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      app/file-upload/server/lib/FileUpload.js
  2. 1
      app/file-upload/server/startup/settings.ts
  3. 14
      client/components/avatar/UserAvatarEditor/UserAvatarEditor.js

@ -229,7 +229,9 @@ export const FileUpload = {
const future = new Future();
const s = sharp(tempFilePath);
s.rotate();
if (settings.get('FileUpload_RotateImages') === true) {
s.rotate();
}
s.metadata(
Meteor.bindEnvironment((err, metadata) => {

@ -32,6 +32,7 @@ settingsRegistry.addGroup('FileUpload', function () {
this.add('FileUpload_RotateImages', true, {
type: 'boolean',
public: true,
});
this.add('FileUpload_Enable_json_web_token_for_files', true, {

@ -1,6 +1,7 @@
import { Box, Button, Icon, TextInput, Margins, Avatar } from '@rocket.chat/fuselage';
import React, { useState, useCallback } from 'react';
import { useSetting } from '../../../contexts/SettingsContext';
import { useToastMessageDispatch } from '../../../contexts/ToastMessagesContext';
import { useTranslation } from '../../../contexts/TranslationContext';
import { useFileInput } from '../../../hooks/useFileInput';
@ -9,6 +10,7 @@ import UserAvatarSuggestions from './UserAvatarSuggestions';
function UserAvatarEditor({ currentUsername, username, setAvatarObj, suggestions, disabled, etag }) {
const t = useTranslation();
const rotateImages = useSetting('FileUpload_RotateImages');
const [avatarFromUrl, setAvatarFromUrl] = useState('');
const [newAvatarSource, setNewAvatarSource] = useState();
const [urlEmpty, setUrlEmpty] = useState(true);
@ -58,7 +60,17 @@ function UserAvatarEditor({ currentUsername, username, setAvatarObj, suggestions
<Box display='flex' flexDirection='column' fontScale='p2m'>
{t('Profile_picture')}
<Box display='flex' flexDirection='row' mbs='x4'>
<UserAvatar size='x124' url={url} username={currentUsername} etag={etag} style={{ objectFit: 'contain' }} mie='x4' />
<UserAvatar
size='x124'
url={url}
username={currentUsername}
etag={etag}
style={{
objectFit: 'contain',
imageOrientation: rotateImages ? 'from-image' : 'none',
}}
mie='x4'
/>
<Box display='flex' flexDirection='column' flexGrow='1' justifyContent='space-between' mis='x4'>
<Box display='flex' flexDirection='row' mbs='none'>
<Margins inline='x4'>

Loading…
Cancel
Save