commit 3032361
default
·
2024-10-19 19:22:52 +0000 UTC
parent 56d5de2
Also import lists.csv.
M
data.c
+3,
-0
1@@ -2004,6 +2004,9 @@ xs_val *list_maint(snac *user, const char *list, int op)
2 while (xs_list_next(lol, &v, &c)) {
3 if (strcmp(xs_list_get(v, 1), list) == 0) {
4 add = 0;
5+
6+ l = xs_dup(xs_list_get(v, 0));
7+
8 break;
9 }
10 }
M
utils.c
+20,
-0
1@@ -766,6 +766,26 @@ void import_csv(snac *user)
2 xs *l = xs_strip_i(xs_readline(f));
3
4 if (*l) {
5+ xs *l2 = xs_split(l, ",");
6+ const char *lname = xs_list_get(l2, 0);
7+ const char *acct = xs_list_get(l2, 1);
8+
9+ if (lname && acct) {
10+ /* create the list */
11+ xs *list_id = list_maint(user, lname, 1);
12+
13+ xs *url = NULL;
14+ xs *uid = NULL;
15+
16+ if (valid_status(webfinger_request(acct, &url, &uid))) {
17+ xs *actor_md5 = xs_md5_hex(url, strlen(url));
18+
19+ list_content(user, list_id, actor_md5, 1);
20+ snac_log(user, xs_fmt("Added %s to list %s", url, lname));
21+ }
22+ else
23+ snac_log(user, xs_fmt("Webfinger error while adding %s to list %s", acct, lname));
24+ }
25 }
26 }
27