fix: accounts with an empty "belongs", cannot login #769

Massimo Melina committed Oct 9, 2024 at 11:34 UTC 7db7565b11659aa5b749fa5ff144b344f6afe148
1 file changed +1 -1
src/perm.ts
+1 -1
@@ -188,7 +188,7 @@ export function accountCanLogin(account: Account) {
188 function allDisabled(account: Account): boolean {
189 return Boolean(account.disabled
190 || account.expire as any < Date.now()
191 - || account.belongs?.map(u => getAccount(u, false)).every(a => a && allDisabled(a)))
191 + || account.belongs?.length && account.belongs.map(u => getAccount(u, false)).every(a => a && allDisabled(a))) // every() returns true on empty arrays
192 }
193
194 export function accountCanLoginAdmin(account: Account) {