Commit Graph

121 Commits

Author SHA1 Message Date
rinpatch 059dd6f681 Ignore HTML characters in formatter.ex 2018-12-18 21:38:15 +03:00
raeno a300336459 Merge branch 'develop' into oembed_provider 2018-12-18 14:59:32 +01:00
Maksim Pechnikov bc6262d250 fixed typo 2018-12-14 21:21:37 +03:00
Maksim Pechnikov baead4ea4b fix markdown formatting 2018-12-14 16:03:58 +03:00
raeno b5de7c4c4d Remove oembed for now, will submit it in another MR. Fix warnings 2018-12-13 22:34:15 +01:00
raeno 8902942128 WIP. Implement oembed route and handle both json/xml for "Note" type activity 2018-12-13 22:17:53 +01:00
href 7214d57463
Extended nicknames: allow dashes. 2018-12-12 21:48:54 +01:00
href 7d9ddbe689
Allow underscores in usernames.
Fixes #429.
2018-12-12 18:57:33 +01:00
Vald 3ccfe226c0 added data attrs for user and tag 2018-12-06 01:05:41 +05:30
lain 4c918392c6 Fix most User tests. 2018-11-18 21:40:52 +01:00
href 5bb88fd174
Runtime configuration
Related to #85

Everything should now be configured at runtime, with the exception of
the `Pleroma.HTML` scrubbers (the scrubbers used can be
changed at runtime, but their configuration is compile-time) because
it's building a module with a macro.
2018-11-06 19:41:15 +01:00
href 763fc7b44f
Runtime configured emojis
The changes are a bit heavy since the emojis were loaded into module
attributes from filesystem.

This introduces a GenServer using an ETS table to cache in memory the
emojis, and allows a runtime-reload with `Pleroma.Emoji.reload()`.
2018-11-05 13:24:00 +01:00
scarlett ae5beb7b64 Make finmoji optional 2018-10-25 17:58:46 +01:00
kaniini ad3181895c Merge branch 'bugfix/html-scrub-schemes' into 'develop'
lib/pleroma/html.ex: Fix scheme lists

See merge request pleroma/pleroma!377
2018-10-18 14:36:40 +00:00
Haelwenn (lanodan) Monnier 2154c5dcd8
lib/pleroma/html.ex: Use macros for valid_schemes, change config for schemes 2018-10-18 07:58:15 +02:00
William Pitcock 582dbe5c8d formatter: fix matching osada users 2018-10-17 19:15:20 +00:00
William Pitcock 52b05137c5 formatter: use Pleroma.HTML module instead of HtmlSanitizeEx directly 2018-10-05 20:49:34 +00:00
William Pitcock b1be9415ef Revert "Merge branch 'revert-a26d5e6b' into 'develop'"
This reverts commit d31bbb1cfe, reversing
changes made to 340ab3cb90.
2018-10-05 20:49:34 +00:00
Haelwenn (lanodan) Monnier a3cffd3566
formatter: Stop using phoenix HTML and format it ourselves
* Pheonix has an extra scheme whitelist conflicting with ours
* Pheonix doesn’t seems to do URL encoding, just HTML encoding

Closes: https://git.pleroma.social/pleroma/pleroma/issues/307
2018-09-28 17:32:27 +02:00
William Pitcock ac486fc59b everywhere: use Pleroma.HTML module instead of HtmlSanitizeEx directly 2018-09-10 00:14:47 +00:00
kaniini 7ca2a2ddea Merge branch 'nil-bio-emojis' into 'develop'
add nil clause for Formatter.get_emoji/1 to return an empty result

Closes #274

