Commit Graph

192 Commits

Author SHA1 Message Date
Bat
b66d4f73ce Reorganize the homepage 2018-09-05 18:03:02 +01:00
Bat
79348e06ff Add a dedicated page for the federated feed 2018-09-05 15:37:49 +01:00
Bat
1496598a45 User feed 2018-09-05 15:21:50 +01:00
Bat
babb3a81f5 Local timeline 2018-09-04 20:56:27 +01:00
Bat
32a4949f25 Update user information if needed
When a remote is displayed, if it has not been updated since at least 24 hours, newer informations are fetched.

Fixes #135
2018-09-03 19:53:20 +01:00
Bat
e2e7d10929 Make it possible to choose an avatar 2018-09-03 13:04:17 +01:00
Bat
772bb350ac Update rocket_csrf to support multipart forms 2018-09-03 10:21:33 +01:00
Bat
99fdb8e680 Media deletion 2018-09-02 22:10:15 +01:00
Bat
f44b6fffa3 Media upload 2018-09-02 21:55:42 +01:00
Bat
97c0b533ab Add Atom feeds for blogs and users 2018-09-01 21:08:26 +01:00
Bat
092ad5b795 Instance about page
Fixes #39
2018-09-01 17:39:40 +01:00
Bat
cea548b821 Add a way to delete articles
Fixes #116
2018-09-01 16:28:47 +01:00
Bat
74ec59e77c Add some configuration options for instance admins 2018-07-27 19:05:36 +02:00
Bat
1e5ad2b086 Add a job pool 2018-07-26 17:32:52 +02:00
Bat
4e07fdbd05 Paginate followers too 2018-07-25 15:50:29 +02:00
Bat
4b0aba62f3 Add pagination for notifications
And correctly close an <a> tag
2018-07-25 15:33:54 +02:00
Bat
18125ab398 Paginate the homepage 2018-07-25 15:20:09 +02:00
Bat
67eb41add1 Add pagination to the blog page
No UI to control it yet
2018-07-20 18:42:35 +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
b008e11fb0 Add validator 2018-06-29 14:22:43 +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
e7e557612e Rewrite User::from_activity to use the activitypub crate instead of raw JSON 2018-06-21 21:30:56 +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
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
dd152f2607 Remove old configuration code 2018-06-19 18:29:34 +01:00
Bat
d00688e526 Admin creation 2018-06-19 16:14:52 +01:00
Bat
54e2cea83b Start a setup script
For now, it checks if the instance is ready, and if it is not starts the actual setup script.

