diff options
Diffstat (limited to 'data.c')
| -rw-r--r-- | data.c | 16 |
1 files changed, 15 insertions, 1 deletions
| @@ -2491,8 +2491,22 @@ xs_list *content_search(snac *user, const char *regex, | |||
| 2491 | if (xs_is_null(content)) | 2491 | if (xs_is_null(content)) |
| 2492 | continue; | 2492 | continue; |
| 2493 | 2493 | ||
| 2494 | xs *c = xs_dup(content); | ||
| 2495 | |||
| 2496 | /* add alt-texts from attachments */ | ||
| 2497 | const xs_list *atts = xs_dict_get(post, "attachment"); | ||
| 2498 | int tc = 0; | ||
| 2499 | const xs_dict *att; | ||
| 2500 | |||
| 2501 | while (xs_list_next(atts, &att, &tc)) { | ||
| 2502 | const char *name = xs_dict_get(att, "name"); | ||
| 2503 | |||
| 2504 | if (name != NULL) | ||
| 2505 | c = xs_str_cat(c, " ", name); | ||
| 2506 | } | ||
| 2507 | |||
| 2494 | /* strip HTML */ | 2508 | /* strip HTML */ |
| 2495 | xs *c = xs_regex_replace(content, "<[^>]+>", " "); | 2509 | c = xs_regex_replace_i(c, "<[^>]+>", " "); |
| 2496 | c = xs_regex_replace_i(c, " {2,}", " "); | 2510 | c = xs_regex_replace_i(c, " {2,}", " "); |
| 2497 | c = xs_tolower_i(c); | 2511 | c = xs_tolower_i(c); |
| 2498 | 2512 | ||