Use exact Users.name for current task lookup and auto-load tasks
This commit is contained in:
@@ -447,8 +447,18 @@ app.get('/api/tasks/users', async (c) => {
|
||||
|
||||
try {
|
||||
const me = pb.authStore.model;
|
||||
let meRecord: any = me;
|
||||
let users: any[] = [];
|
||||
let warning = '';
|
||||
if (me?.id) {
|
||||
try {
|
||||
meRecord = await pb.collection(PB_AUTH_COLLECTION).getOne(String(me.id), {
|
||||
fields: 'id,email,name,username',
|
||||
});
|
||||
} catch {
|
||||
meRecord = me;
|
||||
}
|
||||
}
|
||||
try {
|
||||
users = await pb.collection(PB_AUTH_COLLECTION).getFullList({
|
||||
sort: 'email',
|
||||
@@ -456,20 +466,22 @@ app.get('/api/tasks/users', async (c) => {
|
||||
});
|
||||
} catch (listErr) {
|
||||
warning = 'Users list is restricted by PocketBase rules; showing current user only.';
|
||||
users = me ? [me] : [];
|
||||
users = meRecord ? [meRecord] : [];
|
||||
}
|
||||
|
||||
return c.json({
|
||||
success: true,
|
||||
me: {
|
||||
id: me?.id || '',
|
||||
email: me?.email || '',
|
||||
name: (me?.name || me?.username || me?.email || 'Me') as string,
|
||||
id: meRecord?.id || '',
|
||||
email: meRecord?.email || '',
|
||||
name: (meRecord?.name || meRecord?.username || meRecord?.email || 'Me') as string,
|
||||
lookupName: String(meRecord?.name || '').trim(),
|
||||
},
|
||||
users: users.map((user: any) => ({
|
||||
id: user.id,
|
||||
email: user.email || '',
|
||||
name: user.name || user.username || user.email || user.id,
|
||||
lookupName: String(user.name || '').trim(),
|
||||
})),
|
||||
warning: warning || undefined,
|
||||
});
|
||||
@@ -495,7 +507,17 @@ app.get('/api/tasks/list', async (c) => {
|
||||
try {
|
||||
const me = pb.authStore.model;
|
||||
const meId = String(me?.id || '').trim();
|
||||
const meName = String(me?.name || me?.username || me?.email || '').trim();
|
||||
let meRecord: any = me;
|
||||
if (meId) {
|
||||
try {
|
||||
meRecord = await pb.collection(PB_AUTH_COLLECTION).getOne(meId, {
|
||||
fields: 'id,email,name,username',
|
||||
});
|
||||
} catch {
|
||||
meRecord = me;
|
||||
}
|
||||
}
|
||||
const meName = String(meRecord?.name || '').trim();
|
||||
const requestedUserName = String(c.req.query('userName') || '').trim();
|
||||
const requestedUserId = String(c.req.query('userId') || '').trim();
|
||||
const targetUserName = requestedUserName || meName;
|
||||
|
||||
Reference in New Issue
Block a user