Commit Graph

759 Commits

Author SHA1 Message Date
Michael 4c5e9f206e Remove ignored undo 2022-07-21 11:47:23 +00:00
Michael 99f7270e18 Improved workerqueue handling 2022-07-21 08:55:45 +00:00
Michael 4930e77eb3 We are now setting the corresponding worker id 2022-07-21 07:05:38 +00:00
Michael 28fb022425 Reset the recursion depth at a different place 2022-07-21 06:26:31 +00:00
Michael c775833117 Use deferred tasks 2022-07-21 06:23:55 +00:00
Michael d4a536137d database.sql updated, standards fixed 2022-07-21 05:42:53 +00:00
Michael 4a1fb1da12 Hourly process pending queue entries 2022-07-21 05:33:01 +00:00
Michael 1d13574225 Fetching of missing posts is reworked 2022-07-21 05:16:14 +00:00
Michael 7dcd02938d Remove entries from queue / relay detection 2022-07-20 05:37:40 +00:00
Michael ce38e63399 Add and delete entries 2022-07-18 14:03:49 +00:00
Michael 2f462ffa16 Store incoming posts in a queue 2022-07-18 03:31:00 +00:00
Michael 2ddf37f32d Emergency fixes to fix a bunch of fatal errors 2022-07-17 11:47:12 +00:00
Hypolite Petovan eb8237dd89 Remove unused uid parameter in Item::newURI 2022-07-09 07:39:51 -04:00
Roland Häder bf809c9d57
Fixed:
> TypeError: "Argument 2 passed to Friendica\Protocol\ActivityPub\Transmitter::sendContactReject()
> must be of the type int, string given

I followed here here the documentation, may fix #11708
2022-07-06 05:43:00 +02:00
Hypolite Petovan 181c142bb4 Remove overly strict type-hint in ActivityPub\Transmission::createCachedActivityFromItem
- Fix "Return value of Friendica\Protocol\ActivityPub\Transmitter::createCachedActivityFromItem() must be of the type array, bool returned" error
2022-07-02 22:16:59 -04:00
Hypolite Petovan da32fa8fa6 Create ActivityPub\FetchQueue and ActivityPub\FetchQueueItem classes
- These classes are used to flatten the recursive missing activity fetch that can hit PHP's maximum function nesting limit
- The original caller is responsible for processing the remaining queue once the original activity has been fetched
2022-06-25 12:40:54 -04:00
Roland Häder 88870d18be
Changes:
- added some type-hints
- added documentation
2022-06-25 16:48:36 +02:00
Roland Häder b0693c1ad7
Reformatted array 2022-06-25 16:48:35 +02:00
Roland Häder fd8f4269ff
Reformatted code 2022-06-23 17:30:17 +02:00
Roland Häder 0ddb315b23
$id in Transmitter::sendContactAccept() is a string, see Introduction class 2022-06-23 16:48:00 +02:00
Roland Häder 95f9eb34ac
Fixed indenting 2022-06-21 01:29:33 +02:00
Roland Häder fbae0b8bcf
Changes:
- renamed ItemArrayFromMail() to getItemArrayFromMail() to follow naming-convetion
- added missing type-hints
- added missing documentation
2022-06-20 21:22:46 +02:00
Roland Häder ea22e88896
Added documentation 2022-06-20 21:02:34 +02:00
Roland Häder 752953e472
Changes:
- as @MrPetovan pointed out, $actor can be NULL earlier and used later as NULL
- added some missing type-hints
- added missing documentation
- the added @TODO points out to avoid true|false|null for a boolean
2022-06-20 21:00:19 +02:00
Roland Häder 4fb03cf163
Changes:
- fixed a null value handled over to Friendica\Model\APContact::getByURL()
- added missing type-hints
2022-06-20 19:05:02 +02:00
Roland Häder 41f34c4261
Maybe fix for:
"Argument 1 passed to Friendica\Model\ItemURI::getIdByURI() must be of the type string, null given, called in Processor.php line 1219"
2022-06-18 18:30:50 +02:00
Roland Häder 0c9aff8a09 Also need to declare $profile or otherwise an invocation of
Receiver::getReceiverForActor() will fail.
2022-06-17 17:18:31 +02:00
Roland Häder 5c9ce790bf Fixed:
- $object_data['actor'] can be null, but Receiver::getReceivers()'s 2nd
  parameter expect it to be string
