Commit Graph

249 Commits

Author SHA1 Message Date
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
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
58cc35691d Add generic error catchers 2018-06-18 16:59:49 +01:00
Bat
bb682a1cc1 Don't sign activities for each target inbox, do it only once 2018-06-18 16:16:18 +01:00
Bat
fa2435e725 Improve the find_by! macro to allow multiple columns 2018-06-18 16:13:09 +01:00
Bat
cd1d0d9627 Introduce an insert! macro to avoid some code duplication 2018-06-18 14:57:38 +01:00
Bat
94af0b9a7d Introduce a get! macro to avoid some code duplication 2018-06-18 14:44:23 +01:00
Bat
3c9210a0ed Introduce a find_by! macro to avoid some code duplication 2018-06-18 14:37:49 +01:00
Bat
36bf2e114c Fix local notifications 2018-06-18 12:32:03 +01:00
Bat
ae4bcabc53 Make notifications translatable 2018-06-17 21:19:27 +01:00
Bat
0ea8c882ad Actually use the activity_pub::inbox::Notify trait for notifications
It won't work for local events until we use AP internally too
2018-06-17 20:37:10 +01:00
Bat
0b9515645c De-duplicate some parts of the users templates 2018-06-17 18:48:22 +01:00
Bat
152eafc06f Translate Rust strings 2018-06-17 17:06:47 +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
23982d00fc Use the choosen domain when compiling templates 2018-06-17 11:37:24 +01:00
Bat
a8f27a71b9 Compile translations at run time 2018-06-17 11:33:50 +01:00
Bat
25ec318f3f Inject ngettext into Tera templates
Fix .po updating (without the -U option, the result was written to stdout, not the .po file)
2018-06-17 11:16:20 +01:00
Bat
657a0837e2 Use filters for gettext in Tera 2018-06-17 10:38:59 +01:00
Bat
1092ceba76 Fix locale switching + Make the gettext Tera function work 2018-06-16 23:49: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
7313f60d14 Compile .po files
Since cargo is usually not run as root, we can't install .mo files to the standard location (/usr/local/share/locale/),
so we install them to ./translations and load them from there.
2018-06-15 18:43:24 +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
a4a8446d45 Make the follow button a bit smarter 2018-06-13 19:06:14 +01:00
Bat
1c287c6dfe View remote profiles locally
Add a link to the profile on the real instance
2018-06-13 18:48:37 +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
Bat
4c3e63ec16 Merge branch 'master' of github.com:Plume-org/Plume 2018-06-12 20:10:32 +01:00
Bat
36c11182f4 Introduce some traits for handling incoming activities 2018-06-12 20:10:08 +01:00
Trinity Pointard
d8f32afeb0 allow html on user.summary 2018-06-11 16:05:18 +02: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
7fd152e270 Add a button to write a new article 2018-06-10 19:16:25 +01:00
Bat
edbeeef640 Add a dashboard 2018-06-10 18:55:08 +01:00
Bat
7a3215edaa Show 6 articles on the home and on profiles 2018-06-10 17:37:02 +01:00
Bat
e403099f47 CWs are optional 2018-06-10 12:53:39 +01:00
Bat
6544d7d1da Note's actor is usually just an ID, not a full object 2018-06-10 12:41:43 +01:00
Bat
78362feffb Use the activitypub crate 2018-06-10 12:13:07 +01:00
Bat
40d87e746d One less unhandled error 2018-06-10 11:01:02 +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
d604b62917 Make it easier to debug inbox errors 2018-05-24 12:20:11 +01:00
Bat
93eb89bc77 Markdown!
Fixes #18
2018-05-24 11:42:45 +01:00
Bat
a0b4a6eacb Order notifications by creation date 2018-05-24 11:12:27 +01:00
Bat
daf9120fba Send a notification when one of your article is reshared
Fixes #14
Fixes #19
2018-05-24 11:03:37 +01:00
Bat
e9cd48ecca Display reshares on profile page 2018-05-24 10:45:36 +01:00
Bat
94beaaca76 Merge branch 'master' of github.com:Plume-org/Plume 2018-05-23 18:56:16 +01:00
Bat
c0d1a914c4 Handle reshares from AP 2018-05-23 18:09:59 +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
Bat
63eb1a7e98 Add a route to reshare posts 2018-05-19 10:51:10 +01:00
Bat
0ac3cb4c0f Fix AP link serialization 2018-05-19 10:50:56 +01:00
Bat
045e885821 Add a Reshare model 2018-05-19 10:23:02 +01:00
Bat
14bf3f00aa Make post metadata look nicer 2018-05-19 08:53:51 +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
aa233abb41 Remove useless trait 2018-05-18 23:28:55 +01:00
Bat
0b32650c00 Remove legacy AP modules 2018-05-18 23:17:11 +01:00
Baptiste Gelez
d7552ba369
Merge pull request #27 from Plume-org/activitystreams
Use the Activitystreams crate
2018-05-18 23:14:55 +01:00
Bat
4a86af6fc1 Resolve activitystream TODOs 2018-05-18 23:04:30 +01:00
Bat
e83226ae85 Validate data before creating a new account
Fix #28
2018-05-18 21:48:07 +01:00
Bat
0e24ccbf29 Use activitystreams in the Inbox trait 2018-05-18 09:04:40 +01:00
Bat
c779b1c58a WIP: use the activitystreams crate 2018-05-16 19:20:44 +01:00
Bat
9c9799eee2 Add support for shared inboxes for users 2018-05-13 19:12:27 +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
91b19bccb5 Add a link to author's profile on article card
Use a macro to render those cards too
2018-05-13 18:19:23 +01:00
Bat
5e7d513a7e Make it possible to display remote blogs 2018-05-13 18:00:47 +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
726c2c7e82 Add some notifications
When liking, commenting or following
2018-05-13 14:03:35 +01:00
Bat
780a51157f Add a notification model 2018-05-13 13:44:18 +01:00
Bat
c6b2560eb0 Followers listing
And clean up models functions a bit
2018-05-13 12:53:58 +01:00
Bat
601fe7cf4f Allow likes to be deleted with AP 2018-05-13 11:44:05 +01:00