Commit graph

459 commits

Author SHA1 Message Date
default
770fc331fd Use an md5 instead of a fixed file name in avatars and headers. 2023-11-01 18:54:21 +01:00
default
85a9ebc471 Added web UI for setting the 'private' flag. 2023-10-16 18:59:41 +02:00
default
4676f8ce13 The HTML user page does not show an error, only the empty header. 2023-10-08 19:27:07 +02:00
default
8524ace23f Hide posts from the public web for accounts with 'private' == true. 2023-10-08 00:06:37 +02:00
default
b1868d85bb New function encode_html_strict(). 2023-10-04 18:19:38 +02:00
default
5278e89142 Added more calls to xs_match(). 2023-09-21 21:35:34 +02:00
default
749dbef349 Used xs_match() in some places. 2023-09-21 21:25:45 +02:00
default
f8c62fe210 Pinned posts are never purged. 2023-09-18 22:52:27 +02:00
default
f556cb5c7d Show metadata in the public HTML page. 2023-09-18 11:49:27 +02:00
default
5a3c7cf985 Added web UI to store profile metadata (as key/value pairs). 2023-09-18 11:13:30 +02:00
default
d32141eb22 Process Follow Group and Unfollow Group buttons. 2023-09-06 13:58:55 +02:00
default
7eef1b4b5e Added new buttons to Follow/Unfollow Groups. 2023-09-06 13:50:02 +02:00
default
442ba99ada Minor tweak to avoid possible undefined behaviour. 2023-08-29 19:38:53 +02:00
default
29896e2ac6 Renamed label 'Older entries...' back to 'More...'. 2023-08-28 07:59:33 +02:00
default
5518bb509b In HTML images, move the loading=lazy BEFORE the src attribute.
This may (or may not, not completely sure) avoid this Firefox bug:

https://bugzilla.mozilla.org/show_bug.cgi?id=1647077
2023-08-24 06:52:42 +02:00
default
2f8e4645b1 Only show the 'audience' field in the 'Page' post. 2023-08-23 09:47:05 +02:00
default
505084bab7 Added some support for 'Article' object types. 2023-08-23 09:44:46 +02:00
default
b9f4bea0c9 Only use a Link as an attachment if there are no other. 2023-08-19 22:05:12 +02:00
default
31fff8bf19 Show current vote count on mouseover. 2023-08-19 17:16:30 +02:00
default
dae2e406d6 history_add() now creates an etag. 2023-08-19 09:59:58 +02:00
default
5c7b26bcdc static_get() and history_get() both share the same code. 2023-08-19 09:52:04 +02:00
default
5de1a9ce0c Rewritten history_get() prototype to match static_get(). 2023-08-19 09:31:13 +02:00
default
6ede6497ad Convert 'Link' attachments that have a media extension to something more useful. 2023-08-17 17:38:39 +02:00
default
8b28a6894f Header banners can now be uploaded. 2023-08-14 18:33:44 +02:00
default
8c87b6894e Fixed some warning. 2023-08-14 18:04:27 +02:00
default
3f7e3c1d81 Unify the instance description text. 2023-08-14 18:02:20 +02:00
default
16c14060a8 Discard avatar uploads that are not images. 2023-08-14 15:12:09 +02:00
default
2696f62dc5 If the user has a header image, show it the public page. 2023-08-14 15:00:46 +02:00
default
ab41e651d0 Don't show children in the instance timeline. 2023-08-14 11:48:05 +02:00
default
86571f37bb The instance URL can now show a timeline. 2023-08-14 11:24:41 +02:00
default
64111f85bd Some work towards an instance timeline. 2023-08-14 10:08:19 +02:00
default
d291bb16ca Allow a NULL snac struct in html_entry(). 2023-08-12 14:03:44 +02:00
default
cac1c6febd Rewritten actor_get() to not depend on a user. 2023-08-12 11:23:01 +02:00
default
499697258d Rewritten is_msg_public() to not depend on a user. 2023-08-12 09:43:01 +02:00
default
d305f899eb Set the default poll end time to 1 hour. 2023-08-11 12:38:10 +02:00
default
4c6f1a79e4 Added web UI for limit/unlimit actions. 2023-08-10 19:18:24 +02:00
default
18976dc6b8 Revert "Implemented hide_followers_only."
Posts from groups give false positives from hide_followers_only,
so the full idea is discarded.

