Commit Graph

726 Commits

Author SHA1 Message Date
Alex S beba7bbc85 removing synchronization worker 2019-07-10 17:42:18 +03:00
Alex S f8786fa6f2 adding following_address field to user 2019-07-10 17:42:18 +03:00
Sergey Suprunenko 2d2b50ccca Send and handle "Delete" activity for deleted users 2019-07-10 05:16:08 +00:00
Roman Chvanikov 371d39e160 Merge develop 2019-07-09 21:21:09 +03:00
Alexander Strizhakov d6b0fce6e9 Fix/1019 correct count remote users 2019-07-09 17:36:35 +00:00
Maksim 6dadf5d6f4 [#1043] fix search accounts. 2019-07-05 04:22:08 +00:00
Roman Chvanikov 657277ffc0 Resolve conflicts 2019-06-29 00:52:50 +03:00
Maksim a0c4ebb4d7 [#184] small refactoring reset password 2019-06-24 19:01:56 +00:00
Sergey Suprunenko 2c63c67512 Rework user deletion 2019-06-24 18:59:12 +00:00
Alexander Strizhakov c2ca1f22a2 it is changed in compile time
we can't change module attributes and endpoint settings in runtime
2019-06-14 15:45:05 +00:00
Roman Chvanikov 01fe5abad1 Resolve conflicts 2019-06-07 01:20:50 +03:00
kaniini 3f6da9c45a Merge branch 'bugfix/377-stuck-follow-request' into 'develop'
Bugfix/377 stuck follow request

Closes #377

See merge request pleroma/pleroma!1250
2019-06-05 15:52:40 +00:00
kaniini a511d2f900 Merge branch 'improve-search' into 'develop'
[#943] Contain search for unauthenticated users

See merge request pleroma/pleroma!1220
2019-06-05 15:51:32 +00:00
lain 076c9ae40e User: Remove superfluous `maybe_follow`. 2019-06-05 14:24:31 +02:00
lain 024dfdc39c Typo + Linting. 2019-06-05 12:45:28 +02:00
lain 8b9a0dd4a7 User: Don't error out when following a user that's already followed.
This leads to a few situations where it is impossible to follow a user.
2019-06-05 12:06:45 +02:00
Egor Kislitsyn 1cb245c982 Fix formatting 2019-06-05 16:55:17 +07:00
Egor Kislitsyn 5b04f07a1e Limit search for unauthenticated users to local users only 2019-06-05 16:51:04 +07:00
Mark Felder 6ef145b4fc Merge branch 'develop' into feature/digest-email 2019-06-03 15:29:53 -05:00
lain 2b664b048e User: Add function to get AP ids from nicknames. 2019-06-03 18:16:11 +02:00
Sachin Joshi ad5263c647 Merge remote-tracking branch 'upstream/develop' into admin-create-users 2019-06-01 11:42:37 +05:45
Sachin Joshi 5534d4c676 make bulk user creation from admin works as a transaction 2019-06-01 11:17:53 +05:45
feld 6872c5f88f Mastodon API search default value for "resolve" is false
https://docs.joinmastodon.org/api/rest/accounts/
https://docs.joinmastodon.org/api/rest/search/
2019-05-31 18:46:57 +00:00
Egor Kislitsyn 99f70c7e20 Use Pleroma.Config everywhere 2019-05-30 15:33:58 +07:00
Roman Chvanikov ce47017c89 Merge develop 2019-05-29 18:18:22 +03:00
William Pitcock 045803346d move key generation functions into Pleroma.Keys module 2019-05-22 03:58:15 +00:00
Sadposter daeae8e2e7
Move default mascot configuration to `config/` 2019-05-20 16:12:55 +01:00
lain 249b31ffe5 Fix specs. 2019-05-17 11:49:13 +02:00
Alexander Strizhakov 7ed682213f Fix/902 random compile failing 2019-05-17 07:25:20 +00:00
Sergey Suprunenko 2c303afc8b Remove duplicated entries in users' following lists 2019-05-16 20:04:08 +00:00
Alexander Strizhakov 73ae58fdfa Feature/896 toggling confirmation 2019-05-16 13:23:41 +00:00
Mark Felder 1caa6331ea Group def perform() together to fix the build 2019-05-14 12:33:03 -05:00
lambda 692919c7d2 Merge branch 'refactor/use-job-queue-everywhere' into 'develop'
use job queue everywhere

Closes #862

See merge request pleroma/pleroma!1142
2019-05-14 15:27:34 +00:00
William Pitcock ac3a3abf6b clean up follow/block imports a little 2019-05-14 15:07:38 +00:00
Egor Kislitsyn b92c004ea8 Reuse query from User.restrict_deactivated/1 2019-05-14 18:29:10 +07:00
Egor Kislitsyn 5e2b491276 Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-14 18:15:56 +07:00
William Pitcock 69a9e0563c user: migrate follow/blocks import to job queue 2019-05-13 19:36:00 +00:00
William Pitcock 32d4630c9c user: move initial post fetching to job queue 2019-05-13 19:36:00 +00:00
Alexander Strizhakov a2be420f94 differences_in_mastoapi_responses.md: fullname & bio are optionnal
[ci skip]
2019-05-13 18:35:45 +00:00
Roman Chvanikov f1f7a11222 Merge develop 2019-05-11 14:45:54 +07:00
Alexander Strizhakov bfeb33e951 Merge develop
Merge conflict in lib/pleroma/activity.ex
2019-05-08 14:34:36 +00:00
Roman Chvanikov b6b5b16ba4 Merge develop 2019-05-08 17:08:06 +07:00
rinpatch 06947c9147 Remove bookmarks assoc 2019-05-07 19:33:22 +00:00
Egor Kislitsyn 1557b99beb Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-07 16:51:11 +07:00
Alexander Strizhakov ce6ca0fefe Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/845-improve-status-deletion 2019-05-06 16:45:22 +00:00
Haelwenn (lanodan) Monnier d70af32127
Pleroma.User: remove emojify on parse_bio 2019-05-03 16:27:50 +02:00
Alex S f11e7037c2 test fixes 2019-05-01 16:09:53 +07:00
Alex S bdfa3a6fa8 Merging with develop
Conflicts:
lib/pleroma/web/activity_pub/transmogrifier.ex
lib/pleroma/user.ex
2019-05-01 12:29:33 +07:00
Roman Chvanikov 0f0cc2703b Merge develop 2019-04-30 20:17:52 +07:00
Alex S 229ce6abbc migration without using old field name
removing old field from db, after bookmarks migration
2019-04-25 13:42:10 +07:00
Egor Kislitsyn c157e27a00 Merge branch 'develop' into feature/disable-account 2019-04-25 13:41:10 +07:00
Alex S 324c9c8ab5 migrate user.bookmarks to separate table 2019-04-25 13:38:24 +07:00
Alex S 73d01857e3 bookmarks in separate table 2019-04-25 13:38:24 +07:00
Egor b9cdf6d3b9 Use `User.get_cached*` everywhere 2019-04-22 07:20:43 +00:00
Egor Kislitsyn e8c2f9a73a Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-22 13:08:30 +07:00
Roman Chvanikov 64a2c6a041 Digest emails 2019-04-20 19:42:19 +07:00
Roman Chvanikov bc7862106d Fix tests 2019-04-19 23:26:41 +07:00
Roman Chvanikov 8add119444 Add User.list_inactive_users_query/1 2019-04-19 22:19:00 +07:00
Roman Chvanikov 2f0203a4a1 Resolve conflicts 2019-04-17 16:59:05 +07:00
Sadposter e513504e88 Revert "Assert on the success of enqueue before returning"
This reverts commit 16d8c8b33b.
Because it breaks everything
2019-04-14 16:12:54 +01:00
Sadposter 16d8c8b33b Assert on the success of enqueue before returning 2019-04-14 16:05:26 +01:00
Sadposter 5e45557751 Always return {atom, _} from try_send_confirmation 2019-04-14 16:01:48 +01:00
Sadposter ec42b639a3 fix pattern match on user registration
deliver_async will return a single atom
2019-04-14 15:46:54 +01:00
lambda 184ae60b21 Merge branch 'bugfix/pleroma-email-naming' into 'develop'
Make the filename and module name of Pleroma.Emails.* orthogonal

See merge request pleroma/pleroma!1029
2019-04-12 10:41:09 +00:00
Egor Kislitsyn dd097a406b add tests 2019-04-12 16:38:32 +07:00
Egor Kislitsyn 46bd5c1d87 fix format 2019-04-11 17:28:12 +07:00
Egor Kislitsyn db4badc6aa move user disable into deactivation 2019-04-11 17:22:42 +07:00
Egor Kislitsyn 0f2f7d2cec Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-11 15:51:52 +07:00
Sadposter be8350baa2
Merge branch 'develop' into feature/user-status-subscriptions 2019-04-10 10:44:54 +01:00
Haelwenn (lanodan) Monnier 9c1b36856b
s/Pleroma.UserEmail/Pleroma.Emails.UserEmail/ 2019-04-10 06:33:20 +02:00
Haelwenn (lanodan) Monnier 1791ee8ec4
s/Pleroma.Mailer/Pleroma.Emails.Mailer/ 2019-04-10 06:33:19 +02:00
kaniini 97395e013e Merge branch 'notification-pleroma-settings' into 'develop'
Notification controls

Closes #738

See merge request pleroma/pleroma!988
2019-04-10 02:10:31 +00:00
lambda 0a02ed7a2f Merge branch 'bugfix/follower_count' into 'develop'
update the follower count when a follower is blocked

See merge request pleroma/pleroma!1033
2019-04-09 07:30:38 +00:00
Sachin Joshi 07afb9b537 update the follower count when a follower is blocked 2019-04-09 09:15:45 +05:45
Sadposter 589629cf3e
Used cached user resources in subscriptions 2019-04-08 15:56:14 +01:00
Sadposter 87a01f9ee0
Use Pleroma.Config instead of Application.get_env 2019-04-08 13:04:30 +01:00
Sadposter 13ff312c48
Sever subscription in case of block 2019-04-08 12:46:12 +01:00
Sadposter 9ca91cbb87 Change relationship direction of subscriptions 2019-04-05 17:02:07 +01:00
Sadposter d56866c824 Add subscribed status to user view
Added in pleroma extensions, but can be moved whenever
2019-04-05 15:30:31 +01:00
Sadposter 316fe20d86 Make subscriptions the same direction as blocks
That being, user - subscribes to -> users, rather than
user - has subscribers -> users
2019-04-05 15:30:26 +01:00
Sadposter 007762e767 Add notification checks 2019-04-05 15:30:23 +01:00
Sadposter 79910ce5cc Add API endpoints and user column for subscription 2019-04-05 15:30:18 +01:00
Ivan Tashkinov 45765918c3 [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	mix.exs
2019-04-04 23:43:08 +03:00
lambda ce9284b36f Merge branch 'remove-user-activities' into 'develop'
[#757] Add mix task to delete user's activities

See merge request pleroma/pleroma!1008
2019-04-02 12:45:29 +00:00
Ivan Tashkinov 37925cbe78 Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	lib/pleroma/web/oauth/oauth_controller.ex
#	lib/pleroma/web/router.ex
2019-04-02 14:05:34 +03:00
Egor Kislitsyn 1b3d921921 change `Repo.get(User, id)` => `User.get_by_id(id)` 2019-04-02 17:01:26 +07:00
Egor Kislitsyn a14742f495 add `user delete_activities` mix task 2019-04-02 16:30:11 +07:00
Egor Kislitsyn a1869f5272 Merge remote-tracking branch 'pleroma/develop' into remove-user-activities 2019-04-02 15:41:30 +07:00
Ivan Tashkinov baffdcc480 [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	mix.exs
2019-04-01 08:49:32 +03:00
eugenijm cd90695a34 Add PUT /api/pleroma/notification_settings endpoint 2019-03-28 18:55:16 +03:00
Ivan Tashkinov 20e0f36605 Merge remote-tracking branch 'remotes/origin/develop' into twitter_oauth 2019-03-27 15:41:40 +03:00
lambda 926bf114b7 Merge branch 'feature/more-user-filters' into 'develop'
Add more user filters + move search to its own module

See merge request pleroma/pleroma!982
2019-03-27 11:33:13 +00:00
Maxim Filippov 3cf7539bca Add more user filters + move search to its own module 2019-03-27 03:51:59 +05:00
lambda ff3b09f6b3 Merge branch 'fix/ap-icon' into 'develop'
Do not federate instance avatar

Closes #759

See merge request pleroma/pleroma!977
2019-03-26 16:12:50 +00:00
lain 10a7a4a868 AP UserView: Refactor banner / avatar display code, add test. 2019-03-26 16:59:28 +01:00
Ivan Tashkinov 263ca3dea2 Mastodon-based auth error messages. Defaulted User#auth_active?/1 to `true`. 2019-03-26 15:09:06 +03:00
Mark Felder 6f090f981b Attempt to fix incorrect federation of default instance avatars 2019-03-25 18:47:04 -05:00
William Pitcock 332dc1371b user: use preloads when deleting accounts 2019-03-23 03:06:00 +00:00
rinpatch 3229c7a1d6 Ensure fts is prefered over trigram and use union_all instead of union in user search query 2019-03-22 08:39:49 +03:00
rinpatch 88096c65a5 Move gluing search results from application to database and get mutuals
a higher score multiplier
2019-03-21 23:16:32 +03:00
rinpatch b92a16aa00 Merge branch 'ecto-3-migration' into 'develop'
Ecto 3.0.7 (ecto_sql 3.0.5) migration

See merge request pleroma/pleroma!957
2019-03-21 16:24:57 +00:00
rinpatch 9a7b817c9a Ecto 3.0.5 migration
kms
2019-03-20 15:59:54 +03:00
Maxim Filippov 7ac9fff437 Format 2019-03-20 01:40:50 +03:00
Maxim Filippov ed8a2935f5 Use ILIKE to search users 2019-03-20 01:37:40 +03:00
William Pitcock 67ff8d9311 user: properly cope with actors which do not declare a followers collection 2019-03-19 18:23:06 +00:00
kaniini 43bd7f47db Merge branch 'feature/order-users-by-nickname-admin-api' into 'develop'
Order users by nickname

See merge request pleroma/pleroma!945
2019-03-18 23:08:31 +00:00
Ekaterina Vaartis a1aacc08a4 Check if the user has indeed not been federated with
Just updating the user triggered post fetching too, now it
shouldn't. It only happened in the AP user fetching since that's
what's used to update users
2019-03-18 20:16:31 +03:00
Ivan Tashkinov 8d21859717 [#923] External User registration refactoring, password randomization. 2019-03-18 18:09:53 +03:00
Zachary Dunn 97b35e00b0 Fix with expression always matching 2019-03-18 14:59:52 +00:00
Zachary Dunn e572786dad Run 2019-03-18 14:53:30 +00:00
Zachary Dunn af4338da0c Use better error message 2019-03-18 14:52:24 +00:00
Ivan Tashkinov 26b6354095 [#923] Support for multiple (external) registrations per user via Registration. 2019-03-18 17:23:38 +03:00
Zachary Dunn a2e03d4f3c Initial attempt at updating return type 2019-03-18 13:56:59 +00:00
Ivan Tashkinov 2a96283efb [#923] Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth
# Conflicts:
#	config/config.exs
#	lib/pleroma/web/auth/pleroma_authenticator.ex
2019-03-18 10:26:41 +03:00
Maxim Filippov 93291c3d7a Order users by nickname 2019-03-17 13:23:31 +03:00
Ivan Tashkinov 2739057442 Merge remote-tracking branch 'remotes/upstream/develop' into twitter_oauth 2019-03-15 17:11:00 +03:00
Ivan Tashkinov aacbf0f570 [#923] OAuth: prototype of sign in / sign up with Twitter. 2019-03-15 17:08:03 +03:00
Karen Konou da53c079db Refactor to store user ap_id, add tests 2019-03-15 14:20:08 +01:00
Karen Konou c8f31e0bc2 Implement mastodon's reblog hiding feature 2019-03-15 14:18:21 +01:00
Haelwenn (lanodan) Monnier c42d34b2ec
[Credo] fix Credo.Check.Readability.MaxLineLength 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier 8cd3eada7d
[Credo] write large numbers with underscore separation 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier fb82f6fc7c
[Credo] Remove parentesis on argument-less functions 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier a3a9cec483
[Credo] fix Credo.Check.Readability.AliasOrder 2019-03-13 04:26:54 +01:00
Egor Kislitsyn d013b58e84 add `mix pleroma.user delete_activities NICKNAME` task 2019-03-12 22:04:08 +07:00
kaniini 130fc9eae6 Merge branch 'fetch-posts-on-first-federation' into 'develop'
Fetch user's outbox posts on first federation with that user

Closes #131

See merge request pleroma/pleroma!907
2019-03-08 22:33:31 +00:00
Ekaterina Vaartis 5021b7836f Fetch user's outbox posts on first federation with that user 2019-03-08 16:27:56 +03:00
Maxim Filippov f620199836 Merge search endpoint into /users 2019-03-04 21:26:32 +03:00
Egor Kislitsyn eb84de0143 allow users to disable their own account 2019-03-04 19:55:11 +07:00
kaniini ace4231628 Merge branch 'features/bio_rel_me' into 'develop'
Add rel=me to the User bio

Closes #423

See merge request pleroma/pleroma!813
2019-03-03 16:00:49 +00:00
kaniini 6c6a2dbfdd Merge branch 'feature/add-pagination-to-users-admin-api' into 'develop'
Add pagination and search to users

See merge request pleroma/pleroma!873
2019-03-03 15:59:15 +00:00
kaniini b531e366df Merge branch 'get-follow-requests-sql' into 'develop'
Use sql query in User.get_follow_requests/1 for filtering logic

See merge request pleroma/pleroma!883
2019-03-03 15:51:32 +00:00
kaniini 413cf00cc3 Merge branch 'atomic-note-count-updates' into 'develop'
Atomic update for note count and follower count

See merge request pleroma/pleroma!885
2019-03-03 15:50:41 +00:00
eugenijm d5418e9ff7 Remove follow_request_count as it's not needed for FE anymore.
MastoFE uses `GET /api/v1/follow_requests` and PleromaFE uses
`GET /api/pleroma/friend_requests` which they query on the initial page
load.
2019-03-03 18:42:27 +03:00
eugenijm af0039a3a0 Use atomic update for note count and follower count 2019-03-03 17:41:34 +03:00
eugenijm 1a1f4520cd Use sql query in User.get_follow_requests/1 for filtering logic 2019-03-02 22:18:56 +03:00
Maxim Filippov 2ec8cf5665 Add pagination to search 2019-03-02 17:21:30 +03:00
Haelwenn (lanodan) Monnier f2452d5700
Pleroma.User: mix format 2019-03-02 07:04:49 +01:00
Haelwenn (lanodan) Monnier 39a5bea9b7
Pleroma.User: Fix syntax and user.ap_id call 2019-03-02 06:57:28 +01:00
Haelwenn (lanodan) Monnier 3d22642352
Pleroma.User: Pass an array to profile_urls 2019-03-02 06:33:15 +01:00
Haelwenn (lanodan) Monnier 56d4e39012
Pleroma.User: Add rel=me to URLs where it linkbacks to the profile 2019-03-02 05:36:48 +01:00
Maxim Filippov f635b675b2 Refactor a little bit 2019-03-01 21:17:23 +03:00
Maxim Filippov f1a4c3163b Show current user in users list as well 2019-03-01 20:23:03 +03:00
Maxim Filippov 5b08b470f6 Add "local" params to users search 2019-03-01 20:13:02 +03:00
Maxim Filippov 46f29b9da1 Add search users endpoint 2019-02-28 19:04:47 +03:00
kaniini cf426a719d Merge branch 'with-mutes' into 'develop'
Add `with_muted` param.

Closes #683

See merge request pleroma/pleroma!872
2019-02-28 10:22:19 +00:00
Maxim Filippov 2883f75a3a Add pagination to users admin API 2019-02-28 01:11:56 +03:00
lain c1ae495878 Add user muted status info to MastodonAPI. 2019-02-27 16:46:47 +01:00
lain b24cc44e8d Follower requests: Utilize object index.
Closes #677
2019-02-27 15:01:54 +01:00
Egor c3ac9424d2 AutoLinker 2019-02-26 23:32:26 +00:00
Maxim Filippov 90d0d055fc Add more admin actions 2019-02-27 00:13:38 +03:00
Egor bff9eb5ef7 Reports 2019-02-20 16:51:25 +00:00
Ekaterina Vaartis 5a46d37af9 Update the mute implementation to the current codebase
Make it part of the info thing (and do a migration to ensure it's there)
2019-02-19 23:09:16 +03:00
Ekaterina Vaartis 465b547c90 Remove unused "muted" parameter, use piping for mute/block fns 2019-02-19 21:49:55 +03:00
Ekaterina Vaartis 092b1b1453 Do not unfollow muted users 2019-02-19 21:49:55 +03:00
Ekaterina Vaartis f41f017bbc Implement muting, add it to the mastodon API 2019-02-19 21:49:55 +03:00
lambda 1dd718e83c Merge branch 'set-cache-on-user-tag-update' into 'develop'
Update user cache when user tags are updated

See merge request pleroma/pleroma!840
2019-02-19 14:20:58 +00:00
lambda f53dc5ee08 Merge branch 'fix/ap_id-unique_constraint' into 'develop'
mark ap_id unique_constraint

See merge request pleroma/pleroma!842
2019-02-19 14:07:16 +00:00
rinpatch 109b01a631 mark ap_id unique_constraint 2019-02-19 13:52:15 +03:00
eugenijm fc35481445 Update user cache when user tags are updated 2019-02-19 10:43:38 +03:00
kaniini cd019a5927 Merge branch 'follow-request-count' into 'develop'
Follow request count

See merge request pleroma/pleroma!817
2019-02-18 04:01:26 +00:00
lain d812a347ca Add optional welcome message. 2019-02-16 16:42:34 +01:00
eugenijm ecdf0657ba Add logic for keeping follow_request_count up-to-date on the `follow`,
`approve_friend_request`, and `deny_friend_request` actions.
Add follow_request_count to the user view.
2019-02-15 12:20:20 +03:00
William Pitcock da44cdd381 user: search: use get_or_fetch() instead of get_or_fetch_by_nickname()
get_or_fetch() handles the nickname verses URI differences transparently.
2019-02-14 20:00:04 +00:00
lain 88a4de24f9 User.follow_all: Respect blocks in both directions. 2019-02-13 13:52:27 +01:00
kaniini 6c8d15da11 Merge branch 'fix/credo-issues' into 'develop'
Fix credo issues

See merge request pleroma/pleroma!786
2019-02-10 20:54:21 +00:00
Haelwenn (lanodan) Monnier 6a6a5b3251
de-group alias/es 2019-02-09 16:31:17 +01:00
lain 563f04e81b Do autofollow first. 2019-02-09 13:39:57 +01:00
lain bbd0049fae Respect blocks in mass follow. 2019-02-09 13:24:23 +01:00
href 308b35ebe2
User.follow_all: ensure its stays unique 2019-01-31 18:17:44 +01:00
Haelwenn 00d4333373 Merge branch 'features/glitch-soc-frontend' into 'develop'
Features/glitch soc frontend

See merge request pleroma/pleroma!192
2019-01-31 10:16:11 +00:00
lain 47ec690c54 Use race-condition free mass follow. 2019-01-30 19:33:25 +01:00
lain 935e65e261 Use race-condition free following method. 2019-01-30 19:21:04 +01:00
Haelwenn (lanodan) Monnier cda1470e02
[MastoAPI][GlitchAPI] Add bookmarks 2019-01-28 04:47:32 +01:00
kaniini c9b418e547 Merge branch 'develop' into 'oembed_provider'
# Conflicts:
#   lib/pleroma/activity.ex
2019-01-25 05:00:47 +00:00
href 28d77e373c
Flake Ids for Users and Activities 2019-01-23 11:26:27 +01:00
Ivan Tashkinov 34d59e4008 [#502] Fixed User.active_local_user_query to return users with nil or missing `info.deactivated`. Adjusted test. 2019-01-22 17:12:53 +03:00
lambda f3045a179e Merge branch 'i1t/pleroma-477_user_search_improvements' into 'develop'
I1t/pleroma 477 user search improvements

See merge request pleroma/pleroma!685
2019-01-20 10:24:05 +00:00
lain 5834b08fe7 Set custom similarity limit. 2019-01-20 10:57:49 +01:00
lain b108aeee08 Make use of the indices.
Indices in postgresql rely on operators, so they won't be used if you use only functions.
2019-01-20 00:31:17 +01:00
kaniini 651ce1c97b Merge branch '491_full_mentions_in_user_bio' into 'develop'
[#491] Made user bio preserve full nicknames (nick@host)

Closes #491

See merge request pleroma/pleroma!676
2019-01-19 07:36:58 +00:00
rinpatch 74346a7035 Fix merge conflict 2019-01-18 18:31:25 +03:00
Ivan Tashkinov 79e44042bc [#477] User trigram index adjustment. 2019-01-18 10:57:42 +03:00
Ivan Tashkinov ed8f55ab8e [#477] User: FTS and trigram search results mixing (to handle misspelled requests). 2019-01-18 10:35:45 +03:00
Ivan Tashkinov 65bb9b2fba [#491] Made full nicknames be preserved in user links text only in Bio. 2019-01-18 09:30:16 +03:00
Ivan Tashkinov 954dc4a4ad [#502] Fixed `user_count` in `/api/v1/instance` to include only active local users. 2019-01-17 19:16:02 +03:00
rinpatch 388ceb6a7d Fix the issue with get_by_nickname never being called 2019-01-17 19:00:08 +03:00
rinpatch 5fa508cc2b Remove @providers and call Pleroma.config on runtime 2019-01-16 18:04:41 +03:00
rinpatch bb43f4cee9 Remove useless with in opengraph.ex 2019-01-16 18:02:46 +03:00
rinpatch 9a90b5d91a oof 2019-01-16 18:01:17 +03:00
rinpatch 8a9f089812 remove id cast 2019-01-16 17:58:11 +03:00
rinpatch 5a08dee379 cache ap_id in id instead of caching user two times 2019-01-16 17:44:08 +03:00
lain 943324b661 MastoAPI: Don't break on missing users. 2019-01-16 15:13:09 +01:00
Ivan Tashkinov 0bc6d30f7d [#477] Minor refactoring (user search query). 2019-01-16 10:44:32 +03:00
Ivan Tashkinov 5b8f9ff8c1 [#477] User search tests. Normalized search rank in User.search. 2019-01-15 13:05:25 +03:00
rinpatch 6f23139864 please don't bully me for this 2019-01-15 12:02:55 +03:00
rinpatch 4587a5712a cringe 2019-01-15 11:59:05 +03:00
rinpatch ce15e0659e Fix some edge cases [nervous laughter] 2019-01-15 11:56:35 +03:00
Ivan Tashkinov dc45ec62c2 [#477] User search improvements: tsquery search with field weights, friends & followers boosting. 2019-01-14 20:04:45 +03:00
rinpatch 5f9786288d Prefer ids to usernames 2019-01-14 09:52:52 +03:00
rinpatch e4dc3f71ae Resolve merge conflict 2019-01-13 13:38:28 +03:00
kaniini 11d08c6226 Merge branch 'twapi-follower-pagination' into 'develop'
Twapi follower pagination

See merge request pleroma/pleroma!648
2019-01-10 18:03:32 +00:00
lain 7ac152ed38 TwitterAPI: Add follower/following pagination. 2019-01-09 18:14:32 +01:00
lain 65fc2df7cc Use follow_all in autofollow. 2019-01-09 11:38:45 +01:00
lain 26938d65fd Add User mass following function. 2019-01-09 11:35:23 +01:00
kaniini 5c5c8508c2 Merge branch 'hotfix/media-proxy-uri' into 'develop'
user: fix local vs remote determination in remote_or_auth_active?/1

See merge request pleroma/pleroma!640
2019-01-09 07:09:39 +00:00
William Pitcock f15183178c user: fix auth_active?/1 for remote users 2019-01-09 06:45:17 +00:00
William Pitcock 0015d43e13 user: factor out illogical User.Info.superuser?/1.
any actual callee will be dealing with a User struct to begin with, so
just check the child struct inside User.superuser?/1 with pattern matching.
2019-01-09 06:44:50 +00:00
William Pitcock 74f48beec3 user: remove entirely redundant remote_or_auth_active?/1.
auth_active?/1 can check remote users and return true directly.
2019-01-09 06:36:50 +00:00
William Pitcock 2af67353c5 user: harden auth_active?/1, superuser?/1, visible_for?/1 2019-01-09 06:21:21 +00:00
William Pitcock 595a970493 user: use pattern matching to determine if user is local or remote instead of the previous hairy logic 2019-01-09 06:02:18 +00:00
lain 0fae04c4e3 Add a setting for users to autofollow on sign up. 2019-01-08 09:57:53 +01:00
lain 7382adf407 Make TwAPI UserView more resilient to issues.
Will work for missing users and badly migrated users.
2019-01-07 12:41:31 +01:00
cascode 5b23dfa1c5 handle null 2019-01-04 01:35:26 -08:00
William Pitcock eb1a18d22f user: check that the follow request actually has an active account associated with it
because of user refetch, accounts can stop existing (get_from_ap_id() can fail), accordingly
filter the follow requests for these failures.
2019-01-02 22:47:12 +00:00
William Pitcock 980b5288ed update copyright years to 2019 2018-12-31 15:41:47 +00:00
Rin Toshaka dec23500d8 Resolve merge conflict 2018-12-30 21:00:40 +01:00
Rin Toshaka 19f9889fbe I am not sure what's going on anymore so I'll just commit and reset all the other files to HEAD 2018-12-29 17:45:50 +01:00
kaniini dd8f2196f6 Merge branch '483_blocks_import_export' into 'develop'
[#483] Blocked users list import & export

Closes #483

See merge request pleroma/pleroma!603
2018-12-29 11:34:51 +00:00
Ivan Tashkinov 7bd49a3222 [#483] User.get_by_nickname/1: ensured case-insensitive matching for local FQN. Added tests. 2018-12-29 12:26:23 +03:00
Ivan Tashkinov b3574dccbb [#483] User.get_by_nickname/1: allowed retrieving user by fully-qualified local nickname
(<nick>@<our_instance_host>).
2018-12-29 12:15:46 +03:00
Ivan Tashkinov 67b4297f4d [#483] Refactored blocks and follows import, added tests. 2018-12-29 12:02:37 +03:00
kaniini 49cf5f9ce0 Merge branch '471_invalid_accounts_rendering' into 'develop'
[#471] Prevented rendering of inactive local accounts

Closes #471

See merge request pleroma/pleroma!599
2018-12-29 03:03:18 +00:00
Ivan Tashkinov 6e9a15b181 [#483] Blocked users export for TwitterAPI. 2018-12-28 21:08:07 +03:00
Ivan Tashkinov 0d1788ce44 [#471] Factored out User.visible_for?/2. 2018-12-28 14:35:25 +03:00
Ivan Tashkinov e6aeb1d4a5 [#471] Prevented rendering of inactive local accounts. 2018-12-27 15:46:18 +03:00
lain 91724d160a Reserve a few user names
These are all names that are used for domain.com/:route routes or projected to be.
2018-12-25 20:10:45 +01:00
William Pitcock 2791ce9a1f add license boilerplate to pleroma core 2018-12-23 20:56:42 +00:00
Ivan Tashkinov 7cab7de9ff [#114] Allowed unconfirmed users to authenticate if :account_activation_required is disabled prior to confirmation.
Ensured that no confirmation emails are sent if :account_activation_required is not true. Adjusted tests.
2018-12-20 14:48:48 +03:00
Ivan Tashkinov f69cbf4755 [#114] Added :user_id component to email confirmation path to improve the security.
Added tests for `confirm_email` action.
2018-12-20 13:41:30 +03:00
Ivan Tashkinov 501ce34d7f [#114] Stylistic adjustments. 2018-12-20 12:55:12 +03:00
Ivan Tashkinov 279096228c [#114] Made MastodonAPI and TwitterAPI user show actions return 404 for auth-inactive users
unless requested by admin or moderator.
2018-12-19 18:56:52 +03:00
Ivan Tashkinov a532ad5d72 [#114] User.register/1 tweak. 2018-12-19 17:24:55 +03:00
Ivan Tashkinov 968d7490b6 [#114] User.Info: renamed `confirmation_update` to `confirmation_changeset`. 2018-12-19 16:31:03 +03:00
Ivan Tashkinov 59fc5d15df [#114] User.Info: renamed `confirmation_update` to `confirmation_change`. 2018-12-19 16:27:16 +03:00
Ivan Tashkinov b096e30cff [#114] Added email confirmation resend action. Added tests
for registration, authentication, email confirmation, confirmation resending.
Made admin methods create confirmed users.
2018-12-18 17:22:46 +03:00
Ivan Tashkinov b86057cc7f [#114] Refactored User.register_changeset to init confirmation data.
Introduced User.register/1 to encapsulate User record creation and post-registration actions.
2018-12-18 17:22:42 +03:00
Ivan Tashkinov 1de0aa2f10 [#114] Account confirmation email, registration as unconfirmed (config-based), auth prevention for unconfirmed. 2018-12-18 17:21:05 +03:00
Ivan Tashkinov a05cb10a95 [#114] Email confirmation route, action, node setting, User.Info fields. 2018-12-18 17:18:53 +03:00
raeno a300336459 Merge branch 'develop' into oembed_provider 2018-12-18 14:59:32 +01:00
lain e4763cd459 Fix tagging problems for existing instances. 2018-12-17 20:12:01 +01:00
raeno 46486595ff Handle "users/:id" links as well. Fix comments in MR. 2018-12-14 19:55:40 +01:00
href 7214d57463
Extended nicknames: allow dashes. 2018-12-12 21:48:54 +01:00
href 7d9ddbe689
Allow underscores in usernames.
Fixes #429.
2018-12-12 18:57:33 +01:00
Maksim Pechnikov 89b3729afa fix warnings 2018-12-12 09:09:19 +03:00
lain d6bf06ab4f Fix warnings. 2018-12-10 20:49:06 +01:00
lambda 0863ec2737 Merge branch 'fix_empty_bio_crash' into 'develop'
Fixes #415. Do not crash during registration when hasn't filled bio field

Closes #415

See merge request pleroma/pleroma!529
2018-12-10 19:08:35 +00:00
raeno 9ba4a1c5fe Fixes #415. Properly handle nil and empty string by User.parse_bio 2018-12-10 01:01:43 +04:00
Maksim Pechnikov 074fa790ba fix compile warnings 2018-12-09 20:50:08 +03:00
lambda 94d8f1ab30 Merge branch '394_user_tags' into 'develop'
[#394] User tags

Closes #394

See merge request pleroma/pleroma!508
2018-12-07 18:25:38 +00:00
Ivan Tashkinov 1cea97df64 [#394] Refactoring of User.tag and User.untag (removed User.tag_or_untag etc.) 2018-12-07 12:27:32 +03:00
Ivan Tashkinov 6ed5044c4e [#394] Refactoring (using Ecto.Multi; "untag" route change). 2018-12-07 11:04:39 +03:00
Ivan Tashkinov 7bcb6a183a [#394] Refactoring. 2018-12-06 20:23:16 +03:00
Ivan Tashkinov 7b19487389 [#394] Added `users.tags` and admin routes to tag and untag users. Added tests. 2018-12-06 20:06:50 +03:00
rinpatch 2ae1128d9f MastoAPI: Fix put_settings 2018-12-06 17:42:07 +03:00
William Pitcock 956f3c75ca user: put default user info when registering a user 2018-12-05 03:35:41 +00:00
Maxim Filippov ce98d5eb9b Parse user's bio on register 2018-12-02 22:03:53 +03:00
lain f18b86fd5f More fixes for Info schema. 2018-12-01 12:46:08 +01:00
lain 347df6421d Fix masto api user updating. 2018-12-01 10:40:01 +01:00
lain badbe2656c More fixes. 2018-11-27 18:12:03 +01:00
lain 0bea0308f1 Merge branch 'validate-user-info' of git.pleroma.social:pleroma/pleroma into validate-user-info 2018-11-20 20:16:16 +01:00
lain d3180e0ccc Raise on usage of old function. 2018-11-20 20:14:38 +01:00
William Pitcock 312676f711 user: fix user.info lookup in User.locked?() 2018-11-20 18:41:44 +00:00
lain 2887f4ff1d Fix formatter tests. 2018-11-20 19:07:01 +01:00
lain 40d9d2098c Fix user updating from AP. 2018-11-18 22:15:03 +01:00
lain cafa15131a Mix format. 2018-11-18 21:41:35 +01:00
lain 4c918392c6 Fix most User tests. 2018-11-18 21:40:52 +01:00
lain fc3bcf335e Fix following locked users. 2018-11-18 18:53:50 +01:00
lain d5af41b577 Fix note count update. 2018-11-18 18:52:21 +01:00
lain 6f90ceb2ed Fix follower count test. 2018-11-18 18:49:17 +01:00
lain 812f5b058a Fix blocking. 2018-11-18 18:40:31 +01:00
lain 756764266c Formatting. 2018-11-18 18:27:04 +01:00
lain b396dba425 Fix follower count setting. 2018-11-18 18:24:16 +01:00
lain 5c8f07f0a8 Fix note counting. 2018-11-18 18:17:56 +01:00
lain 47d883d3ab Fix User deactivation. 2018-11-18 18:06:02 +01:00
lain e8d8c84f79 Add better test for user search functionlity. 2018-11-16 18:31:32 +01:00
William Pitcock 8c805ada32 user: remove obsolete User.get_notified_from_activity(). 2018-11-09 09:01:40 +00:00
William Pitcock d26cd6c1bf user: factor out user set fetching from User.get_notified_from_activity() 2018-11-09 08:23:45 +00:00
William Pitcock 81d6ca1783 user: implement AS2 mention extraction + unify Announce handling 2018-11-08 20:19:56 +00:00
William Pitcock 6b4064fa5d activitypub: transmogrifier: unify mention extraction 2018-11-08 19:41:36 +00:00
William Pitcock 0a2c1a3419 user: add optional local_only param to get_notified_from_activity() 2018-11-08 19:30:55 +00:00
William Pitcock 144dc048b8 user: only consider `to` recipients as mention targets 2018-11-08 18:58:24 +00:00
William Pitcock f584a603f9 user: make User.delete() return data consistent with Object.delete() 2018-11-01 07:56:21 +00:00
William Pitcock 2c3bfd7f76 user: delete user_info data in User.invalidate_cache() 2018-11-01 07:52:58 +00:00
scarlett b92e38d2d4 Add user reactivation task. 2018-10-29 23:13:15 +00:00
William Pitcock 1b480e3514 user: add helper for fetching profile url (which may be different than ap id) 2018-10-25 04:01:59 +00:00
Haelwenn (lanodan) Monnier eacab0fb05
Delete Tokens and Authorizations on password change
Closes: https://git.pleroma.social/pleroma/pleroma/issues/320
2018-10-14 02:14:54 +02:00
William Pitcock 51eaece3ea user: break out local cases for maybe_direct_follow 2018-10-11 10:49:54 +00:00
William Pitcock 2c29329d39 user: local users are always AP-enabled (closes #316) 2018-10-11 10:35:11 +00:00
William Pitcock e69faf550c user: add wait_and_refresh() for async three-way handshake case 2018-10-05 23:40:49 +00:00
William Pitcock 4f7a468659 user: only pre-create follow relationships on OStatus
closes #306
2018-10-05 22:58:03 +00:00
William Pitcock 735cdfb848 user: add User.html_filter_policy() 2018-09-22 02:53:00 +00:00
William Pitcock c9f6eb9a41 user: implement dynamic refresh of profiles (gets rid of need for fix_ap_users task) 2018-09-20 23:50:56 +00:00
William Pitcock b61430163b user: add moderator_user_query() 2018-09-03 12:03:23 +00:00
Will Pearson 0c2a0e3551 Specify default scope in verify_credentials
Certain Mastodon/Pleroma front ends call verify_credentials to get the
default scope of a new toot.

Currently, Pleroma hardcodes this value to "public".

This patch changes it to the user's default_scope value.
2018-08-31 21:04:46 -07:00
William Pitcock 5dd6542db5 formatting 2018-08-27 10:46:01 +00:00
William Pitcock 1089d3658e user: fix up notification last calculation [NOT related to upstream] 2018-08-27 10:46:01 +00:00
lambda 46c7c2380c Merge branch 'feature/relay' into 'develop'
message relay

Closes #144

See merge request pleroma/pleroma!264
2018-08-27 08:29:25 +00:00
lambda 440b459cd1 Merge branch 'bugfix/announce-timeline-flooding' into 'develop'
activitypub: filter destination list for announce activities differently than normal (closes #164)

Closes #164

See merge request pleroma/pleroma!227
2018-08-27 08:25:27 +00:00
kaniini 0f5bff8c66 Merge branch 'develop' into 'feature/relay'
# Conflicts:
#   lib/pleroma/web/activity_pub/utils.ex
2018-08-26 21:06:15 +00:00
William Pitcock d91fd48edf user: do not leak virtuals in account search 2018-08-06 11:29:02 +00:00
William Pitcock ecfd4b2106 user: hide virtual actors from statistics queries 2018-08-06 11:29:01 +00:00
William Pitcock e49131bb72 relay: move to /relay endpoint from / due to webapp issues 2018-08-06 08:22:16 +00:00
William Pitcock ae3cb652b6 user: set up a valid followers address to use 2018-08-06 08:22:15 +00:00
William Pitcock 1c90f88393 user: remote actors can have no nickname if they are virtual services 2018-08-06 08:22:11 +00:00
William Pitcock 4807a52284 user: support creating an actor which represents the instance itself 2018-08-06 08:22:07 +00:00
William Pitcock 275c42e438 user: filter out duplicate follow requests 2018-08-05 01:11:13 +00:00
William Pitcock 47189531c5 user: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:17 +00:00
lambda dfc96f222c Merge branch 'feature/configurable-blocks' into 'develop'
Add more configurability to how blocks work

See merge request pleroma/pleroma!203
2018-06-25 06:12:29 +00:00
squidboi c4038ede07
fix mind-crushingly dumb syntax error 2018-06-23 14:32:00 -07:00
squidboi f4990283de
change moved attributes into normal variables 2018-06-23 14:27:07 -07:00
squidboi 4e099fcfa9
move configurable module attributes into relevant functions 2018-06-23 14:16:08 -07:00
William Pitcock 056305dfa7 user: add helper function to fetch a user given only an ap_id (fix tests) 2018-06-19 08:31:06 +00:00
William Pitcock 320ca7b11e user: when processing a block in User.block(), ensure all follow relationships are broken
this is needed for activitypub conformance

ref #213
2018-06-19 00:59:26 +00:00
William Pitcock 7e0f62acee object: add helper functions to handle various forms of a given object and return a normalized one 2018-06-18 05:27:10 +00:00
William Pitcock 591c82620e activitypub: filter destination list for announce activities differently than normal (closes #164) 2018-06-18 04:36:25 +00:00
squidboi 2e294ee44a Merge branch 'develop' into feature/configurable-blocks 2018-06-16 15:37:16 -07:00
William Pitcock 5eed1ea181 run mix format 2018-06-11 22:15:53 +00:00
William Pitcock 1452b2823f user: add a workaround for situations where Pleroma may believe a followee is followed
this was caused by lack of Undo follows in the early days, and can likely be eventually removed
2018-06-11 22:15:53 +00:00
William Pitcock ad7188fe92 user: use Enum.uniq on the follow request query 2018-06-11 22:15:53 +00:00
William Pitcock 9c88933422 implement tracking of follow requests 2018-06-11 22:15:53 +00:00
William Pitcock e5206752e1 activitypub: only send accept back automatically if the account is not locked 2018-06-11 22:15:27 +00:00
lambda 7f79b467b1 Merge branch 'feature/domain-blocks' into 'develop'
Domain blocks

See merge request pleroma/pleroma!190
2018-06-11 11:19:45 +00:00
squidboi 4f9ecfc77a formatting 2018-06-09 04:28:11 +00:00
squidboi 16d896f526 fixes 2018-06-08 19:01:14 -07:00
squidboi b3580b6971 add option to not deny follow if blocked (fixed) 2018-06-08 18:29:41 -07:00
William Pitcock 1e9dd6fbc2 user: fix maybe_direct_follow() after user_info() refactoring broke it slightly 2018-06-08 02:52:36 +00:00
eal 4856962434 MastoAPI: add domain blocking. 2018-06-03 22:21:23 +03:00
eal 87566b6e2f user.ex: add domain blocks. 2018-06-03 22:01:37 +03:00
lain 6138b29783 There are no symbols in JSON. 2018-05-26 15:20:21 +02:00
lain 745072b2cc Merge branch 'kaniini/pleroma-feature/activitypub-accept-reject-conformance' into develop 2018-05-26 15:15:52 +02:00
William Pitcock e80d91c64a introduce User.maybe_direct_follow() and use it where we used to call User.follow() 2018-05-25 09:40:10 +00:00
William Pitcock c0ca9f82b9 mastodon api: properly track if an account is locked or not 2018-05-25 06:14:09 +00:00
William Pitcock 1d88abf2d4 user: do not allow refollowing somebody who has blocked a user 2018-05-25 03:18:35 +00:00
Thog e55c6f311b
Migrate to comeonin 4 and Cachex 3
Also fix some warning in the code and add a missing alias
2018-05-20 20:08:40 +02:00
William Pitcock 6e8de2faae run mix format 2018-05-19 08:37:04 +00:00
lain 1d4bbec6b3 Fix User search.
Now uses a trigram based search. This is a lot faster and gives better
results. Closes #185.
2018-05-16 17:55:20 +02:00
lain 279b1d19f0 Align local bio limits to remote limit. 2018-04-25 15:41:59 +02:00
Dashie afe892ddac
Correct syntax with mix format 2018-04-24 14:12:23 +02:00
Dashie 9972678a68
Add User.decrease_note_count and call it from ActivityPub.delete 2018-04-24 11:34:18 +02:00
eal 947431e9aa MastoAPI and OAuth: allow login with either email or username. 2018-04-18 13:13:57 +03:00
William Pitcock 2edde06042 user: strip leading @ from user query when searching for users if present
closes #117
2018-04-09 02:42:37 -05:00
lain 2222e5599c Don't fetch anything except ap_id for follower / following
collections.

Should speed up the queries because ecto doesn't have to parse the json.
2018-03-31 20:02:09 +02:00
lain 4afbef39f4 Format the code. 2018-03-30 15:01:53 +02:00
lain bd4926288e Speed up follower query. 2018-03-26 10:31:22 +02:00
lain 847cb15626 Fix tests. 2018-03-24 15:09:09 +01:00
Mark Felder 185c030258 AP again 2018-03-19 17:57:58 +00:00
lain 611ca385de Merge branch 'develop' into feature/activitypub 2018-03-08 12:37:06 +01:00
lain d3b0167854 Fix salmon tests. 2018-02-25 17:06:12 +01:00
lain 8e7f63afde Fix specs. 2018-02-25 16:40:37 +01:00
lain e3629af4da Handle remote update activities. 2018-02-25 16:14:25 +01:00