fix territory mutes for logged out

This commit is contained in:
keyan 2023-12-30 19:45:41 -06:00
parent 0999004646
commit 76b63240db
2 changed files with 31 additions and 26 deletions

View File

@ -69,13 +69,17 @@ export default {
where: { where: {
name name
}, },
include: { ...(me
MuteSub: { ? {
where: { include: {
userId: Number(me.id) MuteSub: {
where: {
userId: Number(me?.id)
}
}
}
} }
} : {})
}
}) })
}, },
subs: async (parent, args, { models, me }) => { subs: async (parent, args, { models, me }) => {

View File

@ -65,26 +65,27 @@ export default function TerritoryHeader ({ sub }) {
</div> </div>
<div className='d-flex my-2 justify-content-end'> <div className='d-flex my-2 justify-content-end'>
<Share path={`/~${sub.name}`} title={`~${sub.name} stacker news territory`} className='mx-3' /> <Share path={`/~${sub.name}`} title={`~${sub.name} stacker news territory`} className='mx-3' />
{Number(sub.userId) === Number(me?.id) {me &&
? ( (Number(sub.userId) === Number(me?.id)
<Link href={`/~${sub.name}/edit`} className='d-flex align-items-center'> ? (
<Button variant='outline-grey border-2 rounded py-0' size='sm'>edit territory</Button> <Link href={`/~${sub.name}/edit`} className='d-flex align-items-center'>
</Link>) <Button variant='outline-grey border-2 rounded py-0' size='sm'>edit territory</Button>
: ( </Link>)
<Button : (
variant='outline-grey border-2 py-0 rounded' <Button
size='sm' variant='outline-grey border-2 py-0 rounded'
onClick={async () => { size='sm'
try { onClick={async () => {
await toggleMuteSub({ variables: { name: sub.name } }) try {
} catch { await toggleMuteSub({ variables: { name: sub.name } })
toaster.danger(`failed to ${sub.meMuteSub ? 'join' : 'mute'} territory`) } catch {
return toaster.danger(`failed to ${sub.meMuteSub ? 'join' : 'mute'} territory`)
} return
toaster.success(`${sub.meMuteSub ? 'joined' : 'muted'} territory`) }
}} toaster.success(`${sub.meMuteSub ? 'joined' : 'muted'} territory`)
>{sub.meMuteSub ? 'join' : 'mute'} territory }}
</Button>)} >{sub.meMuteSub ? 'join' : 'mute'} territory
</Button>))}
</div> </div>
</div> </div>
</> </>