Only the first actual step of the script, checking for native dependencies, is implemented.
2018-06-19 14:08:44 +01:00
Bat
5415b70854 Use the webfinger crate 2018-06-18 22:50:40 +01:00
Bat
58cc35691d Add generic error catchers 2018-06-18 16:59:49 +01:00
Bat
3207aa0e22 Make the UI translatable 2018-06-17 16:26:15 +01:00
Bat
cafb0e2277 Use the rocket_i18n crate 2018-06-17 15:28:44 +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
327768d3fe I18n fairing 2018-06-15 14:55:14 +01:00
Bat
c9b4c40fa1 Add the gettext-rs crate 2018-06-15 14:08:38 +01:00
Bat
7d17751f50 Definitively get rid of the activitystreams crates 2018-06-11 13:30:14 +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
bb1442db8a create new type SafeString to sanitise and store unsafe html 2018-06-11 11:44:17 +02:00
Bat
d8bd9dbfca Add NodeInfo endpoints (fixes #11) 2018-06-10 20:33:42 +01:00
Bat
edbeeef640 Add a dashboard 2018-06-10 18:55:08 +01:00
Bat
78362feffb Use the activitypub crate 2018-06-10 12:13:07 +01:00
Trinity Pointard
3dcd78f205 fix redirection to login in src/routes/user.rs 2018-06-07 10:39:22 +02:00
Trinity Pointard
8158f19b85 add fallback to url generating 404 2018-06-04 21:57:03 +02:00
Trinity Pointard
2fde47d909 add optional login message and callback 2018-06-04 20:21:43 +02:00
Bat
93eb89bc77 Markdown!
Fixes #18
2018-05-24 11:42:45 +01:00
Bat
63eb1a7e98 Add a route to reshare posts 2018-05-19 10:51:10 +01:00
Bat
b55622f2b1 Reorganize use statements 2018-05-19 08:39:59 +01:00
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
a7342f49a0 Reorganize routes
Order them alphabetically
2018-05-13 18:41:49 +01:00
Bat
dfab0290e4 Shared inbox endpoint 2018-05-13 18:39:18 +01:00
Bat
fdc481e384 Use shared inbox when available
But it is not yet stored in the database, so it means never
2018-05-13 15:39:55 +01:00
Bat
b91f567777 Display notifications 2018-05-13 14:35:55 +01:00
Bat
c6b2560eb0 Followers listing
And clean up models functions a bit
2018-05-13 12:53:58 +01:00
Bat
ea08718c23 User profile edition 2018-05-12 16:30:14 +01:00
Bat
d3319493d9 Serve static files 2018-05-10 19:01:16 +01:00
Bat
ee7dfee3ef Add an endpoint to like posts 2018-05-10 17:38:03 +01:00
Bat
a3d73cb2c4 Create and display comments 2018-05-10 10:44:57 +01:00
Bat
3cf6836095 HTTP signature when sending activites 2018-05-04 16:18:00 +01:00
Bat
92af83565e Add an AP followers endpoint for users 2018-05-04 14:13:55 +01:00
Bat
c282246bf2 Add an enpoint for viewing articles AP representation 2018-05-04 12:09:08 +01:00
Bat
ac1a111d7b Make it possible to test the federation locally
And explain how to do it in the README
2018-05-02 13:47:46 +01:00
Bat
5f43f783b6 Use more env vars for config
It will make it easier to test federation
2018-05-02 12:53:42 +01:00
Bat
9fdfb2b25e Follow endpoint 2018-05-01 20:57:30 +01:00
Bat
9a4f60cfe3 Accept follow requests 2018-05-01 19:02:29 +01:00
Bat
03df88e186 WIP: inboxes 2018-05-01 15:00:29 +01:00
Bat
8047df6848 Display remote profiles! 2018-05-01 12:48:19 +01:00
Bat
bf54a7c4ef Add a function to find the ActivityPub representation of an actor with WebFinger 2018-04-30 20:37:19 +01:00
Bat
59652e8655 Add a function to send activity to an inbox 2018-04-30 19:08:44 +01:00
Bat
dd9e845e66 Fix a few warnings 2018-04-29 19:06:10 +01:00
Bat
80472506ca User outbox 2018-04-29 19:01:42 +01:00
Bat
e592e692ff Restore index page 2018-04-29 18:50:46 +01:00
Bat
4666cd3ee3 Blog outbox 2018-04-29 18:49:56 +01:00
Bat
5e6be0cf93 WIP: signing 2018-04-29 16:40:10 +01:00
Bat
721456de30 Actually start playing with ActivityPub
And Rust
2018-04-24 15:52:47 +01:00
Bat
0b00849a62 Refactor ActivityPub 2018-04-24 13:31:02 +01:00
Bat
270786ad3d Always use JSON for Webfinger 2018-04-24 12:38:43 +01:00
Bat
0c9a1bfc3a Reorganize uses 2018-04-24 10:21:39 +01:00
Bat
f0b08b2d6d Webfinger 2018-04-24 09:35:45 +01:00
Bat
7b3a884ec6 Add ActivityPub endpoint for actors 2018-04-23 16:09:05 +01:00
Bat
e506cd21b7 Post creation 2018-04-23 15:25:39 +01:00
Bat
74ce9aeec0 Add activity_pub::Actor trait 2018-04-23 12:57:14 +01:00
Bat
4f9df753f5 Implement logout 2018-04-23 12:13:49 +01:00
Bat
9130f4d848 Basic blog creation 2018-04-23 11:54:37 +01:00
Bat
5f4cb6c065 Authentication 2018-04-23 10:52:44 +01:00
Bat
a7774444fe User creation 2018-04-22 19:13:12 +01:00
Bat
f060fa08af Initial commit
With instance configuration
2018-04-22 14:35:37 +01:00