See merge request pleroma/pleroma!315
2018-09-03 05:54:11 +00:00
Thurloat 4257f784bc sloop around get_emoji/1 to check is_binary and have a fallthrough
default that returns empty
2018-09-02 20:44:37 -03:00
William Pitcock 834515fb51 formatter: don't add XSS emoji 2018-09-02 00:04:09 +00:00
Thurloat a9c0f395cb add nil clause for Formatter.get_emoji/1 to return an empty result 2018-08-31 14:29:23 -03:00
lambda 58539e1357 Revert "Merge branch 'feature/rich-text' into 'develop'"
This reverts merge request !309
2018-08-31 09:51:20 +00:00
William Pitcock 6aa65b68b8 common api: add support for formatting messages outside of twitter-style plain text 2018-08-31 03:13:59 +00:00
William Pitcock 3e10d13909 formatter: adjust regexp captures to match local users with single character nicknames (closes #163) 2018-08-24 18:22:47 +00:00
kaniini 183ccd1812 Merge branch 'dev-lanodan-url-regex' into 'develop'
lib/pleroma/formatter.ex: Fix URL regex

Closes #127

See merge request pleroma/pleroma!69
2018-08-16 15:41:16 +00:00
William Pitcock 0ee29994a5 formatter: preserve case of hashtags
when generating hashtag links, we used the casefolded version that we use in
the link URLs, instead of the original version.

accordingly, adjust the formatter to use the original text for the links, while
keeping the casefolded version for the URLs.
2018-08-05 00:37:38 +00:00
Haelwenn (lanodan) Monnier d5091c3175
Allow additionnal schemes in the config 2018-08-01 02:52:42 +02:00
Haelwenn (lanodan) Monnier 3623504e5d
[Pleroma.Formatter]: Add support for non-HTTP schemes in URIs
The call to the regex in add_links is there just to be sure it’s a legal URI, it can be removed if you want to get more performance.

The URI Schemes list is sorted, but with http(s) at the start (in case it might make it faster for common links).

Closes: https://git.pleroma.social/pleroma/pleroma/issues/127
2018-07-30 22:01:48 +02:00
Jorty 748fff6544 Fix auto-shortcode emoji
Emoji were broken due to `Pleroma.Formatter` not knowing about the
auto-shortcode emoji. This moves that logic from
`Pleroma.Web.TwitterAPI.UtilController` to `Pleroma.Formatter`.

Additionally, it's now possible to specify multiple shortcode globs, and
the default globs were changed to `["/emoji/custom/**/*.png"]`, since
that's in the .gitignore and the files there would have to be shortcode
emoji anyway.
2018-06-30 21:31:08 -04:00
William Pitcock d7eb2e1b65 run mix format 2018-05-27 13:06:38 +00:00
William Pitcock a8df7fc690 formatter: use class='mention' on links to user profiles
helps mastodon frontend and apps have better context:
https://mastodon.social/users/Gargron/statuses/100101267352899379
2018-05-27 12:56:24 +00:00
Thog 6f39ecc41b
Support Undo like activities (Fix #139) 2018-05-19 22:14:15 +02:00
lain df95118c81 Fix linking problem. 2018-05-19 11:27:14 +02:00
lain 0574df273c Small cleanup. 2018-04-22 10:01:10 +02:00
lain 0c221943ef Formatter: Use proper escaping for links. 2018-04-21 18:27:31 +02:00
lain 60f92e406c Accept port number in urls. 2018-04-06 16:35:54 +02:00
lain 81600c94f4 Handle + in links. 2018-04-04 11:29:03 +02:00
lain 806550c921 Use user url in mention if we have it. 2018-04-03 18:32:46 +02:00
lain 4afbef39f4 Format the code. 2018-03-30 15:01:53 +02:00
lain df8fc72491 Don't go through all available emoji.
object carry their emoji information.
2018-03-28 09:56:32 +02:00
Francis Dinh 61692c7efa Include the '#' symbol into the link itself 2018-03-27 02:00:04 -04:00
lain eb7ce61ca5 Fix hashtags. 2018-03-24 11:03:10 +01:00
lain fbe9aa3506 Strip html from emoji stuff. 2018-03-23 19:52:08 +01:00
eal ab8b9ababa Split emoji to default and custom. 2018-01-31 16:29:22 +02:00
lambda 35ac549a99 Merge branch 'media-proxy' into 'develop'
Media proxy

See merge request pleroma/pleroma!34
2017-12-20 14:22:24 +00:00
Lain Iwakura f1f79c0dca Fix timelines in subway tooter. 2017-12-19 16:15:07 +01:00
Lain Iwakura 47887ac848 MastoAPI: Fix always-sensitive bugs. 2017-12-18 16:56:03 +01:00
href f909aec050
proxy emojis
(i fix emojos better than gargon but sshhhhh)
2017-12-12 12:30:24 +01:00
eal a3e68f0233 Allow parentheses in links. 2017-12-07 21:38:31 +02:00
eal bf91e5659f Fix HTML escape breaking some links. 2017-12-07 21:36:06 +02:00
eal f53cdabcdf Add #nsfw tag if sensitive content bit is set 2017-11-18 16:30:18 +02:00
lambda be67db5547 Merge branch 'mastodon-emoji-endpoint' into 'develop'
Add mastodon API endpoint for custom emoji.

See merge request pleroma/pleroma!8
2017-11-07 20:01:15 +00:00
eal c6210183e1 Add mastodon API endpoint for custom emoji. 2017-11-07 21:55:01 +02:00
Roger Braun 7da978f3f5 Linkify fixes. 2017-11-07 12:06:37 +01:00
eal fe7804e42d Add an API endpoint for emoji. 2017-10-19 22:51:56 +03:00
Roger Braun fb46d6fbc4 Prefer post-specific emoji. 2017-09-17 13:24:52 +02:00
Roger Braun 7c82b82197 Make emoji configurable in files. 2017-09-16 16:49:46 +02:00
Roger Braun 959e993c7d Apply incoming custom emoji. 2017-09-16 16:40:20 +02:00
Roger Braun 884006a9e9 Federate emoji out. 2017-09-16 16:14:23 +02:00
Roger Braun 79aeb219d8 Small emoji refactor. 2017-09-16 15:47:45 +02:00
lambadalambda 8004ee8ccf Merge branch 'patch-1' into 'develop'
Fix finmoji title attribute.

See merge request !23
2017-08-18 05:33:42 -04:00
Roger Braun 2ab1d915e3 Use unicode regex in mentions and links. 2017-08-14 17:56:45 +02:00
エーロ 6c70980bff Fix finmoji title attribute. 2017-07-09 11:00:02 -04:00
Roger Braun 66b4fee80e Add finmoji. 2017-06-19 17:51:43 +02:00
Roger Braun 6cac8e3c8b Downcase tags coming in through the TwAPI. 2017-06-18 19:04:46 +02:00
Roger Braun a9bfbcae80 Slightly better html link regex. 2017-06-18 13:29:30 +02:00
Roger Braun 1af9c77736 Move mention parsing to Formatter module. 2017-06-14 13:58:56 +02:00
Roger Braun dcfd494e97 Add Formatter. 2017-05-17 18:00:09 +02:00