Commit Graph

881 Commits

Author SHA1 Message Date
Mark Felder ebd7d1365b Make setting user activation status explicit 2021-01-15 11:37:17 -06:00
Mark Felder cd1e5d76ab Remove User.restrict_deactivated/1
Everything else is in User.Query, no need for this odd kludge.
2021-01-15 11:24:46 -06:00
Mark Felder 860b5c7804 Change user.deactivated field to user.is_active 2021-01-15 11:24:46 -06:00
Mark Felder 63923df0a5 Further simplify changeset logic 2021-01-15 10:42:02 -06:00
Mark Felder f7e59c28ed Change user.approval_pending field to user.is_approved 2021-01-15 10:42:02 -06:00
Lain Soykaf 39f3683a06 Pbkdf2: Use it everywhere. 2021-01-14 15:06:16 +01:00
lain 9106048c61 Password: Replace Pbkdf2 with Password. 2021-01-13 15:11:11 +01:00
Haelwenn (lanodan) Monnier c4439c630f
Bump Copyright to 2021
grep -rl '# Copyright © .* Pleroma' * | xargs sed -i 's;Copyright © .* Pleroma .*;Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>;'
2021-01-13 07:49:50 +01:00
lain e802b48d55 User: Use ObjectID type to validate also-known-as field 2021-01-05 13:10:14 +01:00
Alex Gleason 4200a06340
Aliases: refactor validate_also_known_as/1 2020-12-31 12:53:28 -06:00
Alex Gleason cbce880076
Merge remote-tracking branch 'upstream/develop' into aliases 2020-12-30 17:10:02 -06:00
lain e4f1d8f48c Merge branch 'cachex-test' into 'develop'
Test framework overhaul (speed, reliability)

See merge request pleroma/pleroma!3209
2020-12-26 10:26:35 +00:00
lain c9d73af74d Cachex: Unify arity of callback function 2020-12-21 12:03:58 +01:00
lain 713612c377 Cachex: Make caching provider switchable at runtime.
Defaults to Cachex.
2020-12-18 17:44:46 +01:00
Alex Gleason 80891e83d8
Merge remote-tracking branch 'upstream/develop' into registration-workflow 2020-12-17 09:05:36 -06:00
lain 477c6c8e55 Merge branch 'auth-improvements' into 'develop'
Cookie auth rework / Auth subsystem refactoring and tweaks

Closes pleroma/secteam/pleroma#3

See merge request pleroma/pleroma!3112
2020-12-09 15:55:45 +00:00
lain 1436a2fa2d Merge branch 'stream-follow-updates' into 'develop'
Stream follow updates

Closes #2299

See merge request pleroma/pleroma!3183
2020-12-09 15:52:31 +00:00
Ivan Tashkinov a010c5b16a Merge remote-tracking branch 'remotes/origin/develop' into auth-improvements 2020-12-06 13:59:35 +03:00
lain 04af0bbe44 User: Remove left-over (wrong) fix. 2020-12-02 13:39:29 +01:00
lain 222312900e User: Don't allow local users in remote changesets 2020-12-02 12:18:43 +01:00
Egor Kislitsyn 35ba48494f
Stream follow updates 2020-12-02 00:18:58 +04:00
Ivan Tashkinov f1b07a2b2b OAuth form user remembering feature. Local MastoFE login / logout fixes. 2020-11-28 21:51:06 +03:00
Alex Gleason 30ed7b502f
Merge remote-tracking branch 'upstream/develop' into registration-workflow 2020-11-21 10:23:53 -06:00
minibikini 6669ac5bf7 Merge branch 'develop' into 'hide-muted-reactions'
# Conflicts:
#   CHANGELOG.md
2020-11-18 20:22:40 +00:00
rinpatch 2c55f7d7cb Remove FedSockets
Current FedSocket implementation has a bunch of problems. It doesn't
have proper error handling (in case of an error the server just doesn't
respond until the connection is closed, while the client doesn't match
any error messages and just assumes there has been an error after 15s)
and the code is full of bad descisions (see: fetch registry which uses
uuids for no reason and waits for a response by recursively querying a
 ets table until the value changes, or double JSON encoding).

Sometime ago I almost completed rewriting fedsockets from scrach to
adress these issues. However, while doing so, I realized that fedsockets
 are just too overkill for what they were trying to accomplish, which is
 reduce the overhead of federation by not signing every message.
This could be done without reimplementing failure states and endpoint
 logic we already have with HTTP by, for example, using TLS cert auth,
