Commit Graph

134 Commits

Author SHA1 Message Date
Trinity Pointard
f9498828c4 Modify post slug only when it's still drafted
Fix #207
2018-10-11 14:23:23 +02:00
Bat
387efbf3e9 Change default license to CC-BY-SA
Fixes #258
2018-10-06 18:19:45 +01:00
Bat
d8ca1d70b7 Fix CSRF issues
GET routes are not protected against CSRF. This commit changes the needed URLs to
POST and replace simple links with forms.

Thanks @fdb-hiroshima for noticing it!
2018-09-19 18:13:07 +01:00
Bat
0200a7b223 Only send notifications for mentions if the post is not a draft 2018-09-12 17:00:00 +01:00
Bat
b01212f4a6 Make it impossible to view drafts if you are not the author
Even if you got the URL
2018-09-12 16:58:38 +01:00
Bat
8879935925 Add the possibility to save an article as draft 2018-09-10 19:38:19 +01:00
Bat
08cb337df6 Broadcast activities to all known instances
We consider everything posted with Plume public (for the moment at least)
2018-09-09 12:19:11 +01:00
Baptiste Gelez
fe7f87c47f
Merge pull request #205 from lthms/recent_rocket
Update to a more recent rocket and rust toolchain
2018-09-08 19:06:52 +01:00
Thomas Letan
0ef4717a7f deps: Update to a more recent rocket and rust toolchain
With this patch, Plume will be use a more up-to-date revision of
Rocket, that works with nightly-2018-07-17. It may have been able to
make it work with a more recent revision, but it turns out rocket has
introduced several breaking changes so I’d rather fix those.

Besides updating rocket_i18n and rocket_csrf to use the same revision
than Plume, this patch deals with the new implementation of the
Uri<'_> type. It silents a class of warnings, to deal with a change in
rustc which affects diesel. This latter change should be reverted as
soon as diesel releases a new version of its crate.
2018-09-08 15:51:55 +02:00
Bat
0f5f9101b6 Only notify for mention if it is not in a comment
To avoid two similar notifications
2018-09-08 12:53:17 +01:00
Bat
b53a078b49 Edit HTML for old articles without source 2018-09-08 12:05:22 +01:00
Bat
3918bd4501 Edit posts 2018-09-07 18:51:53 +01:00
Bat
413e34ac0e Federate article updating 2018-09-06 22:39:22 +01:00
Bat
7152d714ae Add a source property to posts
To store the Markdown
2018-09-06 20:00:55 +01:00
Bat
5b3eca63e0 Make it possible to tag articles and display them 2018-09-05 21:18:27 +01:00
Bat
bba9a56329 Add author biography at the bottom of the post 2018-09-04 14:55:15 +01:00
Bat
94a386ea2c Add subtitles to articles
Fix #152
2018-09-04 12:26:13 +01:00
Bat
3013eec579 Redesign menu items 2018-09-03 14:59:02 +01:00
Bat
b66e8942a9 Fix the deletion route 2018-09-01 16:46:23 +01:00
Bat
cea548b821 Add a way to delete articles
Fixes #116
2018-09-01 16:28:47 +01:00
Bat
fb2f4e9bcd Take in account instance's default license
Fix #145
2018-07-27 20:31:47 +02:00
Bat
812b76b0de Use the creation date from ActivityPub when fetching remote articles 2018-07-27 00:29:21 +02:00
Bat
d4a8808f00 Fix a bug on article page 2018-07-26 19:08:18 +02:00
Bat
b42030e831 Try to use only "absolute" links to avoid trailing-slash bugs 2018-07-26 19:00:23 +02:00
Bat
58d158238d Use the worker queue to send new articles to other instances 2018-07-26 17:38:22 +02:00
Bat
44172b67d5 Add padding for responses in comments, to let threads appear
Fixes #144
2018-07-25 18:18:41 +02:00
Bat
b95e384ed7 Use the ApRequest guard for routes that need it + Fix a few issues with its impl
Also fixes some Rocket warnings!
2018-07-11 17:30:01 +02:00
Bat
3775d3a9c9 HTML validation + Actually associate messages to errors + Fix inverted behavior on new blog and post form 2018-07-07 22:51:48 +02:00
Bat
5f3afe900f Display errors on invalid forms
It will probably need a bit of styling…
2018-07-06 19:29:36 +02:00
Bat
153400959c Actually validate forms 2018-07-06 11:51:19 +02:00
Bat
c81bb9ec25 Make forms validatable 2018-06-29 14:56:00 +02:00
Bat
68a041711c We can't mix GET and POST (in the comment form)
in_response_to was always null
2018-06-27 00:19:18 +02:00
Trinity Pointard
30e9620d0a Add csrf protection 2018-06-24 18:58:57 +02:00
Bat
68c7aad179 Big repository reorganization
The code is divided in three crates:
- plume-common, for the ActivityPub module, and some common utils
- plume-models, for the models and database-related code
- plume, the app itself

This new organization will allow to test it more easily, but also to create other tools that only reuse a little part of
the code (for instance a Wordpress import tool, that would just use the plume-models crate)
2018-06-23 17:36:11 +01:00
Bat
6a5d806b1d Various federation fixes 2018-06-22 16:17:53 +01:00
Didier Link
b153a9ce2b add an argument in the macro may_fail to have the account linked in the error template 2018-06-22 00:50:06 +02:00
Bat
b2e8d54161 Drop activity_pub::activitypub and activity_pub::ActivityPub and only use the ActivityStream responder 2018-06-21 18:09:18 +01:00
Bat
2217ec0d56 Remove PgConnection when we don't need it
Massive simplification in the ActivityPub module!
2018-06-21 16:31:42 +01:00
Bat
4c211b4308 Remove the routes and the template for the comment form 2018-06-21 15:00:25 +01:00
Bat
7ba6f77e0f Automatically insert mentions in comments
Fix some bug with mentions too