This reverts commit b3797d2416.
2023-08-09 14:43:27 +02:00
default
cdb201cc04 Revert "Added web interface for hide_followers_only."
This reverts commit 84e8cb419b.
2023-08-09 14:42:38 +02:00
default
84e8cb419b Added web interface for hide_followers_only. 2023-08-09 14:34:22 +02:00
default
b3797d2416 Implemented hide_followers_only. 2023-08-09 14:29:09 +02:00
default
3e5bb109d1 Renamed json dump functions to new xs spec. 2023-08-08 19:29:34 +02:00
default
6f2e407692 Added hints to web UI buttons. 2023-08-07 06:06:04 +02:00
default
f5a3dbf8d6 Use xs_json_dump_pp() wherever possible. 2023-08-03 09:02:08 +02:00
default
a3226b5b7a Don't redir to 'snac-posts', now that the top page is smaller. 2023-08-02 08:47:57 +02:00
default
0f8c0cd694 Updated comment in headers. 2023-07-28 11:34:18 +02:00
Yonle
b2a274df76 html.c: Fix non-list tag object for external custom emoji
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-26 06:10:08 +00:00
default
ede2a38b2b If an image has no description, try the post 'name' field. 2023-07-25 12:36:04 +02:00
default
085c5a545a Simplified attachment iteration in HTML rendering. 2023-07-25 12:31:42 +02:00
default
e6baeadf5f Allow the 'attachment' field of a post to be single object instead of a list.
It seems that Gotosocial does this.
2023-07-25 12:01:42 +02:00
default
2ee74c9a6a Added a 'Back to top' link at the end of the page. 2023-07-24 20:51:24 +02:00
Yonle
3c1dc419ea html.c: Put "User Settings" outside of "Operations".
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-24 23:13:13 +07:00
Yonle
25bb8f0dd2 Rollback to 86f507410b for some reasons.
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-24 22:56:18 +07:00
Yonle
e776bf7e2c html.c: Rollback to e9adaa1f7a, Put "User Settings..." outside of "Operations..."'s <details> element
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-24 20:42:26 +07:00
Yonle
68d03d6d51 html.c: No need to redirect to #snac-posts again.
Form has been minimized with <details> since commit c409d2e,
So there is no need to redirect user to user/admin#snac-posts again.

Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-24 20:15:40 +07:00
Yonle
75e061a9f7 html.c & httpd.c: Fix hardlink.
Some people may still want to post in the web client with such different
way, Such as posting from Yggdrasil / SSH port forwarder, and so on.

This commit gives the workaround for that purpose, However things will
go messed up when current path were ends with / (Like: user/, admin/).

But overall, If user just uses it like normal, Then things will just
worked well as expected.

Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-24 19:42:20 +07:00
default
f67ac2517c Moved user settings to its own page. 2023-07-24 13:31:13 +02:00
default
4823f20085 If a message has an audience, its URL is shown after the content.
Messages coming from channels, communities (Lemmy) or magazines (kbin.social),
have this field set with the "parent" url.
2023-07-19 12:42:32 +02:00
default
7950783d41 Merge branch 'master' of grunfink-codeberg:grunfink/snac2 2023-07-19 11:58:22 +02:00
Yonle
7e273a73eb html.c: RSS: fix.
Feed title, and description is not properly rendered.
So here goes a fix that instead of using encode_html TWICE,

