|
@@ -65,7 +65,7 @@ const ChatModal = ({ minTitle="2", chat, onСonfirm, titleError, myProfile, crea
|
|
|
})
|
|
|
|
|
|
|
|
|
- const [members, setMembers] = useState(chat?.members || [])
|
|
|
+ const [members, setMembers] = useState(chat?.members || [myProfile])
|
|
|
|
|
|
const onAddMember = (newMember) => {
|
|
|
setMembers([...members, newMember])
|
|
@@ -88,15 +88,27 @@ const ChatModal = ({ minTitle="2", chat, onСonfirm, titleError, myProfile, crea
|
|
|
useEffect(() => {
|
|
|
setTitle(chat?.title || '')
|
|
|
setImg(null)
|
|
|
- setMembers(chat?.members || [])
|
|
|
+ setMembers(chat?.members || [myProfile])
|
|
|
},[open])
|
|
|
|
|
|
|
|
|
|
|
|
function prepareMembers(members) {
|
|
|
const newMembers = []
|
|
|
+
|
|
|
for (const member of members) {
|
|
|
- newMembers.push({_id: member._id})
|
|
|
+
|
|
|
+ if (create) {
|
|
|
+
|
|
|
+ if (member._id !== myProfile?._id) {
|
|
|
+
|
|
|
+ newMembers.push({_id: member._id})
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+
|
|
|
+ newMembers.push({_id: member._id})
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
return newMembers
|
|
|
}
|
|
@@ -113,7 +125,7 @@ const ChatModal = ({ minTitle="2", chat, onСonfirm, titleError, myProfile, crea
|
|
|
|
|
|
<Box sx={styleModalParrent}>
|
|
|
|
|
|
- <Box sx={{ display: 'flex', justifyContent: 'space-between', borderBottom: '1px solid #999', pb: 1 }}>
|
|
|
+ <Box sx={{ display: 'flex', justifyContent: 'space-between', borderBottom: '1px solid #999', pb: 1, mb: 1 }}>
|
|
|
|
|
|
<Box sx={{ display: 'flex', justifyContent: 'start' }}>
|
|
|
<Typography variant="h6">
|
|
@@ -135,7 +147,6 @@ const ChatModal = ({ minTitle="2", chat, onСonfirm, titleError, myProfile, crea
|
|
|
<Box sx={{ display: 'flex', justifyContent: 'space-between', pl: 3, pr: 6 }} >
|
|
|
|
|
|
<Box sx={{ display: 'flex', justifyContent: 'start', alignItems: 'start', flexBasis: "35%" }}>
|
|
|
- <form action="/upload" method="post" encType="multipart/form-data" id='formChat'>
|
|
|
<section className="container">
|
|
|
<Box {...getRootProps({className: 'dropzone'})}
|
|
|
sx={{ cursor: 'pointer', height: '80px', display: 'flex' }}
|
|
@@ -153,14 +164,15 @@ const ChatModal = ({ minTitle="2", chat, onСonfirm, titleError, myProfile, crea
|
|
|
</Box>
|
|
|
</Box>
|
|
|
</section>
|
|
|
- </form>
|
|
|
</Box>
|
|
|
|
|
|
<Box sx={{ display: 'flex', flexDirection: 'column', justifyContent: 'start', alignItems: 'stretch',
|
|
|
flexBasis: "35%" }}>
|
|
|
+
|
|
|
<Typography sx={{ fontWeight: 500, fontSize: 18 }}>
|
|
|
Название
|
|
|
</Typography>
|
|
|
+
|
|
|
<TextField
|
|
|
onChange={(e) => {
|
|
|
setTitle(e.target.value)
|
|
@@ -218,8 +230,7 @@ const ChatModal = ({ minTitle="2", chat, onСonfirm, titleError, myProfile, crea
|
|
|
<List
|
|
|
sx={{ maxWidth: '100%', bgcolor: 'background.paper' }}
|
|
|
>
|
|
|
- {/* { create && <UserCard key={'iAm'} user={myProfile} /> } */}
|
|
|
- { members.map((member, i) => <UserCard key={member._id} user={member}
|
|
|
+ { members.map((member, i) => <UserCard key={member._id || i} user={member}
|
|
|
render={DelBtn} onAction={() => onDelMember(i)} />)}
|
|
|
</List>
|
|
|
</Box>
|