or switching to a more performant signature algorithm. I opened
https://git.pleroma.social/pleroma/pleroma/-/issues/2262 for further
discussion on alternatives to fedsockets.

From discussions I had with other Pleroma developers it seems like they
 would approve the descision to remove them as well,
therefore I am submitting this patch.
2020-11-17 17:28:30 +03:00
Egor Kislitsyn fb41bd1a85 Hide reactions from muted and blocked users 2020-11-16 22:50:14 +04:00
Alex Gleason 9546c1444c
Merge remote-tracking branch 'upstream/develop' into registration-workflow 2020-11-14 19:48:47 -06:00
lain dd2b3a8da9 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/expire-mutes 2020-11-04 16:51:42 +01:00
Haelwenn 131f3219e6 Merge branch 'issue/2069' into 'develop'
[#2069] unread_conversation_count

See merge request pleroma/pleroma!2939
2020-10-29 23:39:15 +00:00
feld 1204aaa2e3 Merge branch 'feature/autofollowing' into 'develop'
autofollowing_nicknames

See merge request pleroma/pleroma!3087
2020-10-27 22:55:31 +00:00
lain 60e379ce0b User: Correctly handle whitespace names. 2020-10-23 13:53:01 +02:00
Mark Felder 1b8fd7e65a Adds feature to permit e.g., local admins and community moderators to automatically follow all newly registered accounts 2020-10-16 17:36:02 +00:00
Mark Felder fb056ce05b Merge branch 'develop' into refactor/discoverable_user_field 2020-10-15 16:39:01 -05:00
Alex Gleason 83770b7b39
Merge remote-tracking branch 'upstream/develop' into aliases 2020-10-14 12:33:24 -05:00
Alex Gleason dc38dc8472
Replace User.toggle_confirmation/1 with User.confirm/1, fixes #2235 2020-10-13 22:01:27 -05:00
Mark Felder 8bacdc3680 Change user.discoverable field to user.is_discoverable 2020-10-13 09:45:08 -05:00
Mark Felder 9968b7efed Change user.locked field to user.is_locked 2020-10-13 09:31:13 -05:00
Alex Gleason 66e00ace7c
Refactor User.post_register_action/1 emails 2020-10-12 17:21:08 -05:00
Alex Gleason cb29769a22
Make User.confirm/1 and User.approve/1 idempotent 2020-10-12 16:42:59 -05:00
Alex Gleason 6ebec50df6
Refactor User.confirm/1, add more tests 2020-10-12 16:32:34 -05:00
Alex Gleason bb8c0614ef
Move admin approval email logic into User.post_register_action/1 2020-10-11 21:46:10 -05:00
Alex Gleason 521e965884
Registration tests 2020-10-11 21:38:01 -05:00
Alex Gleason 28005563f0
Send approval pending email during registration 2020-10-11 20:50:09 -05:00
Alex Gleason c69b205409
Registration: user state is separate from instance state 2020-10-11 19:25:34 -05:00
Alex Gleason b2fed59209
Handle User.post_register_action/1 in steps 2020-10-11 18:52:35 -05:00
Alex Gleason 5ec7d88b77
Aliases: fix URL regex 2020-10-08 16:33:47 -05:00
Alex Gleason 77b1ea68a7
Merge remote-tracking branch 'upstream/develop' into aliases 2020-10-08 15:44:48 -05:00
Mark Felder b3a9ba09ec More robust expires_at timestamp processing 2020-09-29 12:27:47 -05:00
Maksim Pechnikov de993b856b added `force` option to the unfollow operation 2020-09-28 09:16:42 +03:00
Mark Felder f3a1f9c3bb Merge branch 'develop' into feature/bulk-confirmation 2020-09-23 11:56:22 -05:00
Roman Chvanikov 8f5589cf66 Merge develop 2020-09-23 13:56:50 +03:00
Roman Chvanikov 28d0986f83 Refactor mutes removing in CommonAPI and User 2020-09-20 20:58:17 +03:00
Roman Chvanikov 4987ee6256 Merge branch 'develop' into feature/expire-mutes 2020-09-20 19:27:27 +03:00
Maksim Pechnikov ed3bc53fa1 Merge branch 'develop' into issue/2099 2020-09-18 22:13:05 +03:00
Steven Fuchs f2ef9735c5 Federate data through persistent websocket connections 2020-09-18 11:58:22 +00:00
Roman Chvanikov 44e8b6037a Merge branch 'develop' into feature/expire-mutes 2020-09-17 14:54:00 +03:00
Maksim Pechnikov b867f9d7ae Merge branch 'develop' into issue/2099 2020-09-17 08:41:35 +03:00
lain 7a88b726bf User: Remote users don't need to be confirmed or approved 2020-09-16 17:29:16 +02:00
Maksim Pechnikov 599f8bb152 RepoStreamer.chunk_stream -> Repo.chunk_stream 2020-09-16 09:47:18 +03:00
Roman Chvanikov c5830ac037 Merge develop 2020-09-13 12:24:57 +03:00
Alexander Strizhakov eb5ff715f7 pin/unpin for activities with expires_at option 2020-09-10 21:50:41 +03:00
Mark Felder d23d0c27c2 Handle possibility of user account in a bulk operation not having an email address 2020-09-08 16:48:54 -05:00
Mark Felder 75b6fef25d Add mix task for bulk [un]confirming the local instance users 2020-09-08 16:39:41 -05:00
Haelwenn (lanodan) Monnier 947ee55ae2 user: harden get_friends_query(), get_followers_query() and their wrappers 2020-09-08 20:21:34 +03:00
Roman Chvanikov e3f845b243 Add expiring mutes for activities 2020-09-08 15:13:50 +03:00
Roman Chvanikov c56e3d4f3b Add expires_in param for account mutes 2020-09-08 13:26:44 +03:00
Maksim Pechnikov 5ae56aafb2 added import mutes 2020-09-06 21:42:51 +03:00
rinpatch 126461942b User table: ensure bio is always a string
Gets rid of '|| ""' in multiple places and fixes #2067
2020-09-01 10:45:42 +03:00
Maksim Pechnikov 0d5088c2b8 remove `unread_conversation_count` from User 2020-09-01 09:37:08 +03:00
Alexander Strizhakov 7dc275b69b
relay fix for admin-fe 2020-08-19 08:41:39 +03:00
Alex Gleason 72cbe20a58
Purge most user fields upon deletion, "right to be forgotten" #859 2020-08-17 23:44:44 -05:00
Alex Gleason c12c576ee2
Also purge bio and display name 2020-08-17 22:11:45 -05:00
Alex Gleason d55faa2f8f
Purge a local user upon deletion, fixes #2062 2020-08-17 21:52:28 -05:00
Ivan Tashkinov 95529ab709 [#2046] Defaulted pleroma/restrict_unauthenticated basing on instance privacy setting (i.e. restrict on private instances only by default). 2020-08-14 20:55:45 +03:00
Alex Gleason 4af1b80381
Clean up account aliases 2020-08-07 17:37:15 -05:00
Alex Gleason 1a5a7ba6e8
Merge remote-tracking branch 'upstream/develop' into aliases 2020-08-07 16:35:15 -05:00
Mark Felder 474147a67a Make a new function instead of overloading register_changeset/3 2020-08-07 14:54:14 -05:00
Mark Felder 2a4bca5bd7 Comments are good when they're precise... 2020-08-05 11:40:09 -05:00
Mark Felder 81126b0142 Add email to user account only if it exists in LDAP 2020-08-05 11:36:12 -05:00
Mark Felder 2192d1e492 Permit LDAP users to register without capturing their password hash
We don't need it, and local auth fallback has been removed.
2020-08-05 10:07:31 -05:00
lain 28584bb224 Merge branch 'email-blacklist' into 'develop'
Add email blacklist, fixes #1404

Closes #1404

See merge request pleroma/pleroma!2837
2020-08-04 11:00:30 +00:00
Alex Gleason 4f57e85ab9
Email blacklist: Update phrasing again 2020-08-03 22:20:49 -05:00
Alex Gleason 058daf498f
Email blacklist: Update response phrasing 2020-08-03 19:57:53 -05:00
Alex Gleason dc88b6f091
Add email blacklist, fixes #1404 2020-08-02 14:53:42 -05:00
Ilja f671d7e68c Add welcome chatmessages
* I added the option in config/config.exs
* created a new module lib/pleroma/user/welcome_chat_message.ex
* Added it to the registration flow
* added to the cheatsheet
* added to the config/description.ex
* added to the Changelog.md
2020-08-02 15:54:59 +02:00
Alex Gleason f43518eb74
Lint, fix test 2020-07-27 19:22:31 -05:00
Alex Gleason 6f44a0ee84
Add configurable registration_reason limit 2020-07-27 15:13:34 -05:00
Alex Gleason 6747bf2e16
Merge remote-tracking branch 'upstream/develop' into by-approval 2020-07-27 12:29:18 -05:00
Alex Gleason 6931dbfa58
Merge remote-tracking branch 'upstream/develop' into by-approval 2020-07-26 15:46:14 -05:00
Maksim Pechnikov 67ab9a7928 Merge branch 'develop' into issue/1934-welcome-email 2020-07-23 16:36:27 +03:00
lain 250e0369c7 Merge branch 'issue/1878' into 'develop'
[#1878] fix reset confirmation email in admin section

See merge request pleroma/pleroma!2751
2020-07-23 10:56:33 +00:00
Maksim Pechnikov 7991ddad58 added warning to use old keys 2020-07-23 09:01:37 +03:00
Maksim Pechnikov db0224d174 added check user email for welcome email 2020-07-22 16:00:49 +03:00
Maksim Pechnikov 3edaecae96 added welcome email 2020-07-21 09:25:53 +03:00
Alex Gleason bd1e2e3a58
Validate alias IDs 2020-07-17 19:17:15 -05:00
Alex Gleason d0eb43b58b
Add account aliases 2020-07-17 16:17:49 -05:00
Alex Gleason 5756843736
Fully delete users with status :approval_pending 2020-07-17 12:19:41 -05:00
Alex Gleason 48983e9421
Merge remote-tracking branch 'upstream/develop' into by-approval 2020-07-14 18:56:40 -05:00
Alex Gleason df3d1bf5e5
Add :approval_pending to User @type account_status 2020-07-14 18:56:36 -05:00
Alex Gleason 20d24741af
AdminAPI: Add `PATCH /api/pleroma/admin/users/approve` endpoint 2020-07-14 18:02:44 -05:00
Alex Gleason 5ddf0415c4
Accept `reason` in POST /api/v1/accounts and store in DB 2020-07-14 00:22:12 -05:00
feld 8f9ee694ed Merge branch 'features/profile-fields-emojo' into 'develop'
user: Add support for custom emojis in profile fields

See merge request pleroma/pleroma!2741
2020-07-13 15:43:46 +00:00
Alex Gleason bcfd38c8f3
Make a user unapproved when registering with `account_approval_required` on 2020-07-12 22:55:37 -05:00
Alex Gleason a62f17da17
Add `approval_pending` field to User 2020-07-12 20:27:14 -05:00
Maksim Pechnikov 62fc8eab0d fix reset confirmation email in admin section 2020-07-11 07:20:35 +03:00
lain b39eb6ecc5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into chat-federation-information 2020-07-10 12:26:53 +02:00
Haelwenn (lanodan) Monnier cc7153cd82
user: Add support for custom emojis in profile fields 2020-07-09 19:21:58 +02:00
Mark Felder d23804f191 Use the Pleroma.Config alias 2020-07-09 10:53:51 -05:00
lain 00e54f8fe7 ActivityPub: Remove `follow` and fix issues. 2020-07-08 17:07:24 +02:00
lain 59cf78e412 AccountController: Allow removal / reset of user images. 2020-07-07 16:53:03 +02:00
lain e3b5559780 AccountController: Make setting accepts_chat_messages possible. 2020-07-03 15:54:25 +02:00
lain 5c0bf4c472 ActivityPub: Ingest information about chat acceptance. 2020-07-03 13:58:34 +02:00
lain 37fdb05058 User, Migration: Change `accepts_chat_messages` to be nullable
This is to model the ambiguous state of most users.
2020-07-03 13:12:23 +02:00
lain 98bfdba108 User: On registration, set `accepts_chat_messages` to true. 2020-07-03 12:47:05 +02:00
Mark Felder d69af7f742 Rename user.settings column
This is used exclusively by MastoFE/GlitchFE now
2020-06-30 11:50:53 -05:00
lain 15a8b70318 User: Don't unfollow on block when the relevant setting is set. 2020-06-26 12:06:00 +02:00
lain 44bb7cfccd ActivityPub: Remove `block`. 2020-06-25 11:51:33 +02:00
lain 59bdef0c33 Merge branch 'feature/1739-account-endpoints' into 'develop'
account visibility in masto api

Closes #1739

See merge request pleroma/pleroma!2488
2020-06-22 12:37:10 +00:00
Sergey Suprunenko b63646169d
Add support for bot field in update_credentials 2020-06-19 21:18:07 +02:00
lain 372533b7c3 Merge branch 'dry-up-follower-update' into 'develop'
User: update_follower_count refactor.

See merge request pleroma/pleroma!2649
2020-06-19 13:40:34 +00:00
lain d772361e62 Merge branch 'fix/1787-mogrify-args' into 'develop'
Moving custom ecto types in context folders

See merge request pleroma/pleroma!2652
2020-06-17 15:53:24 +00:00
rinpatch 4ec2fb967e Merge branch 'features/users-raw_bio' into 'develop'
User: Add raw_bio, storing unformatted bio

See merge request pleroma/pleroma!2326
2020-06-17 10:34:23 +00:00
Alexander Strizhakov 3c2cee33ad
moving custom ecto types in context folders 2020-06-16 17:50:33 +03:00
lain e1ee8bc1da User: update_follower_count refactor. 2020-06-15 14:29:34 +02:00
eugenijm b15cfc3d36 Mastodon API: ensure the notification endpoint doesn't return less than the requested amount of records unless it's the last page 2020-06-14 18:27:11 +03:00
Sergey Suprunenko 8d9e586887
Delete pending follow requests on user deletion 2020-06-07 17:31:37 +02:00
Haelwenn (lanodan) Monnier e1b07402ab
User: Add raw_bio, storing unformatted bio
Related: https://git.pleroma.social/pleroma/pleroma/issues/1643
2020-06-06 16:23:16 +02:00
lain f6ddf0cc50 Merge branch 'feature/1792-update-actor-type' into 'develop'
Validate actor type

See merge request pleroma/pleroma!2593
2020-05-28 16:58:28 +00:00
rinpatch d35be02e70 Merge branch 'refactor-add-mention-step-one' into 'develop'
Fix ObjectView calling into strange functions

Closes #1807

See merge request pleroma/pleroma!2580
2020-05-27 14:17:12 +00:00
Alexander Strizhakov 3249141588
validate actor type 2020-05-27 10:14:22 +03:00
lain 5fef405208 User: Change signature of get_users_from_set 2020-05-25 15:06:35 +02:00
lain d0c26956da User: Don't error out if we want to refresh a user but can't 2020-05-25 12:46:14 +02:00
lain ab1154e13f Merge branch 'admin-logo-upload' into 'develop'
Ability to upload background, logo, default user avatar, instance thumbnail, and the NSFW hiding image

See merge request pleroma/pleroma!2388
2020-05-21 14:30:34 +00:00
lain 283fb1e05b Merge branch 'issue/749' into 'develop'
[#749] unsubscribes of friends when user deactivated

See merge request pleroma/pleroma!2513
2020-05-21 13:27:44 +00:00
eugenijm b7fc61e17b Added the ability to upload background, logo, default user avatar, instance thumbnail, and the NSFW hiding image via AdminFE 2020-05-21 04:41:42 +03:00
lain 423ea497bb Merge branch 'feature/1734-user-deletion' into 'develop'
User deletion

Closes #1734

See merge request pleroma/pleroma!2493
2020-05-20 11:43:49 +00:00
lain a985bd57b4 User.Query: Speed up recipients query. 2020-05-19 14:11:32 +02:00
Alexander Strizhakov 1671864d88
return :visible instead of boolean 2020-05-18 10:34:50 +03:00
Alexander Strizhakov e7bc2f980c
account visibility 2020-05-18 10:34:49 +03:00
Alex Gleason b46811a074
Upgrade Comeonin to v5
https://github.com/riverrun/comeonin/blob/master/UPGRADE_v5.md
2020-05-12 17:14:59 -05:00
Maksim Pechnikov 63477d07ad unsubscribes of friends when user deactivated 2020-05-12 08:14:42 +03:00
lain 5367a00257 Deletion: Handle the case of pruned objects. 2020-05-11 15:06:23 +02:00
Alexander Strizhakov 287f781808
user deletion 2020-05-08 17:11:17 +03:00
lain 788b7e7bbd Merge fixes. 2020-05-07 14:52:37 +02:00
lain f0c22df226 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/undo-validator-reduced 2020-05-07 14:45:20 +02:00
Maksim 3d0c567fbc Pleroma.Web.TwitterAPI.TwoFactorAuthenticationController -> Pleroma.Web.PleromaAPI.TwoFactorAuthenticationController 2020-05-07 08:14:54 +00:00
rinpatch 473b0d9f3d Merge branch 'feature/delete-validator' into 'develop'
Move deletions to the common pipeline

Closes #1497

See merge request pleroma/pleroma!2441
2020-05-06 14:32:58 +00:00
lain a3bb2e5474 Undoing: Move undoing announcements to the pipeline everywhere. 2020-05-05 16:42:34 +02:00
lain a3071f0231 Undoing: Move undoing likes to the pipeline everywhere. 2020-05-05 15:08:41 +02:00
lain 8bed6ea922 User, Webfinger: Remove OStatus vestiges
Mainly the `magic_key` field
2020-05-05 09:25:09 +02:00