We use sanitize() for feed description instead.

Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-18 23:34:29 +07:00
Yonle
d3e0f7a84b html.c: custom emoji <img>: Resize height to 2em, and put veritcal-align to middle.
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-18 21:16:22 +07:00
default
2700567fca Avoid too deep nesting of html_entry(). 2023-07-18 09:59:16 +02:00
Yonle
fe0d820795 html.c / UX: Give admin page more space
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-17 18:33:15 +07:00
Yonle
98c72db17c html.c: *prev_src at edit: Just use encode_html.
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-15 02:06:10 +07:00
Yonle
1dc61ace13 html.c: Probably put placeholder on certain input and textboxes
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-15 00:42:52 +07:00
default
3e21aafb26 Fixed crash on empty static and history objects. 2023-07-14 14:59:50 +02:00
Yonle
77f5b51126 html.c: Don't let public get into timeline.html_
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-14 11:59:31 +07:00
default
4ab22b2c14 If a Page has an image, show it as an attachment. 2023-07-13 23:41:22 +02:00
default
64d3bb7e33 Fixed Link HTML. 2023-07-13 22:32:06 +02:00
default
c4bb189d99 Added support for lemmy-style "Link" attachments. 2023-07-13 22:10:29 +02:00
default
2caeb550b9 Added support for the 'Page' ActivityPub object.
So that you can follow and interact with lemmy channels.
2023-07-13 21:01:15 +02:00
default
76e1608069 Fixed memory leaks. 2023-07-13 10:49:49 +02:00
Yonle
2d584d219a html.c: Also encode html characters in admin page 2023-07-12 09:19:04 +07:00
default
a0e813db0a Fixed HTML re-encoding in the user bio. 2023-07-11 20:34:02 +02:00
default
158b360181 When sanitize() is called, encode_html() is no longer needed. 2023-07-11 20:28:24 +02:00
default
28a91ab732 Added new CSS classes snac-embedded-video and snac-embedded-audio. 2023-07-11 20:16:44 +02:00
default
a18c719298 Fixed crash. 2023-07-11 19:58:55 +02:00
default
1c5a689457 Fixed some memory leaks. 2023-07-11 19:45:58 +02:00
Yonle
63741cb66a html.c: Escape XML characters & View unknown type attachment link
Signed-off-by: Yonle <yonle@lecturify.net>
2023-07-11 23:08:01 +07:00
default
0dd570dcad Pinned posts also appear in the public timeline. 2023-07-06 08:48:06 +02:00
default
eef3c419dd Posts can be pinned/unpinned from the web interface. 2023-07-05 14:06:21 +02:00
default
57ba1d575f Pinned posts appear at the top of the public timeline. 2023-07-05 13:51:20 +02:00
default
38ee86f81e Also call process_tags() when in the public timeline's bio. 2023-07-04 17:15:38 +02:00
default
8a392233d2 The content warning check and description is propagated from the replied message. 2023-07-04 15:02:04 +02:00
default
339fe5edc5 Also fill the sensitive content fields in the edit dialog. 2023-07-04 14:55:24 +02:00
default
b55dbf13e4 The sensitive content can have a description. 2023-07-04 14:50:09 +02:00
default
78b468f013 More unfollow notification tweaks. 2023-07-04 14:23:12 +02:00
default
7db4de872d Also show unfollows in the notification area. 2023-07-04 14:07:33 +02:00
default
d343b40ee5 Added HTTP caching to static data. 2023-07-02 11:11:01 +02:00
default
b5495ab40b Fixed footer link. 2023-07-01 19:22:42 +02:00
default
c423cc7425 Added CSS classes to notification and people pages. 2023-07-01 19:20:20 +02:00
default
e64471b7e4 Added class snac-post-header to the people list. 2023-06-29 18:10:59 +02:00
default
f4c7f4b9d7 Added a new snac-post-header CSS class. 2023-06-29 18:06:42 +02:00
default
4b1f060be8 Add a pin emoji to pinned posts. 2023-06-28 21:19:31 +02:00
default
bd81708d56 New CSS class snac-post-header, that wraps the avatar + name + link of a post. 2023-06-28 11:04:07 +02:00
default
e9711f94d0 Skip leading zeros en poll closing time. 2023-06-28 10:50:17 +02:00
default
3047f6220b For polls, shows a 'Closes in d:h:m:s' string. 2023-06-27 17:08:09 +02:00
default
1c6cc98f07 Also break the og:description in the first period in the bio. 2023-06-26 16:00:23 +02:00
default
983f137108 Added autocomplete=off to all forms. 2023-06-26 15:44:08 +02:00
default
b2598ca307 If the user style.css does not exist, return the server-wide version. 2023-06-26 08:54:09 +02:00
default
2f3ed55790 The WWW-Authenticate real also includes the user. 2023-06-24 08:29:29 +02:00
Haijo7
553ef7b40c added titles to images and emojis 2023-06-16 15:31:40 +02:00
default
5be2239467 Quick fix to "Script self-injection in edit box".
In the 'Edit...' box, the sourceContent (which was written by a user)
has its < replaced with &lt; . This issue does not propagate to the
public timeline nor to the recipients of the post.

