Commit graph

31 commits

Author SHA1 Message Date
Benjamin Neff
536c96f217
Escape mentions before parsing message with markdown
Usernames that contained underscores were parsed by markdown first. This
broke the diaspora IDs and also added weird html at places where it
wasn't needed. Escaping them before sending the message through the
markdown parser fixes this issue.

As underscores are the only allowed character that can be used for
markdown that is also allowed inside a diaspora ID, this escaping can be
kept pretty simple.

This only fixes it for the mobile UI at the moment, for the desktop UI
it's probably better to fix it in markdown-it.

Related to #7975
2022-10-06 00:45:50 +02:00
Benjamin Neff
5669ba6b48
Merge branch 'next-minor' into develop 2022-07-16 04:44:59 +02:00
Benjamin Neff
dd3bc39c97
Render markdown to html for notifications 2022-07-16 04:34:07 +02:00
Benjamin Neff
750186319e
Merge branch 'next-minor' into develop 2021-09-18 19:24:20 +02:00
Thorsten Claus
8f9ac33649
Using shared markdown options for plain text
fixes #7960
closes #8277
2021-09-18 19:22:27 +02:00
Thorsten Claus
c71caa5cb8
#7960 Add support for Markdown footnote syntax in Mobile view
Splitting stripdown and markdownify options, because the footnote option seems to let the Redcarpet::Render::StripDown function crash
2021-09-18 19:19:02 +02:00
Benjamin Neff
4139ae2549
Merge branch 'next-minor' into develop 2020-02-12 00:13:19 +01:00
Dennis Schubert
35da56109f
Create a dup string from the return value of .truncate.
Due to a bug in Rails, .truncate returns a frozen string if the string actually changed, but not if there are no changes. This leads to inconsistent behaviour, and broken tests.

This was fixed upstream, see https://github.com/rails/rails/pull/36109, but the fix did not make it into 5.2.x, so we have to work around for the time being.
2020-02-11 23:53:14 +01:00
Benjamin Neff
9171f6b5ef
Revert "Revert "Bump twitter-text""
Bump twitter-text on develop branch again

This reverts commit 15ff67499b.
2018-04-12 04:01:52 +02:00
Benjamin Neff
15ff67499b
Revert "Bump twitter-text"
This adds a new dependency (`libidn11-dev` on debian, I'm not sure about
other distros).

This reverts commit 070e4caa57.
2018-04-12 04:00:41 +02:00
Benjamin Neff
070e4caa57
Bump twitter-text 2018-04-12 02:40:23 +02:00
Benjamin Neff
70410d1691
Ignore invalid diaspora:// links
Fixes #7651

closes #7652
2017-10-27 02:26:52 +02:00
Benjamin Neff
5f5d8c5e13
Replace diaspora:// links in the text 2017-09-28 23:04:35 +02:00
Benjamin Neff
e82690963d
Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
Benjamin Neff
0e89d60117
Use name of mentioned person in plain text 2017-01-29 03:06:26 +01:00
cmrd Senya
33ad411bbd
Mentions in comments backend changes 2016-11-28 15:56:56 +02:00
Benjamin Neff
df9874b73a remove raw_message
This was only an alias for "text", and "raw_message" is also not used
for federation anymore, so we can drop it.
2016-07-17 01:40:00 +02:00
Senya
0c177aaddf the special case is not required anymore
fix #5678
2016-04-19 08:28:47 +03:00
Jonne Haß
6c71d9f257 Only strip text direction markers around hashtags for now
Fixes #6067
2015-06-06 15:23:12 +02:00
Steffen van Bergerem
1b77258d0e Set default for post title truncation to 70 characters
closes #6022
2015-06-02 12:14:35 +02:00
Benjamin Neff
a863f3ebb2 encode unencoded urls and normalize IDN urls 2015-04-23 00:24:53 +02:00
flaburgan
5dc8642a99 Strip markdown from the heading of a post. Impact notifications, email subjects, SPV <title>, the Atom feed... 2015-03-04 19:30:00 +01:00
Jonne Haß
6a5a407e49 Strip Unicode format characters prior post processing 2015-02-17 23:29:05 +01:00
Jonne Haß
74a6f42501 Bye opengraph_parser, hi open_graph_reader
opengraph_parser is basically unmainted, issues are ignored
or deliberately closed without fixing. It pollutes the global
namespace and has no verification of correctness.

The opengraph gem has basically the same issues, not really maintained,
unreleased patches on master since over a year, not really smart either.

So I created my own version and while at it, why not strive try to be
complete and robust, although it's still a work in progress.

This also improves general URL detection by parsing them
from the message after stripping markdown.

An additional dependency was added to support
fetching sites that require cookies to work at all.
For the same reason Faraday's default redirect limit was
bumped.
2014-12-08 02:01:31 +01:00
Dennis Schubert
6808150920 Method calling convention and doc improvements
... and a stealth-commit of an already introduced bug prevention system.
;)
2014-11-09 07:20:30 -08:00
Dennis Schubert
fd63fca7d5 Add Camo to MessageRenderer#markdownified
for mobile views
2014-11-09 07:29:36 +01:00
Dennis Schubert
cca0c9eec4 Some refactorings, safer regex 2014-11-08 23:12:45 +01:00
Dennis Schubert
92cd4e6b78 Use camo for Markdown images
just a quick proof of concept
2014-11-08 05:14:18 +01:00
Augier
2ce98b49d7 Fix issue #4416
Conflicts:
	spec/helpers/notifier_helper_spec.rb
2014-10-16 23:27:48 +02:00
Jonne Haß
d6d65cd0fd apply rails 4 todos and fix specs after rebase 2014-08-23 16:47:57 +02:00
Jonne Haß
8280556a47 Introduce message renderer
This new class replaces all existing server side message
rendering helpers and is the new global entry point for such
needs. All models with relevant fields now expose an instance
of MessageRenderer for those. MessageRenderer acts as
gateway between the existing processing solutions for markdown,
mentions and tags and provides a very flexible interface for
all output needs. This makes the API to obtain a message
in a certain format clear. As a result of centralizing the
processing a lot of duplication is eliminated. Centralizing
the message processing also makes it clear where to change
its behaviour, add new representations and what options
are already available.
2014-03-15 17:16:17 +01:00