Bat
f66ddf6ef2
Actually implement blocks
2018-09-08 22:05:48 +01:00
Bat
0a70ff2594
Merge branch 'master' of github.com:Plume-org/Plume
2018-09-08 20:32:12 +01:00
Bat
f1d5865a16
Instance (un)block endpoint
...
And hide the block button for the local instance
2018-09-08 20:07:55 +01:00
Bat
c1e0b6c306
Add admin interface to manage interface
2018-09-08 19:54:09 +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
2822f8efe9
Don't show the "Registrations closed" message if there is an error when creating a new user
2018-09-07 20:13:14 +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
dd9c4a6a73
Add a page to list articles by tag
2018-09-06 13:06:04 +01:00
Bat
5b3eca63e0
Make it possible to tag articles and display them
2018-09-05 21:18:27 +01:00
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
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
7653551d57
Fix some compilation errors
2018-09-04 11:45:41 +01:00
Bat
e508eada26
Federate follow deletion
2018-09-04 11:39:24 +01:00
Bat
dcebc4653a
Make it possible to unfollow someone
...
I was sure it was already implemented, but it looks like it wasn't
2018-09-04 11:37:58 +01:00
Bat
e4810263e3
Make about page accessible even when logged out
2018-09-03 22:48:35 +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
3373bb66cd
Fake password verification when trying to login with inexistant account
...
Fix #170
2018-09-03 18:04:21 +01:00
Bat
ac631627ab
Make it possible to disable registrations
...
Fix #41
2018-09-03 17:05:45 +01:00
Bat
3013eec579
Redesign menu items
2018-09-03 14:59:02 +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
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
7fc5d7b5b0
Fix #167
2018-08-18 12:37:40 +02:00
Bat
ed8982b7fd
Add a presentation of Plume and of the instance on the homepage
...
Fixes #132
2018-07-27 22:16:17 +02:00
Bat
fb2f4e9bcd
Take in account instance's default license
...
Fix #145
2018-07-27 20:31:47 +02:00
Bat
74ec59e77c
Add some configuration options for instance admins
2018-07-27 19:05:36 +02:00
Bat
38d99ad5af
Try to fetch followers
2018-07-27 12:53:21 +02:00
Bat
812b76b0de
Use the creation date from ActivityPub when fetching remote articles
2018-07-27 00:29:21 +02:00
Bat
0314629d99
Improve the background article fetching code
2018-07-26 22:59:41 +02:00
Bat
bd259891f3
Try to fetch remote articles
2018-07-26 22:23:53 +02:00
Bat
5583029b07
Update the WebFinger crate
...
Fixes an issue with some Mastodon accounts
2018-07-26 21:35:35 +02:00
Bat
ab4af10ce5
Fix a simlar bug on blog pages
2018-07-26 19:10:50 +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
a9f95c91e2
Sent activities in other threads
2018-07-26 17:51:41 +02:00
Bat
58d158238d
Use the worker queue to send new articles to other instances
2018-07-26 17:38:22 +02:00
Bat
1e5ad2b086
Add a job pool
2018-07-26 17:32:52 +02:00
Bat
c87d490664
Refactor notifications
2018-07-26 15:46:10 +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
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
04dac6f87f
Add pagination links
2018-07-25 14:29:34 +02:00
Bat
5549e4d0e5
Merge branch 'master' of github.com:Plume-org/Plume
2018-07-24 14:32:11 +02:00
Kevin "Ilphrin" Pellet
cd24b0f057
Show the total number of article on a blog
...
fixes #150
2018-07-21 16:58:30 +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
3764e295b8
Fix the link of the follow/unfollow button so that it is always working, even without a trailing slash
2018-07-20 17:59:16 +02:00
Bat
ce256d6e39
List authors of a blog
...
Update french translation accordingly
Fixes #129
2018-07-18 23:08:49 +02:00
Bat
e3a7eadb78
Do it lazily -_-
2018-07-18 16:03:52 +02:00
Bat
488bd929c5
Try to fix the Hubzilla issue ( #107 ) again
2018-07-18 16:02:21 +02:00
Bat
67dd577a27
Make like and share button HTML forms
...
Fixes #88
2018-07-11 21:27:47 +02:00
Bat
b59299ad5a
Remove the last build warning
...
The host-meta route is only available in XML anyway, and having warning during is making people doubt of its validity.
2018-07-11 17:31:02 +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
e5c1b3259d
Make LoginForm serializable
2018-07-06 21:59:17 +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
b008e11fb0
Add validator
2018-06-29 14:22:43 +02:00
Bat
1a2cf3b14f
What if I use the correct name for the this field?
...
Fix #81
2018-06-27 20:43:09 +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
Bat
9a825e7066
Change the signature of ap_url to be backward-compatible
2018-06-26 17:32:35 +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
0a1edba4b0
Fix the custom properties deserialization bug for Blogs as well
2018-06-23 15:00:35 +01:00
Bat
e7fd12ae6f
Set to and cc for new Follow activities
2018-06-23 13:47:53 +01:00
Bat
3a19cae62e
Add id, to and cc for Undo Announce
2018-06-23 13:42:27 +01:00
Bat
a88d0e102f
Like: only compute ap_url once
2018-06-23 13:40:10 +01:00
Bat
d2c8631ba4
Add cc and to for Announce
2018-06-23 13:36:15 +01:00
Bat
cd9862bc4c
Add cc, id and to for Articles
2018-06-23 13:29:41 +01:00
Bat
3ab6dfe288
Add id, to and cc to Undo for Likes
2018-06-23 13:19:14 +01:00
Bat
135797805e
Make Like compliant to the spec
2018-06-23 13:17:17 +01:00
Bat
f2795baab5
Make Create Note compliant to the spec
2018-06-23 13:07:07 +01:00
Bat
3ea4823060
Make Accept Follow compliant to the spec
2018-06-23 12:50:14 +01:00
Bat
236767f498
Send the 'Content-Type: application/activity+json' header for ActivityPub request
...
Should fix #76
2018-06-23 12:23:37 +01:00
Bat
6140865660
Make Post::from_activity a bit more complete
2018-06-23 12:14:03 +01:00
Bat
3b2ca041d0
Rewrite Post::into_activity in a nicer way
...
And prefer expect over unwrap
2018-06-22 21:45:37 +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
Didier Link
feff837313
Merge branch 'master' of https://github.com/Plume-org/Plume
2018-06-22 00:00:15 +02:00
Bat
e34d12922c
Serialize publicKey in Person representation
2018-06-21 22:12:24 +01:00
Bat
dccab062e3
Implement Blog::into_activity
2018-06-21 22:07:04 +01:00
Bat
a0f680a9b6
Rewrite Blog::from_activity to use the activitypub crate instead of raw JSON
2018-06-21 21:39:44 +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
f5f2aa7c59
Get rid of the activity_pub::actor::Actor trait
2018-06-21 18:53:57 +01:00
Bat
9a8472bdcc
Move compute_box from Actor to Instance
2018-06-21 18:42:17 +01:00
Bat
606a3d12c7
Remove useless functions from activity_pub::actor::Actor
2018-06-21 18:23:01 +01: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
6df4b70318
Set @context for ActivityStream responder
2018-06-21 17:30:07 +01:00
Bat
ea29dd91dc
Set the correct content type for the ActivityStream responder
2018-06-21 17:25:29 +01:00
Bat
3fe2625e86
Simplify the Inbox trait
...
If we want to add, for instance, streams in the future, we could introduce
a new trait for that, similar to FromActivity or Notify
We also display inbox errors to the "client" if something fails,
which could be useful for debugging.
2018-06-21 17:00:37 +01:00
Bat
5193ad6f65
Remove legacy Inbox::unlike function
2018-06-21 16:45:54 +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
7ddad12420
Simplify the signature of activity_pub::sign::Signer::get_key_id
2018-06-21 16:25:32 +01:00
Bat
2621c0304e
Better use of the activitypub crate in User::into_activity
2018-06-21 16:14:26 +01:00
Bat
5457a80eec
Avoid calling compute_id when we shouldn't
...
It should only be used at initialization, after we should prefer ap_url,
as not everybody is using the same URLs as Plume.
2018-06-21 15:53:58 +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
0fd181e7ea
Add support for markdown in comments + Correctly federate mentions in comments
2018-06-21 12:00:30 +01:00
Bat
5a5c1a8d99
List all comments
2018-06-21 11:38:07 +01:00
Didier Link
0e85a61aec
Merge branch 'master' of https://github.com/Plume-org/Plume
2018-06-21 12:38:00 +02: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
Didier Link
2d1a035877
partially solve #68
2018-06-21 11:58:54 +02:00
Bat
3551bef895
Simplify the activity_pub::inbox::Notify trait + Fix notifications
...
Also fix a bug with the list of mentions that was returned
2018-06-20 22:51:47 +01:00
Bat
d7b71848fc
Save mentions
2018-06-20 21:58:11 +01:00
Bat
c4cc4a4e13
Notify when receiving a mention
2018-06-20 21:05:30 +01:00
Bat
c9f29955a0
Save incoming mentions
2018-06-20 20:42:16 +01:00
Bat
215b577573
Add some ActivityPub function to Mention
2018-06-20 20:06:34 +01:00
Bat
356cc20e34
List mentions for user, instead of getting only the first one
2018-06-20 19:25:43 +01:00
Bat
ddd840d31d
Add a list_by! macro
2018-06-20 19:23:54 +01:00
Bat
e074af57ff
Add a Mention model
2018-06-20 19:22:34 +01:00
Bat
24ef3d00d1
Fix the bugs with markdown rendering when there was mentions
2018-06-20 16:25:09 +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
b9951f0d70
Merge branch 'master' of github.com:Plume-org/Plume
2018-06-20 10:02:05 +01:00
Bat
ab7bef1490
Get rid of the legacy activity_pub::object module
2018-06-20 10:01:25 +01:00
Baptiste Gelez
dfd303403b
Merge pull request #66 from Plume-org/setup-script
...
Setup script
2018-06-20 09:53:26 +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
d612173533
Fix some error in the messages of the setup script
...
port -> address
table -> database
2018-06-20 09:04:29 +01:00
Bat
635ac6cf42
Merge branch 'master' into setup-script
2018-06-19 22:26:31 +01:00
Bat
8ab25b1ca2
Use uri! as much as possible instead of directly writing URLs
2018-06-19 22:20:27 +01:00
Trinity Pointard
db248701b9
Disallow blog name which yould result in empty blog name
...
fix #63
2018-06-19 22:34:59 +02: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
1653a3ac74
Check for existing slug before creating a new blog
...
Fix #63
2018-06-19 19:40:20 +01:00
Bat
554deb3ec0
Remove some unused imports
2018-06-19 18:40:30 +01:00
Bat
dd152f2607
Remove old configuration code
2018-06-19 18:29:34 +01:00
Bat
a281612051
Complex setup
...
Also generate and save a Rocket secret key, which avoid deconnecting us when restarting the instance
Other small improvements
2018-06-19 18:23:26 +01:00
Bat
f5d70ddfd4
Database setup
2018-06-19 17:29:54 +01:00
Bat
d00688e526
Admin creation
2018-06-19 16:14:52 +01:00
Bat
6916abca7e
Complete/simple setup type + Instance creation
2018-06-19 15:18:40 +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
7fc469fa96
Delete reshares when receiving the corresponding Undo activity
2018-06-19 10:50:01 +01:00
Bat
82d3afe7b6
Implement Deletable for Reshare
2018-06-19 10:47:11 +01:00
Bat
78be09c47c
Use the webfinger crate for fetching resources too
2018-06-18 22:54:13 +01:00
Bat
5415b70854
Use the webfinger crate
2018-06-18 22:50:40 +01:00
Bat
0dfc303c83
Fix Blog::find_by_name
2018-06-18 18:44:18 +01:00