Reference: https://codeberg.org/grunfink/snac2/issues/53
2023-06-16 09:25:32 +02:00
default
ded12dcf52 Fixed look of users without creationg date in the people page. 2023-06-15 18:00:09 +02:00
default
478cb2cf15 Use xs_stock_* values wherever possible. 2023-06-15 17:51:24 +02:00
default
262de20aa8 Fixed voting / replying confusion. 2023-06-15 17:24:44 +02:00
default
aa7ed9bd9b Added Web UI to set the account 'bot' flag. 2023-06-11 21:06:08 +02:00
default
d9d4ffbc61 Hidden conversations are not rendered instead of given a 'display: none'. 2023-06-11 20:34:26 +02:00
default
e22da86ccf Minor tweak to snac-poll-form. 2023-06-07 18:44:33 +02:00
default
22565f5c40 New CSS classes snac-poll-form and snac-poll-result. 2023-06-07 18:37:19 +02:00
Haijo7
21bb4f3325
Added icon for bots 2023-06-02 18:12:07 +02:00
default
84152d67f5 Fixed bug in notify() (the poll id was not set). 2023-06-02 10:58:49 +02:00
default
2e19c193a0 Use a select instead of a checkbox for setting multiple-choice polls. 2023-06-02 10:48:05 +02:00
grunfink
99588a8a5c Merge pull request 'fixed typo in string "people that follows you"' (#38) from Haijo7/snac2:master into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/38
2023-06-02 08:19:01 +00:00
Haijo7
2a8d34a833 open image in new tab when clicked, add css class for attachments 2023-06-02 09:43:49 +02:00
Haijo7
f903d0769b
fixed typo in string "people that follows you" 2023-06-01 17:44:02 +02:00
default
47cb5f0b28 Add a check Unicode char to mark those polls that were voted by the user. 2023-06-01 17:28:38 +02:00
default
1023ee88f5 Fixed typo. 2023-06-01 09:32:40 +02:00
default
fac52ff262 Show the user@host identified next to the user avatar (contributed by Haijo7). 2023-06-01 09:16:17 +02:00
default
5aa9043668 Don't even call html_entry() for children with "name". 2023-05-31 06:41:06 +02:00
default
60fc87d845 Don't hide replies to polls (that are not votes). 2023-05-31 06:14:14 +02:00
default
f2a91d8d48 Label closed polls correctly in the notification area. 2023-05-30 14:58:41 +02:00
default
42918d44a0 Create polls from the web interface. 2023-05-30 10:34:46 +02:00
default
142b4d6d86 Added a poll pull-down and options (still unused). 2023-05-30 10:01:36 +02:00
default
b98a284f6f Wrap attachments in notes behind a "details". 2023-05-30 09:09:04 +02:00
default
e02beac47e Replaced "Image" with "File". 2023-05-30 09:01:33 +02:00
default
6e6fa934b5 Better poll close checks. 2023-05-30 06:37:09 +02:00
default
27218d06d8 Moved "Closed" poll string to where it belongs. 2023-05-30 06:35:29 +02:00
default
22fea17255 Disallow voting your own polls. 2023-05-29 09:20:25 +02:00
default
654e171b93 New macro ISO_DATE_SPEC. 2023-05-29 09:07:27 +02:00
default
34eb717344 Fixed multiple choice polls. 2023-05-24 13:46:06 +02:00
default
9cdb53de8e Hide the children for polls. 2023-05-24 13:25:13 +02:00
default
6eb0aa105a Show the poll as closed if we already voted for it. 2023-05-24 13:19:40 +02:00
default
5d8e370ec3 More prototype tunnings. 2023-05-24 13:05:43 +02:00
default
07b9fa90b2 Polls can now be voted. 2023-05-24 13:00:52 +02:00
default
67b21a9ecd Show HTML form code for oneOf polls. 2023-05-24 12:12:06 +02:00
default
0d8a040d90 Added some experimental 'Question' posting code. 2023-05-24 11:49:16 +02:00
default
4f0ab18f1c Show a ballot box emoji in the score if the enttry it's a poll. 2023-05-24 10:23:57 +02:00
default
2b6d6d3412 Finished polls are shown. 2023-05-24 10:11:48 +02:00
default
c356379cdd Some prototype tweaks. 2023-05-24 09:47:31 +02:00
default
49362f5404 Convert image links in notes to attachments. 2023-05-21 20:32:23 +02:00
default
ef1db81d1a Updated documentation. 2023-05-17 12:03:35 +02:00
default
ef59df5db2 Fixed bug in drop_dm_from_unknown web processing. 2023-05-17 11:47:11 +02:00
default
b3f2d15d00 Added web interface for drop_dm_from_unknown. 2023-05-17 11:37:23 +02:00
default
83aad1b7a4 Added some comments. 2023-05-17 10:40:44 +02:00
default
970ad7a540 Got rid of xs_encdec.h. 2023-05-17 10:08:57 +02:00
default
6b597ffdb4 Only show the bio in the top of the page for public pages. 2023-05-13 09:35:43 +02:00
default
e2e7bc2d71 Added a source (web, mastoapi, etc) to lastlog_write(). 2023-05-08 09:02:45 +02:00
default
980a8d524f Fixed more warnings. 2023-05-04 09:34:33 +02:00
default
185aac2387 Added -Wextra to C flags. 2023-05-04 09:28:36 +02:00
default
753eadfd17 Added some const here and there. 2023-05-04 09:25:09 +02:00