commit 9bc10da

default  ·  2023-05-17 05:27:08 +0000 UTC
parent e6eb1ad
In mastoapi account search, return local users at the end.
1 files changed,  +24, -24
+24, -24
 1@@ -981,30 +981,6 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path,
 2 
 3                     xs_set_init(&seen);
 4 
 5-                    /* local users */
 6-                    p = ulst;
 7-                    while (xs_list_iter(&p, &v)) {
 8-                        snac user;
 9-
10-                        if (strcmp(v, xs_dict_get(snac1.config, "uid")) == 0)
11-                            continue;
12-
13-                        if (user_open(&user, v)) {
14-                            xs *v2 = xs_tolower_i(xs_dup(v));
15-
16-                            if (xs_startswith(v2, q)) {
17-                                xs *actor = msg_actor(&user);
18-                                xs *acct  = mastoapi_account(actor);
19-
20-                                out = xs_list_append(out, acct);
21-                            }
22-
23-                            xs_set_add(&seen, user.actor);
24-
25-                            user_free(&user);
26-                        }
27-                    }
28-
29                     /* user relations */
30                     xs_list *lsts[] = { wing, wers, NULL };
31                     int n;
32@@ -1033,6 +1009,30 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path,
33                         }
34                     }
35 
36+                    /* local users */
37+                    p = ulst;
38+                    while (xs_list_iter(&p, &v)) {
39+                        snac user;
40+
41+                        if (strcmp(v, xs_dict_get(snac1.config, "uid")) == 0)
42+                            continue;
43+
44+                        if (user_open(&user, v)) {
45+                            xs *v2 = xs_tolower_i(xs_dup(v));
46+
47+                            if (xs_startswith(v2, q)) {
48+                                xs *actor = msg_actor(&user);
49+                                xs *acct  = mastoapi_account(actor);
50+
51+                                out = xs_list_append(out, acct);
52+                            }
53+
54+                            xs_set_add(&seen, user.actor);
55+
56+                            user_free(&user);
57+                        }
58+                    }
59+
60                     xs_set_free(&seen);
61                 }
62             }