2022-06-17 17:18:31 +02:00
Roland Häder c351099c5a Ops, bad type-hint here 2022-06-17 17:18:31 +02:00
Roland Häder c2e889cfae Added more type-hints 2022-06-17 17:18:31 +02:00
Roland Häder 51a7b5c584
Made also this one sweeter (null-coalscing) 2022-06-16 17:36:47 +02:00
Roland Häder e8fee5644b
Ops, syntax errors get unnoticed with a simple editor. :-( 2022-06-16 17:10:02 +02:00
Roland Häder 624e4c192c
Changed to null-coalscing style (??) as sugguested by @MrPetovan 2022-06-16 16:59:54 +02:00
Roland Häder 7814ba4fc4
Fixes for bad invocations of HTML::toBBCode() (1st parameter is now string) 2022-06-16 16:54:50 +02:00
Roland Häder b200874f17
Ops:
- wrong way around (!empty($foo)) is proper
- also needed to be checked on $acitivty['content']
2022-06-16 16:54:50 +02:00
Roland Häder b1e4c0931a
Fixes and type-hints:
- added more checked type-hints as they prevent bad method invocations
- fixed TypeError for HTML::toBBCode() invocations with NULL as first (wrong)
  argument, thanks to @tobias@social.diekershoff.de pointing this out.
2022-06-16 16:54:49 +02:00
Michael d7d8a6ab55 Issue 11625: Don't parse the title through Markdown 2022-06-11 06:50:59 +00:00
Michael cc6192df02 Issue 10926: Transmit pending events to accepted contacts 2022-05-30 20:52:43 +00:00
Michael 74b102b948 Increase the delivery queue counter on drop 2022-05-24 17:28:35 +00:00
Michael 034d838248 Ignore delivery problems with drops 2022-05-24 12:27:35 +00:00
Michael 8969e83134 Use a better query to fetch the relay actor 2022-05-24 08:06:48 +00:00
Michael e68ff3b3bb Return the actor, not the array 2022-05-24 08:02:55 +00:00
Michael b1a2de5cb5 Resubscribe to relay servers 2022-05-24 07:02:42 +00:00
Michael 6ce23bd9ca Fixed code structure 2022-05-20 04:42:10 +00:00
Michael dc16e6d471 The worker is split into several classes 2022-05-19 19:24:21 +00:00
Michael c3fd8b39aa Caching for profiles removed 2022-05-17 12:53:31 +00:00
Michael 4e3e9dc763 Cache the profile as well 2022-05-17 12:46:55 +00:00
Michael 73019284ce Increase cache lifespan / clear cache upon changes 2022-05-17 12:32:25 +00:00
Michael 610f8a086f Use cache key constants 2022-05-17 08:17:41 +00:00
Michael 1ccf22a496 AP endpoints are now cached 2022-05-17 04:58:54 +00:00
Michael 324cce7a19 Issue 11472: Store the "edit" history 2022-05-15 20:21:56 +00:00
Michael 5af7c30026 Issue 11508: Sanitizing date fields for events and polls 2022-05-15 18:00:19 +00:00
Michael 47cd1edb9f Change the featured collection to fix communication issues with Pleroma 2022-05-13 03:42:04 +00:00
Michael 632a98965c Fetch contact via uri-id to improve performance 2022-05-03 08:19:35 +00:00
Michael 060597f619 Store the tag type for the post targets 2022-04-23 11:39:19 +00:00
Michael eb1f38df22 Issue 11427: id values of OrderedCollections have to contain the page number 2022-04-21 04:29:08 +00:00
Michael 834844573b We can now store incoming questions 2022-04-20 06:28:02 +00:00
Michael eaa8163201 Preparation for storing incoming polls 2022-04-15 09:11:50 +00:00
Michael 0d8cf06e4a Experimental feature to enter a custom creation date 2022-04-13 05:31:32 +00:00
Michael 62367923e0 Fix several notices 2022-04-11 18:57:30 +00:00
Michael d15023fe4b Unified JSON exit 2022-04-09 11:58:01 +00:00
Michael d7df0825db We now offer an endpoint for featured posts 2022-04-08 21:25:31 +00:00
Michael 69b7923df2 Use centralized function to fetch query results 2022-04-08 06:04:50 +00:00
Michael 2764859350 Remove unfeatured posts from collection 2022-04-08 04:49:23 +00:00
Michael 75bc4eccb7 Display featured posts for contacts 2022-04-07 21:52:25 +00:00
Michael a1dd299eb3 Preparations for "featured" posts 2022-04-06 13:34:11 +00:00
Michael e6ea015cb4 "Person" is "Account" 2022-04-05 20:06:04 +00:00
Michael c0b3c527d6 Added processing of incoming block notices 2022-04-05 19:14:29 +00:00
Michael dcbca0c6a3 Store "View" activity from Peertube 2022-04-05 07:48:38 +00:00
Michael a5a5a4b603 Cleaned code 2022-04-05 05:53:17 +00:00
Michael 61abc6377d Preparation for "Featured" collection added 2022-04-04 23:07:44 +00:00
Michael e6caed7b5f Merge remote-tracking branch 'upstream/develop' into new-acitivities 2022-04-04 16:05:02 +00:00
Michael aa2a32d16f Store the "EmojiReact" activity 2022-04-04 16:03:53 +00:00
Hypolite Petovan eceaf782cc
Merge pull request #11385 from annando/ap-receiver-unhandled
Added handling of some previously unhandled activities
2022-04-04 10:59:35 -04:00
Michael 1475f53e21 Merge branch 'ap-receiver-unhandled' of github.com:annando/friendica into ap-receiver-unhandled 2022-04-03 07:45:19 +00:00
Michael 39a1745361 Prevent the warning of an Undefined array key "object_object_type" 2022-04-03 07:45:15 +00:00
Michael 029daef997 Only use and accept valid http links as links to an external resource 2022-04-03 07:21:36 +00:00
Michael Vogel 5fe75ed50d
Update src/Protocol/ActivityPub/Receiver.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-04-02 23:04:44 +02:00
Michael 1db3143dc5 added empty object type 2022-04-01 21:27:40 +00:00
Michael 71afbabbd8 Added handling of some previously unhandled activities 2022-04-01 11:20:17 +00:00
Michael 212eba327b Improve the compatibility with Lemmy 2022-03-24 10:57:55 +00:00
Michael 53ba68e222 Remove "blubb" 2022-03-22 12:31:14 +00:00
Michael 45199b498d Prevent further processing of incoming posts when thay are rejected 2022-03-22 12:28:47 +00:00
Hypolite Petovan 9eb6299f19 Check array key existence in ActivityPub\Transmitter::createPermissionBlockForItem
- APContact::getByURL can return empty array
- Address https://github.com/friendica/friendica/issues/11218#issuecomment-1066753232
2022-03-19 03:15:08 -04:00
Michael 0aa229489f Improved function description 2022-03-18 07:24:45 -04:00
Michael 0956d1dd64 Don't send forum posts to the user's followers 2022-03-14 06:07:51 +00:00
Michael 2642996171 Send community posts only to the community 2022-03-13 19:31:21 +00:00
Michael 314bf92ead Added Documentation 2022-03-12 17:29:46 +00:00
Michael 8c778ca02e Improved completion check for AP 2022-03-12 11:17:33 +00:00
Michael c1bb1cf0fc Improved logging 2022-03-12 07:34:30 +00:00
Michael 5eb647585d Issue 11315: Fix for all receivers in "to" 2022-03-11 20:39:03 +00:00
Michael f264923cad Issue 11309: Check if a post is wanted 2022-03-11 14:00:05 +00:00
Michael e0468ac914 API: Improve support for the summary field 2022-03-08 18:32:09 +00:00
Michael 59630a2c82 Improve the name of the "followers" receiver 2022-02-23 20:18:37 +00:00
Michael 00f39cd308 Reverted change 2022-02-19 20:32:19 +00:00
Michael 22952f88ca SImplify code 2022-02-19 19:45:27 +00:00
Michael c867581530 Store the receivers of a post in the tags 2022-02-19 13:31:49 +00:00
Hypolite Petovan c03ff7833b
Merge pull request #11253 from annando/forum3
More rework to make private communities working
2022-02-18 12:19:57 -05:00
Hypolite Petovan c376081d0d Relax comparison with pconfig system.accept_only_sharer value
- DI::pConfig()->get returns a string value, not an integer
- Removed superfluous default values now that we aren't doing strict type checking
2022-02-18 09:32:30 -05:00
Michael 51fb265621 Merge remote-tracking branch 'upstream/develop' into forum3 2022-02-17 07:11:50 +00:00
Michael 9ac24a0f36 More rework to make private communities working 2022-02-16 22:56:55 +00:00
Hypolite Petovan 99979019bf Expand system.accept_only_sharer pconfig value to include previous behavior with likes 2022-02-15 15:54:36 -05:00
Michael d404f15312 Improve local forum distribution 2022-02-14 22:04:33 +00:00
Michael a5a1c81790 Fetch the user id when not provided 2022-02-13 16:42:43 +00:00
Michael ee3a8ccb3b No notifcations for forum / fetch user for fetching content 2022-02-13 05:45:06 +00:00
Michael e394143148 Private forums are now working via ActivityPub 2022-02-12 18:38:36 +00:00
Michael cdee2b44db Avoid thread completion on activities 2022-02-12 13:05:56 +00:00
Hypolite Petovan 1b73e4d267
Merge pull request #11230 from annando/account-type
Use "account-type" instead of "page-flags"
2022-02-09 22:23:55 -05:00
Michael b857c26999 Use "account-type" instead of "page-flags" 2022-02-09 05:56:12 +00:00
Michael f87b80266c Display followers for followers of private forums 2022-02-08 21:05:15 +00:00
Michael 3e51309525 Check for a filled "event-id" field 2022-02-05 16:22:21 +00:00
Michael bd8032f2ba Issue 10365: Event updates are now processed 2022-02-05 11:16:50 +00:00
Michael 11b6c29a3a Fix for PR #11204 - Forums are now correctly detected 2022-02-04 06:02:21 +00:00
Michael 695d6ce461 Issue 10966: Ignore "only sharer" setting for forum accounts 2022-02-03 20:26:30 +00:00
Michael 9eec2bf5f3 Improved support for "Page" type 2022-01-27 17:51:23 +00:00
Michael a8c6160dd7 Improved handling of several object types 2022-01-23 04:40:45 +00:00
Michael 43b9e39c6a Lemmy support added 2022-01-22 15:24:51 +00:00
Philipp 322b7c856c
Merge pull request #11129 from urbalazs/copyright-2022
Update copyright
2022-01-02 09:45:35 +01:00
Balázs Úr e56a53647b Update copyright 2022-01-02 08:27:47 +01:00
Hypolite Petovan 13efe0eff0 Add logging for unexpected empty published key in activity 2021-12-12 21:46:59 -05:00
Hypolite Petovan affd2bfdb7 Suppress Type error exceptions in ActivityPub\Processor 2021-12-12 21:45:31 -05:00
Michael d6c97dbde2 Fix attachment handling 2021-12-08 13:32:20 +00:00
Hypolite Petovan b04809ced4 Initialize $permissions variable in ActivityPub\Transmitter::fetchPermissionBlockFromConversation
- Address https://github.com/friendica/friendica/issues/10757#issuecomment-927361800
2021-12-06 20:16:46 -05:00
Michael 24ee87224f Replaced deprecated "log" function call 2021-11-03 23:19:24 +00:00
Michael 1219a4d00e Issue 10947: Send correct accept-header for AP 2021-11-03 19:06:07 +00:00
Philipp 68046573a4
Restructure Cache to follow new paradigm 2021-10-26 22:11:06 +02:00
Philipp 82a6c78033 Move FSuggest to depository 2021-10-23 21:45:35 -04:00
Philipp 64a336ee8d
Rename method again 2021-10-18 23:32:46 +02:00
Philipp b5d994394e
Fixing PUBLIC usage, Fixing DB-View, Creating tests 2021-10-18 23:32:45 +02:00
Philipp 838cdac5d1
Move ProfileFieldRepository::migrateFromLegacyProfile() & delete old repository 2021-10-18 23:32:41 +02:00
Philipp 6f692b857b
Move ProfileField::selectByContactId() and ProfileField::selectByUserId() 2021-10-18 23:32:39 +02:00
Hypolite Petovan 39aff642aa Deprecate limited-use and potentially confusing [class] BBCode tag
- Replace its usage in Mastodon emoji with an internal tag [emoji]
2021-10-18 02:45:42 -04:00
Michael 27b9da3df5 replace "p" with higher level database functions 2021-10-12 05:53:29 +00:00
Philipp 62eb16e9ad
Migrate PermissionSet to Depository paradigm 2021-10-07 19:53:38 +02:00
Hypolite Petovan 9935e8e711 Remove event.adjust field
- It was confusing and introduced complexity that wasn't worth the unclear gain
2021-10-03 13:42:32 -04:00
Michael 42790fbc1f Don't store emoji images as media but links 2021-10-03 09:42:14 +00:00
Hypolite Petovan 7cdd2d1336 Refactor User::getAvatarUrlForId into getAvatarUrl
- Use user/owner array as parameter instead of uid
- Rename $profile variables to $owner when it's the result of User::getOwnerDataByNick
- Replace Module\Photo::stripExtension with native pathinfo() calls
2021-10-02 19:06:25 -04:00
Hypolite Petovan 72fae04e97 Add revoke follow feature
- Add new follow revoke module
- Add new hooks: revoke_follow, support_follow, support_revoke_follow
- Add link in contact page action menu
2021-10-02 14:01:46 -04:00
Hypolite Petovan e6aef548fb ActivityPub: Update relation when receiving a follow reject message 2021-10-02 13:52:54 -04:00
Michael 3dddea96fa Merge remote-tracking branch 'upstream/2021.09-rc' into user-contact 2021-09-18 20:27:24 +00:00
Hypolite Petovan 24ecf5954c
Merge pull request #10721 from annando/issue-10720-avatar
Issue 10720: Use different path scheme for user avatars
2021-09-18 09:30:08 -04:00
Philipp 644f312896
Fix various Notices 2021-09-18 12:51:06 +02:00
Michael a91e3f5dbc Issue 10720: Use different path scheme for user avatars 2021-09-17 18:36:20 +00:00
Michael d33fea1993 Fix: Use the $uid 2021-09-14 02:00:40 +00:00
Michael e3413cf959 Issue 10706: Publish public custom fields in AP 2021-09-14 01:28:58 +00:00
Michael 9c14eb0c6b Use centralized function to update contact entries 2021-09-10 18:21:19 +00:00
Michael 2bae4dde1f Avoid notices 2021-08-30 12:29:09 +00:00
Hypolite Petovan 1de159a2ae Escape url tags before attempting to add missing mention links in Protocol\ActivityPub\Processor
- Mastodon uses @-sign in profile URLs which wrongly triggered the mention link add in existing mentions links
2021-08-20 03:45:15 -04:00
Hypolite Petovan 9b64035231 ActivityPub: Add support for non-link mentions
- This enables implicit mention removal even if the remote server doesn't add links to mentions in the message body.
- This also enable interactive mentions in the message body when implicit mentions are disabled.
2021-08-18 14:36:21 -04:00
Michael Vogel b855646097
Merge pull request #10580 from MrPetovan/bug/10019-peertube-embed
Simplify attachment processing in Protocol\ActivityPub\Receiver
2021-08-11 13:56:33 +02:00