Fix #52
2018-06-21 14:05:35 +01:00
Bat
b0e70a42a9 Merge branch 'master' of github.com:Plume-org/Plume 2018-06-21 11:31:17 +01:00
Bat
e6b8943085 New pattern for comment creation in code
Use the builder design pattern to build a NewComment

Add a function to transform a NewComment into a Create activity

Virtually send this activity to the shared inbox of the instance
2018-06-21 11:28:42 +01:00
Bat
d7b71848fc Save mentions 2018-06-20 21:58:11 +01:00
Bat
e074af57ff Add a Mention model 2018-06-20 19:22:34 +01:00
Bat
4ea071e709 Switch to pulldown-cmark for markdown parsing + Try to parse mentions
It's not working correctly yet for some reason…
2018-06-20 15:29:19 +01:00
Bat
ab7bef1490 Get rid of the legacy activity_pub::object module 2018-06-20 10:01:25 +01:00
Bat
65e819c425 Make it impossible to write in a blog where you are not author
Fix #62
2018-06-20 09:44:56 +01:00
Bat
8ab25b1ca2 Use uri! as much as possible instead of directly writing URLs 2018-06-19 22:20:27 +01:00
Bat
857e1f1d6a Disallow naming an article 'new', or any already used slug
Fix #64

Also fixes a lot of potential bug with articles having the same slugs, but not in the same blog
2018-06-19 20:16:18 +01:00
Bat
51571d6320 may_fail! macro
Returns an error template if an Option is None, else runs the given block
2018-06-18 18:28:28 +01:00
Bat
7e3cdec0b6 Add some to_json functions to models for serialization in templates 2018-06-18 17:34:29 +01:00
Bat
b18aa33c70 Update to the latest version of Rocket, to use rocket_contrib::Template::custom 2018-06-16 18:39:22 +01:00
Bat
4185ba230e Add a link to user profile in comments
And move back {% if %} inside of {% block %}, so they get interpreted.
2018-06-12 21:14:49 +01:00
Trinity Pointard
7d9609671c change post.content and comment.content's types from String to SafeString 2018-06-11 12:22:43 +02:00
Trinity Pointard
8158f19b85 add fallback to url generating 404 2018-06-04 21:57:03 +02:00
Bat
93eb89bc77 Markdown!
Fixes #18
2018-05-24 11:42:45 +01:00
Bat
94beaaca76 Merge branch 'master' of github.com:Plume-org/Plume 2018-05-23 18:56:16 +01:00
Trinity Pointard
a8aeb40b95 add trailing slashes to links where they were missing
Signed-off-by: Trinity Pointard <trinity.pointard@insa-rennes.fr>
2018-05-22 17:35:16 +02:00
Bat
9b98a45f2e Add a button to reshare 2018-05-19 10:57:39 +01:00
Baptiste Gelez
73512a4fdc
Merge pull request #30 from JosephKiranBabu/display-post-author
Display post author and date in the post view
2018-05-19 08:44:39 +01:00
Bat
b55622f2b1 Reorganize use statements 2018-05-19 08:39:59 +01:00
Joseph Nuthalapati
ff50143c1c
Display post author and date in the post view
Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
2018-05-19 10:16:05 +05:30
Bat
4a86af6fc1 Resolve activitystream TODOs 2018-05-18 23:04:30 +01:00
Bat
c779b1c58a WIP: use the activitystreams crate 2018-05-16 19:20:44 +01:00
Bat
5e7d513a7e Make it possible to display remote blogs 2018-05-13 18:00:47 +01:00
Bat
c6b2560eb0 Followers listing
And clean up models functions a bit
2018-05-13 12:53:58 +01:00
Bat
b8aade1e12 Delete likes 2018-05-12 21:56:57 +01:00
Bat
6de9d5b82a Articles listings on blogs and users pages 2018-05-12 14:31:09 +01:00
Bat
a74215ef07 Start an actual design 2018-05-10 21:31:52 +01:00
Bat
ee7dfee3ef Add an endpoint to like posts 2018-05-10 17:38:03 +01:00
Bat
56f4a598e2 Actually redirect when writing a new comment 2018-05-10 14:58:17 +01:00
Bat
a436f2da4b Federate comments 2018-05-10 11:52:56 +01:00
Bat
a3d73cb2c4 Create and display comments 2018-05-10 10:44:57 +01:00
Bat
292f4d6b27 Add actual templates for everything 2018-05-09 20:09:52 +01:00
Bat
c282246bf2 Add an enpoint for viewing articles AP representation 2018-05-04 12:09:08 +01:00
Bat
d587d18cd4 Actually, we don't need to federate a Note
Mastodon supports Article, see 63f0979799/app/lib/activitypub/activity/create.rb (L191)
2018-05-03 22:36:59 +01:00
Bat
b10af9776b Send a Note too when publishing an article
Fixes #3
2018-05-03 20:27:17 +01:00
Bat
22cb286f86 Signing activities
I hope it works correctly…

Fixes #6
2018-05-03 20:11:04 +01:00
Bat
afe98ab1c3 Start refactoring activities 2018-05-02 21:44:03 +01:00
Bat
2f1f6a0295 Broadcast activities to followers 2018-05-01 16:51:49 +01:00
Bat
0c9a1bfc3a Reorganize uses 2018-04-24 10:21:39 +01:00
Bat
656b201244 Pluralize model modules 2018-04-23 16:19:28 +01:00
Bat
9eb1b987b2 Save post author 2018-04-23 15:39:06 +01:00
Bat
e506cd21b7 Post creation 2018-04-23 15:25:39 +01:00