Matthias Pfefferle
2f5a321474
fix missing user_id issue
2023-07-10 12:12:12 +02:00
Matthias Pfefferle
81d0e09f6e
fix wrong function names
2023-07-10 11:56:46 +02:00
Matthias Pfefferle
64d2d2995b
oops
2023-07-10 11:49:43 +02:00
Matthias Pfefferle
2252b87b1b
check what activity should be send
2023-07-10 10:58:34 +02:00
Matthias Pfefferle
69326d027c
return blog-user when in single mode
2023-07-10 10:57:06 +02:00
Matthias Pfefferle
fe99fffab6
use Group type for blog-user
2023-07-10 10:29:15 +02:00
Matthias Pfefferle
799f4be1d8
check for "single user mode"
2023-07-10 10:29:02 +02:00
Matthias Pfefferle
a0a1e33dc8
Fall back to ID id URL is empty
2023-07-10 10:28:45 +02:00
Matthias Pfefferle
9559a089be
fix sanitization
2023-07-07 16:45:38 +02:00
Matthias Pfefferle
f3d2243afb
use paged
instead of offset
2023-07-07 15:10:22 +02:00
Matthias Pfefferle
7f3d31c59e
add prev
2023-07-07 15:09:22 +02:00
Matthias Pfefferle
4b8ffc874a
add pager to followers endpoint
2023-07-07 15:02:34 +02:00
Matthias Pfefferle
d00b7b54f2
use esc_sql
2023-07-07 14:54:28 +02:00
Matthias Pfefferle
5b712fb7cd
fix some last "follower" issues
2023-07-07 13:43:12 +02:00
Matthias Pfefferle
d4f5ad8ec1
use post_meta instead of post_content
2023-07-06 16:10:48 +02:00
Matthias Pfefferle
96c1e92151
optimize and simplify followers
2023-07-06 14:42:18 +02:00
Matthias Pfefferle
c1da689d66
fix is_activitypub_request
function
2023-07-05 18:13:46 +02:00
Matthias Pfefferle
19d60d8fec
fix sending activities
2023-07-05 16:16:31 +02:00
Matthias Pfefferle
5c59834a0c
various fixes mainly regarding send_follow_response
2023-07-05 15:34:22 +02:00
Matthias Pfefferle
1269cc6248
better instancing
2023-07-05 15:33:16 +02:00
Matthias Pfefferle
eed43355b3
fix inbox
2023-07-05 15:33:07 +02:00
Matthias Pfefferle
862de71cd2
fix WebFinger for pseudo-users
2023-07-05 15:32:49 +02:00
Matthias Pfefferle
52038c9f43
fix image and username handling
2023-07-05 15:32:26 +02:00
Matthias Pfefferle
1380025d4a
always use Followers::add_follower
...
to not ran into inconsistencies
2023-07-05 15:31:45 +02:00
Matthias Pfefferle
7a360dbf6f
fix object handling
2023-07-05 15:31:06 +02:00
Matthias Pfefferle
e65b70763d
use URL as post-name
2023-07-05 12:18:48 +02:00
Matthias Pfefferle
07b0ae6e2d
fix namespaces
2023-07-03 20:02:00 +02:00
Matthias Pfefferle
52e644631a
add missing attributed_to
2023-07-03 20:00:47 +02:00
Matthias Pfefferle
be07574cfe
fix code
2023-07-03 19:56:06 +02:00
Matthias Pfefferle
47957c2a6a
fix code
2023-07-03 19:52:54 +02:00
Matthias Pfefferle
7c9258eb1d
consistent use of namespaces
2023-07-03 19:25:49 +02:00
Matthias Pfefferle
7f3059427d
fix tests
2023-07-03 18:18:03 +02:00
Matthias Pfefferle
f1c1eff267
Merge branch 'add/catchall' into rewrite-user-management
2023-07-03 18:03:42 +02:00
Matthias Pfefferle
493b8ffad5
use transformer instead of post-model
2023-07-03 17:59:42 +02:00
Matthias Pfefferle
1685ec7cc8
allow sending blog-wide activities
2023-07-03 11:56:25 +02:00
Matthias Pfefferle
359eabf671
use collection instead of factory
2023-07-03 11:20:44 +02:00
Matthias Pfefferle
dd67f76db1
fix class names
2023-06-30 16:12:04 +02:00
Matthias Pfefferle
f207089269
revert scheduler/dispatcher changes
2023-06-30 16:08:28 +02:00
Matthias Pfefferle
ced8cd0e29
send activities for blog-wide user
2023-06-29 19:10:49 +02:00
Matthias Pfefferle
3e969c859a
send blog-wide activities if enabled
2023-06-29 18:44:25 +02:00
Matthias Pfefferle
1543c49c19
some doc changes
2023-06-29 14:54:45 +02:00
Matthias Pfefferle
68e9bfdc79
this is now part of the Base_Object
2023-06-28 19:38:50 +02:00
Matthias Pfefferle
1fe8c26b1d
ignore prefixed attributes
2023-06-28 19:38:19 +02:00
Matthias Pfefferle
75a77b3f5c
finalize account handling
...
still missing: publishing
2023-06-28 18:02:14 +02:00
Matthias Pfefferle
c02702f773
replace filters
2023-06-28 16:43:41 +02:00
Matthias Pfefferle
a706bef130
check for option field
2023-06-28 16:42:33 +02:00
Matthias Pfefferle
913c9aeac4
put @context at the top of the JSON output
2023-06-28 16:42:20 +02:00
Matthias Pfefferle
c266c927da
transform users to actors
2023-06-28 14:22:27 +02:00
Matthias Pfefferle
83ddca8f28
fix templating
2023-06-28 10:14:13 +02:00
Matthias Pfefferle
36540c0f78
fix delete
2023-06-28 09:56:18 +02:00
Matthias Pfefferle
58c04856c9
check if a user is enabled or not
2023-06-27 14:30:52 +02:00
Matthias Pfefferle
359cd57081
normalizing
2023-06-27 14:30:52 +02:00
Matthias Pfefferle
6ddbe25852
overwrite activity-object-user on single_user_mode
2023-06-27 14:30:52 +02:00
Matthias Pfefferle
e88ee59113
make user filterable, to change author to blog wide user
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
5f1abd2461
fail early
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
255ace3ae6
revert latest changes to simplify dispatching for now
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
a8fe587f91
prepare federation method
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
723a3e3363
fix signature issue
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
d251060624
migrated missing parts
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
112eb51af1
updated signature feature to new structure
2023-06-27 14:29:42 +02:00
Matthias Pfefferle
4f2a162f6c
Fix follower-list actions
2023-06-27 14:28:52 +02:00
Matthias Pfefferle
e1fd0e1c39
move signature to user object
2023-06-27 14:28:52 +02:00
Matthias Pfefferle
e2ad08b61b
use correct blog-user-id
2023-06-27 14:26:37 +02:00
Matthias Pfefferle
0f72f94406
small updates
2023-06-27 14:26:37 +02:00
Matthias Pfefferle
913b60c7c7
Fix WebFinger resources for Blog-User and updated settings.
2023-06-27 14:26:37 +02:00
Matthias Pfefferle
4d8170413b
avatar and header-image settings
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
7b9b3dbc37
add @-urls to webfinger aliases
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
2feca1388a
generate default username
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
daf228fd44
move permanently
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
c95e501f98
redirect to canonical URL if it is not an ActivityPub request
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
a617553ddf
fix profile pages
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
503353bcd0
Added settings for blog-wide user
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
3feef1e8cf
send user and blog activities
...
and set the blog to "single-mode"
2023-06-27 14:26:00 +02:00
Matthias Pfefferle
f8b93760df
fix copy&paste issue
...
thanks @mattwiebe
2023-06-27 14:25:39 +02:00
Matthias Pfefferle
a1791b963c
try new id urls
2023-06-27 14:25:39 +02:00
Matthias Pfefferle
03f2c24892
small improvements
2023-06-27 14:25:39 +02:00
Matthias Pfefferle
09518ea66b
prepare pseudo users like a blog wide user.
...
this allows also other constructs like tag oder category users
fix #1
2023-06-27 14:25:12 +02:00
Matthias Pfefferle
235b5aa4a1
build a simple to_array converter
2023-06-26 11:08:04 +02:00
Matthias Pfefferle
ffa02e7b18
oops
2023-06-23 15:41:19 +02:00
Matthias Pfefferle
6fcd19554a
updated is not needed
2023-06-23 15:21:14 +02:00
Matthias Pfefferle
2cacd374dc
fix PHPCS issues
2023-06-23 14:57:46 +02:00
Matthias Pfefferle
5478be1355
a follower is now a valid ActivityPub Actor
...
this helps with API handling
2023-06-23 14:54:29 +02:00
Matthias Pfefferle
d47a048329
save meta
to post-meta and persist summary in post-content
2023-06-22 10:01:15 +02:00
Matthias Pfefferle
a215203777
because post_types have length limitations, we should abbreviate the "activitypub" prefix, to be more flexible and consistent when adding other post_types in the future
...
"Must not exceed 20 characters and may only contain lowercase alphanumeric characters, dashes, and underscores"
2023-06-20 09:51:13 +02:00
Matthias Pfefferle
e7bc9706a8
remove url attribute
2023-06-19 11:36:59 +02:00
Matthias Pfefferle
08e3104a1e
better add_follower handling
2023-06-19 11:04:45 +02:00
Matthias Pfefferle
28922d51dd
Fix follower list
2023-06-16 16:56:30 +02:00
Matthias Pfefferle
daf7acb1b0
implement missing get_follower logic
2023-06-16 16:46:49 +02:00
Matthias Pfefferle
793214cea2
now tests are green again
2023-06-16 11:40:26 +02:00
Matthias Pfefferle
46f376e05e
fix tests
2023-06-15 12:24:13 +02:00
Matthias Pfefferle
37c61fbf07
fix queries
2023-06-15 12:17:48 +02:00
Matthias Pfefferle
4414121502
add missing user_id
2023-06-15 12:13:30 +02:00
Matthias Pfefferle
fcf6740d36
fix query
2023-06-15 11:53:07 +02:00
Matthias Pfefferle
9036b644d1
add user connection
2023-06-15 11:48:43 +02:00
Matthias Pfefferle
fc0fc295bb
fix follower creation
2023-06-15 11:48:09 +02:00
Matthias Pfefferle
8b7744a5ea
fix queries
2023-06-15 11:47:50 +02:00
Matthias Pfefferle
7ed998d81f
fix follower table
2023-06-15 11:45:25 +02:00
Matt Wiebe
87de87b2a5
Followers: use custom post types and postmeta to store
2023-06-12 11:38:15 -05:00
Matthias Pfefferle
bfe5381d99
Merge pull request #299 from mediaformat/signature_verification
...
Signature verification
2023-06-01 11:21:33 +02:00
Matthias Pfefferle
00e56ca112
always use is_activitypub_request to check if it is an AP request
2023-06-01 11:17:08 +02:00
Matthias Pfefferle
00dd5d2c52
some phpdoc
2023-06-01 11:05:47 +02:00
Matthias Pfefferle
b834666eda
add missing slash
2023-06-01 10:44:05 +02:00
Matthias Pfefferle
9118e50623
fix signature verification path
2023-06-01 10:25:18 +02:00
Matthias Pfefferle
c1bf6691c1
fix route issues
2023-06-01 10:13:49 +02:00
Matthias Pfefferle
96881b940a
some refactorings and fixed the tests
2023-06-01 09:49:40 +02:00
Django Doucet
73cd19ec20
added test and pre_get_remote_key filter
2023-05-31 23:23:40 -06:00
Matthias Pfefferle
758912da64
do not use cache for new followers
2023-05-31 14:03:46 +02:00
Matthias Pfefferle
084f108161
only schedule migration if DB is not on the latest version
2023-05-31 10:48:51 +02:00
Matthias Pfefferle
c04cf3fc7e
move schedule to scheduler-class
2023-05-31 10:48:06 +02:00
Matthias Pfefferle
ab0f48389c
deregister schedules on uninstall
2023-05-31 10:47:49 +02:00
Django Doucet
273493e768
update header parsing in get_signed_data()
2023-05-26 12:40:46 -06:00
Matthias Pfefferle
221c577826
Fix federation with pixelfed!
2023-05-25 14:03:30 +02:00
Matthias Pfefferle
27dd8217e8
Merge branch 'master' into fix/sanitization
2023-05-23 19:20:23 +02:00
Matthias Pfefferle
2117f78106
fix #321
2023-05-23 12:28:57 +02:00
Matthias Pfefferle
2aa7077ae7
add wpautop
to user description
...
fix #279
2023-05-23 12:26:02 +02:00
Matthias Pfefferle
83991c0cd8
fix #332
...
and some of the feedback of @mattwiebe
2023-05-23 12:14:39 +02:00
Matthias Pfefferle
d91eaeae72
phpdoc
2023-05-23 11:26:12 +02:00
Matthias Pfefferle
3d1a0af6cb
moved strip style/script
2023-05-23 11:13:17 +02:00
Matthias Pfefferle
677d507fe9
Revorked "sanitize output"
...
This reverts commit 77873d12b3
.
2023-05-23 11:10:05 +02:00
Matthias Pfefferle
750d071c8d
Merge branch 'master' into signature_verification
2023-05-22 14:50:49 +02:00
Matthias Pfefferle
b8ee030d78
Merge pull request #324 from Automattic/add/caching
...
Introduce Caching
2023-05-22 14:34:49 +02:00
Matthias Pfefferle
d2b7c287fc
code doc
2023-05-22 13:35:46 +02:00
Matthias Pfefferle
ec4e22f570
fix routing checks
2023-05-22 13:34:14 +02:00
Matthias Pfefferle
467a349b16
some small improvements
2023-05-22 11:31:46 +02:00
Matthias Pfefferle
68002db291
prevent sweeping of followers taxonomies
...
thanks @akirk
b0db9db87e
2023-05-22 10:58:13 +02:00
Matthias Pfefferle
e04ccdc961
fix missing namespace
2023-05-19 18:06:39 +02:00
Matthias Pfefferle
a1753242f3
fix missing namespace
2023-05-19 18:03:05 +02:00
Matthias Pfefferle
e48ce0ebce
I would remove the settings for now
2023-05-19 17:16:19 +02:00
Matthias Pfefferle
92712e1d4a
Merge branch 'master' into signature_verification
2023-05-19 12:01:53 +02:00
Matthias Pfefferle
dd486e552f
some code cleanups
2023-05-19 12:00:11 +02:00
Django Doucet
f4aadc00fc
phpcs
2023-05-18 00:10:03 -06:00
Django Doucet
ed77ffce26
update rest paths to namespace
2023-05-18 00:03:11 -06:00
Matthias Pfefferle
cfb162c620
Merge branch 'master' into signature_verification
2023-05-17 09:59:02 +02:00
Matthias Pfefferle
c34fb74b41
coding style
2023-05-17 09:03:26 +02:00
Matthias Pfefferle
60fc581e1d
coding style
2023-05-17 09:02:37 +02:00
Matthias Pfefferle
4b294bb8a6
Merge branch 'master' into signature_verification
2023-05-16 08:15:35 +02:00
Matthias Pfefferle
9cd2a04955
re-added some namespace consts
2023-05-16 08:14:04 +02:00
Django Doucet
e79f2e8991
fix keyId url
2023-05-16 00:11:27 -06:00
Matthias Pfefferle
2e537e423c
Merge branch 'master' into add/rest-namespace-constant
2023-05-16 08:10:06 +02:00
Matthias Pfefferle
ec23742b9a
Merge pull request #318 from Automattic/schedule
...
update scheduler for followers
2023-05-16 08:08:42 +02:00
Django Doucet
12724a3681
Switch secure_mode to a filter
2023-05-16 00:07:15 -06:00
Matthias Pfefferle
8b9026ab5e
fix get_post_content_template function
2023-05-15 10:55:07 +02:00
Matthias Pfefferle
7456d36834
use const instead of -1
2023-05-15 10:48:34 +02:00
Matt Wiebe
31e7e44642
remove filter
2023-05-12 18:25:49 -05:00
Matt Wiebe
ec00ace234
add a activitypub_rest_url
filter
2023-05-12 16:55:04 -05:00
Matthias Pfefferle
c99daa3e72
Merge branch 'master' into add/rest-namespace-constant
2023-05-12 22:44:41 +02:00
Matt Wiebe
5a91fdcf0a
remove debug log
2023-05-12 15:43:04 -05:00
Matt Wiebe
3fa5e4f37e
now with more use
2023-05-12 15:31:53 -05:00
Matt Wiebe
314ccf43a6
add a get_rest_url_by_path
helper function, and use it
2023-05-12 15:24:24 -05:00
Matthias Pfefferle
94e5539d75
reset errors if new is set
2023-05-12 10:23:58 +02:00
Matthias Pfefferle
7d5cfb3078
phpdoc
2023-05-12 10:17:36 +02:00
Matt Wiebe
abfa7c7969
Allow setting the REST namespace with ACTIVITYPUB_REST_NAMESPACE
2023-05-11 13:25:30 -05:00
Jeremy Herve
d16014911b
Compat: introduce a conditional to detect ActivityPub requests
...
This conditional could be used within the plugin, but also by third-party plugins, to detect whether a request is an ActivityPub request, without having to manually check for query vars and headers every time.
2023-05-11 19:53:53 +02:00
Matthias Pfefferle
77873d12b3
sanitize output
2023-05-11 14:20:35 +02:00
Matthias Pfefferle
f196047901
remove casts
...
after feedback from @akirk
2023-05-11 11:02:06 +02:00
Matthias Pfefferle
b803914180
removed output formatting
2023-05-11 09:46:26 +02:00
Matthias Pfefferle
47b1b10955
Fix migration script
2023-05-11 09:45:01 +02:00
Django Doucet
fc1b89561e
If WP_REST_Request set actor for get_remote_key()
2023-05-10 19:46:52 -06:00
Matthias Pfefferle
26a1dc9be5
use time() instead of strtotime( 'now' )
2023-05-10 18:52:13 +02:00
Matthias Pfefferle
6fce2c30d2
Update includes/class-scheduler.php
...
Co-authored-by: Alex Kirk <akirk@users.noreply.github.com>
2023-05-10 18:47:46 +02:00
Matthias Pfefferle
9da559be6a
Update includes/collection/class-followers.php
...
Co-authored-by: Alex Kirk <akirk@users.noreply.github.com>
2023-05-10 18:45:32 +02:00
Matthias Pfefferle
463bff834b
delete if response code is 410 or 404
2023-05-10 17:21:59 +02:00
Matthias Pfefferle
154b0018af
PHPDoc
2023-05-10 15:36:45 +02:00
Matthias Pfefferle
df02d2202e
PHPDoc
2023-05-10 15:02:01 +02:00
Matthias Pfefferle
2570928b00
PHPDoc
2023-05-10 14:55:10 +02:00
Matthias Pfefferle
17b66cb23d
implement cleanup_followers
and update_followers
2023-05-10 14:18:56 +02:00
Matthias Pfefferle
74be5d6b51
implemented feedback of @akirk
2023-05-10 09:04:33 +02:00
Matthias Pfefferle
ca8aff1823
cast to bool, to be sure that '0' is false
2023-05-09 12:25:25 +02:00
Matthias Pfefferle
b88c5f606d
fixed copy/paste issue
2023-05-09 12:17:48 +02:00
Matthias Pfefferle
c872cb69d0
remove var_dump :(
2023-05-09 12:13:35 +02:00
Matthias Pfefferle
180e882c4a
generate key if not existent
2023-05-09 12:12:05 +02:00
Matthias Pfefferle
96953dfc7e
fail early and always return $response as fallback
2023-05-09 11:57:43 +02:00
Matthias Pfefferle
c42edfce68
use WP_Error
2023-05-09 11:51:53 +02:00
Matthias Pfefferle
378f5dacdc
fix issue with missing array
2023-05-09 11:32:26 +02:00
Matthias Pfefferle
4abd5aefb4
cache inbox list
2023-05-09 10:28:23 +02:00
Matthias Pfefferle
f64a765129
phpdoc fixes
2023-05-09 10:08:51 +02:00
Matthias Pfefferle
6d96daa635
fix NodeInfo check
2023-05-08 21:05:20 +02:00
Django Doucet
abedf014ae
remove redundant
2023-05-05 23:56:39 -06:00
Django Doucet
afafdf1543
Add get_remote_key method
2023-05-05 23:54:29 -06:00
Django Doucet
dc8e1e0f3e
fix request-target route,
...
remove $actor from verify_http_signature
2023-05-05 23:50:49 -06:00
Django Doucet
0d5c249eaf
remove user_id variable from activitypub_safe_remote_get_response
2023-05-05 23:44:55 -06:00
Django Doucet
f79200ef27
make webfinger route available unsigned
2023-05-05 23:44:15 -06:00
Django Doucet
b0edf9a765
removing logging
2023-05-05 14:43:05 -06:00
Django Doucet
3d4ae84573
Add secure mode to content negotiated requests
2023-05-05 14:40:30 -06:00
Django Doucet
9202c19730
Add secure mode to REST get requests
2023-05-05 14:39:33 -06:00
Django Doucet
6c95a23d10
phpcbf
2023-05-05 13:45:38 -06:00
Django Doucet
0b4bada2b6
enable secure mode
2023-05-05 13:24:59 -06:00
Django Doucet
656a2b0f44
remove unneeded filter
2023-05-05 13:22:47 -06:00
Django Doucet
14f3c3985b
code style
2023-05-05 13:00:21 -06:00
Django Doucet
9d30f2c1dd
phpcbf
2023-05-05 12:55:12 -06:00
Django Doucet
c5ca061805
Add helper format_server_request
2023-05-05 12:53:43 -06:00
Django Doucet
35496f5026
get_public_key support application actor
2023-05-05 12:52:24 -06:00
Django Doucet
e827221ee6
service actor as application actor
2023-05-05 12:09:12 -06:00
Django Doucet
27636b62d5
Add Service actor for signing get requests
2023-05-05 12:02:12 -06:00
Django
2bebc88b78
fix undefined get_remote_metadata_by_actor
...
Not tested
2023-05-05 11:47:52 -06:00
Django Doucet
3a0fef27e0
Merge branch 'master' into signature_verification
2023-05-05 09:54:16 -06:00
Django Doucet
6b68f0763d
hold off secure mode
2023-05-05 07:49:27 -06:00
Matthias Pfefferle
6ba8156e50
fix #320
2023-05-05 14:40:17 +02:00
Matthias Pfefferle
8aa3f53dbd
no need to use Followers any more
2023-05-05 10:22:01 +02:00
Matthias Pfefferle
e57dd0590d
Merge branch 'master' into signature_verification
2023-05-05 10:15:26 +02:00