fix: only owner can set workspace avatar (#882)

Co-authored-by: Qi <474021214@qq.com>
This commit is contained in:
zuomeng wang
2023-02-09 11:29:04 +08:00
committed by GitHub
parent 8297259f7e
commit 5323f659c8
2 changed files with 44 additions and 34 deletions

View File

@@ -33,7 +33,6 @@ export const GeneralPage = ({ workspace }: { workspace: WorkspaceUnit }) => {
currentWorkspace && currentWorkspace &&
(await updateWorkspace({ avatarBlob: blob }, currentWorkspace)); (await updateWorkspace({ avatarBlob: blob }, currentWorkspace));
}; };
if (!workspace) { if (!workspace) {
return null; return null;
} }
@@ -42,7 +41,8 @@ export const GeneralPage = ({ workspace }: { workspace: WorkspaceUnit }) => {
<> <>
<StyledRow> <StyledRow>
<StyledSettingKey>{t('Workspace Avatar')}</StyledSettingKey> <StyledSettingKey>{t('Workspace Avatar')}</StyledSettingKey>
<StyledAvatar> <StyledAvatar disabled={!isOwner}>
{isOwner ? (
<Upload <Upload
accept="image/gif,image/jpeg,image/jpg,image/png,image/svg" accept="image/gif,image/jpeg,image/jpg,image/png,image/svg"
fileChange={fileChange} fileChange={fileChange}
@@ -58,6 +58,13 @@ export const GeneralPage = ({ workspace }: { workspace: WorkspaceUnit }) => {
/> />
</> </>
</Upload> </Upload>
) : (
<WorkspaceUnitAvatar
size={72}
name={workspace.name}
workspaceUnit={workspace}
/>
)}
</StyledAvatar> </StyledAvatar>
</StyledRow> </StyledRow>

View File

@@ -19,10 +19,12 @@ export const StyledProviderInfo = styled('p')(({ theme }) => {
}; };
}); });
export const StyledAvatar = styled('div')(() => { export const StyledAvatar = styled('div')(
({ disabled }: { disabled: boolean }) => {
return { return {
position: 'relative', position: 'relative',
cursor: 'pointer', marginRight: '20px',
cursor: disabled ? 'default' : 'pointer',
':hover': { ':hover': {
'.camera-icon': { '.camera-icon': {
display: 'block', display: 'block',
@@ -41,4 +43,5 @@ export const StyledAvatar = styled('div')(() => {
lineHeight: '72px', lineHeight: '72px',
}, },
}; };
}); }
);