Commit Graph

2121 Commits

Author SHA1 Message Date
Michael 22c1873064 Merge remote-tracking branch 'upstream/develop' into loop-prevention 2022-08-06 17:11:04 +00:00
Michael 87a945b295 More prevention of double processing of the same content 2022-08-06 17:06:55 +00:00
Hypolite Petovan bd246b8cc2
Merge pull request #11817 from annando/double-processing
Avoid processing the same activity
2022-08-05 09:04:33 -04:00
Michael 8b698b183d Abort when public item cannot be inserted 2022-08-05 05:48:20 +00:00
Michael 8227367522 Remove test code, add documentation 2022-08-05 04:45:31 +00:00
Michael f222e9d278 Avoid to provess the same activity 2022-08-04 21:52:10 +00:00
Hypolite Petovan 2e00797ebc
Merge pull request #11816 from annando/fetch-parents
New option to disable the fetching of parents
2022-08-04 16:00:00 -04:00
Michael 06f7244280 New option to disable the fetching of parents 2022-08-04 19:32:36 +00:00
Roland Häder 8105668caf
Added missing 'private' field, see Processor::processContent() where it is needed 2022-08-04 10:50:44 +02:00
Michael e82ef8890b Only process entries for existing posts 2022-08-03 05:14:07 +00:00
Michael 3463e34693 Don't always fetch parent posts 2022-08-03 04:51:57 +00:00
Michael 23ef4a99bb Changes after code review 2022-08-03 04:31:56 +00:00
Michael f2eec66240 Hopefully fixes loops during message processing 2022-08-03 03:38:03 +00:00
Michael c8d1bf4cdf Code standards and updated database documentation 2022-08-01 07:06:30 +00:00
Michael 81b244f91e Option to activate or deactivate the background fetching 2022-08-01 06:59:20 +00:00
Michael f7ec8d5b8e Improved log message 2022-08-01 05:59:59 +00:00
Michael 7d5b4808cd Merge branch 'fetch' into fetch-cache 2022-08-01 05:57:59 +00:00
Michael 4be6e9a27d Cache if an activity has recently been fetched 2022-08-01 05:56:55 +00:00
Michael 6c7dfd6958 New table to control the fetching process 2022-08-01 04:48:49 +00:00
Michael b6da15557b The post-reason / protocol is now filled in most cases 2022-07-31 15:54:35 +00:00
Michael 06a124338a Only store the inbox-queue on activated background processing 2022-07-31 08:10:47 +00:00
Michael 8b4bf890f8 Issue 11798: Handling of empty author 2022-07-30 05:30:08 +00:00
Michael f6d11e8401 Issue 11800: Remove entry from queue in any case. 2022-07-30 04:43:18 +00:00
Michael 6383b07022 Don't add zero as receiver 2022-07-29 22:56:53 +00:00
Michael f9bf2424b1 Merge remote-tracking branch 'upstream/develop' into post-reason 2022-07-29 21:29:15 +00:00
Michael 699152e15e Add more post reasons 2022-07-29 21:28:22 +00:00
Michael 0971bcf165 Make the tests happy 2022-07-29 16:05:04 +00:00
Michael 81aaacc67d Improvements for the "post-reason" 2022-07-29 14:17:53 +00:00
Roland Häder 95ac2aa54b
Fixed a possible NULL value (not valid, at least empty string) 2022-07-29 12:45:21 +02:00
Roland Häder 37bda3e5fb
Changes:
- fixed wrong type-hint uid => int
- added returned type-hint
- added some documentation
- formatted arrays a bit
2022-07-29 00:08:38 +02:00
Michael b63ad63c29 Config for receiver / fix fatals 2022-07-28 21:16:42 +00:00
Michael f0499e7269 Use negative caching 2022-07-28 20:25:38 +00:00
Michael 1aacff4ce1 Fix fatal error 2022-07-28 19:35:25 +00:00
Michael d12c9a8f58 Caching for fetched activities 2022-07-28 19:05:04 +00:00
Michael a27274b3b4 Avoid loops at deletion / decoupling for relay posts 2022-07-28 05:29:47 +00:00
Michael 3c71392f9e Avoid endless loop while deleting 2022-07-27 21:57:05 +00:00
Michael 505191dec5 Decouple the processor from the receiver 2022-07-27 20:59:42 +00:00
Michael 3af55de978 Issue 11776 - process replies via a worker task 2022-07-27 20:03:28 +00:00
Michael 86105635ca Improved message handling / new activity relay handling 2022-07-27 17:39:00 +00:00
Michael b546173747 IMproved handling of untrusted posts 2022-07-24 21:58:09 +00:00
Michael 5ab94ea921 Option to store untrusted entries 2022-07-24 19:31:31 +00:00
Michael 51cc1f679f Added trust / isActivityGone 2022-07-24 14:26:06 +00:00
Michael 55b6a89c7c Optimizing 2022-07-24 13:49:57 +00:00
Michael 6abb4d40d6 Handle changed parents 2022-07-24 13:09:35 +00:00
Michael 06280aa5a3 Recursively delete failed worker tasks 2022-07-24 09:26:52 +00:00
Michael 073695b33c Funkwhale context file moved 2022-07-23 23:10:47 +00:00
Michael 6a19639ac2 Standards 2022-07-23 14:10:07 +00:00
Michael 5d6eb4670a We now store the conversation as well 2022-07-23 13:58:14 +00:00
Michael abf39ff9cf Merge remote-tracking branch 'upstream/develop' into enqueue-posts 2022-07-23 12:55:34 +00:00
Michael 8c602071c2 Bookwyrm posts now work 2022-07-23 12:50:15 +00:00
Michael 7eb410bed7 Conversation/context is now stored 2022-07-23 06:52:43 +00:00
Michael 54cebf5a88 Remove test code 2022-07-21 12:42:26 +00:00
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
Hypolite Petovan 650e05bcb5
Merge pull request #11758 from Quix0r/fixes/wrong-variable-name
Fixed variable name + used empty()
2022-07-20 07:55:38 -04:00
Roland Häder 4b5ae32ec6
Changes:
- ops, fixed variable name (thanks to @annando)
- also used empty() for an empty array (and false/null)
2022-07-20 11:54:28 +02:00
Michael Vogel fc52296a77
Merge branch 'develop' into diaspora 2022-07-20 08:12:30 +02:00
Michael 138a15404f Fix processing of incoming Diaspora messages 2022-07-20 05:38:53 +00:00
Michael 7dcd02938d Remove entries from queue / relay detection 2022-07-20 05:37:40 +00:00
Roland Häder 1fbda27aad
Changes:
- rewrote a lot local variables to an array and returned it instead of an
  anonymous array
- added more debug/warning logging in case something went wrong -> lesser guessing! ;-)
- changed double-quote to single
2022-07-20 01:08:15 +02:00
Roland Häder 2ef0566ba5
Fixed:
- "Undefined variable: contact in .../src/Protocol/Diaspora.php on line 4097
Trying to access array offset on value of type null in .../src/Protocol/Diaspora.php on line 4097"
- see https://github.com/friendica/friendica/issues/11632#issuecomment-1189465336
2022-07-19 23:46:09 +02: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
Philipp 6175f9086e
Merge pull request #11747 from annando/fixes
Emergency fixes to fix a bunch of fatal errors
2022-07-17 16:34:53 +02:00
Michael 6882e70024 Match the documentation 2022-07-17 13:00:34 +00:00
Michael 2ddf37f32d Emergency fixes to fix a bunch of fatal errors 2022-07-17 11:47:12 +00:00
Roland Häder cb7f52cc6a
Fixed:
- $item is the proper array here,
- see https://github.com/friendica/friendica/issues/11632#issuecomment-1186119430
2022-07-16 12:19:09 +02:00
Hypolite Petovan 74991d1f95 Fix type hint typo in Protocol\Email::messageGetPart
- Address https://github.com/friendica/friendica/issues/11724
2022-07-11 23:05:13 -04: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
Philipp e594656a48
Merge pull request #11684 from MrPetovan/bug/11651-ap-fetch-queue
Create ActivityPub\FetchQueue and ActivityPub\FetchQueueItem classes
2022-06-26 13:36:19 +02:00
Hypolite Petovan 91f5a7cc6b Convert potential spaces in Memcache(d) key names
- Address https://github.com/friendica/friendica/issues/11630#issuecomment-1166475036
- Add test for space in cache keys
2022-06-26 07:30:30 -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 82bb36e13d
Changes:
- Made Item::guidFromUri()'s $host parameter optional (allowing null)
- added some type-hints
- added documentation
- this may fix reported issue in #11630
2022-06-24 03:17:57 +02:00
Roland Häder fd8f4269ff
Reformatted code 2022-06-23 17:30:17 +02:00
Roland Häder 3f74a59f73
Added some type-hints 2022-06-23 17:30:14 +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 636fef26f1
Maybe this fixes missing array element 2022-06-23 07:40:49 +02:00
Roland Häder 7eefb9aed8
Changed:
- empty() is maybe superflous here, still I would prefer a code style that is
  written explicitly and not rely on "magic casting"
2022-06-22 18:57:01 +02:00
Roland Häder b996712ef7
Images::getInfoFromURL[Cached]() will both return empty arrays on error and
that needs to be reflected here, too.
2022-06-22 17:20:59 +02:00
Roland Häder 101cd2dd10
Changes:
- added some documentation
- fixed some documentation
- changed more double-quotes to singl
2022-06-22 16:14:14 +02:00
Roland Häder ba45e59313
Changes:
- added more type-hints
- added missing documentation
- Email::send() now returns what mail() returns (bool)
2022-06-22 14:36:48 +02:00
Roland Häder 2dd7d465e8
Changes:
- added more type-hints
- updated documentation
- changed double-quotes to single
2022-06-22 14:36:47 +02:00
Roland Häder 74ab7648c6
Changes:
- addHubLink()'s 2nd parameter is DOMElement
- added more type-hints
- converted double-quotes to single
2022-06-22 14:36:46 +02:00
Roland Häder abd0d9f3fd
Changes
- added type-hints
- added some documentation
- added default: block for unknown 'rel' value
- changed return type void to empty array
2022-06-22 14:36:45 +02:00
Roland Häder 77c37ff2db
Fixed:
- Uncaught Exception TypeError: "Argument 3 passed to
  Friendica\Protocol\DFRN::createActivity() must be of the type string, null
  given, called ..."
2022-06-21 13:47:37 +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 0c12e947dd
Changes:
- null was 2nd argument's value before, an empty string is basically the same here
2022-06-20 20:01:59 +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 a0c8fc6d6e
Changes:
- added more type-hints
2022-06-20 02:48:02 +02:00
Roland Häder d276f2c62b
Changes:
- added type-hints
- changed some double-quotes to single
2022-06-20 01:00:29 +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 7cbb818c93
Set type-hint for parameter $data to SimpleXMLElement as $fields in dispatch()
is the same and being handled over.
2022-06-18 05:19:24 +02:00
Roland Häder 89302d0843
Some outside code relies on returned "false" 2022-06-18 05:06:18 +02:00
Roland Häder aaf5c323b6
Fixed indenting 2022-06-18 05:04:14 +02:00
Roland Häder adb4aea6ad
Changes:
- added some type-hints
- replaced most double-quotes (only Diaspora.php, later more) with single
- added some documentation
- normalized indenting in Diaspora.php (I hope I got all?)
2022-06-18 05:03:10 +02:00
Roland Häder a770634b95 Ops, wrong type 2022-06-17 17:18:31 +02:00
Roland Häder 36d56a4041 Continued:
- changed back to 'return false;' as other methods heavily rely on false instead
  of an empty array as pointed out by @heluecht@pirati.ca
- $fetched_contact should be initialized as an empty array, let's not make this
  code more crazier than it already is (see APContact::getByURL())
2022-06-17 17:18:31 +02:00
Roland Häder 605e7d55b3 Continued:
- added more type-hints
- some methods in Diaspora returned void but integer was documented so I
  changed it to -1 to have a proper type-hint
2022-06-17 17:18:31 +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 a587217f47 Fixed "Argument 4 passed to Friendica\Protocol\DFRN::processVerbs() must be of the type bool" 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
Hypolite Petovan 3842f02b02
Merge pull request #11402 from annando/featured-endpoint
We now offer an endpoint for featured posts
2022-04-11 11:17:56 -04: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
Hypolite Petovan 4eecf733e1
Merge pull request #11389 from nupplaphil/feat/http_client_arg
Introduce explicit HttpClient "Accept" parameter
2022-04-08 15:05:40 -04: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
Philipp 04866195b4
Remove accept parameter for head/post again 2022-04-03 19:33:09 +02: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
Philipp e299fc67c8
Introduce "accept_header" as specific argument to the http client 2022-04-02 21:16:53 +02:00
Philipp 73c3b21665
Move ACCEPT constants to own "enum" class 2022-04-02 20:26:11 +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 2ca51f752d Use appropriate "accept" values 2022-03-30 14:39:53 +00:00
Michael 3e21b035b7 Added logging 2022-03-29 17:26:31 +00:00
Michael 1fae0123ec Some more "accept" parameters are added 2022-03-29 06:24:20 +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 7940b31685 Don't use the GUID value directly 2022-03-14 21:09:14 +00: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 ca086b880b Some small improvements for importing feeds 2022-03-13 15:29:07 +00:00
Michael 314bf92ead Added Documentation 2022-03-12 17:29:46 +00:00
Michael fb13890341 Added parameter values 2022-03-12 15:27:56 +00:00
Michael 8c778ca02e Improved completion check for AP 2022-03-12 11:17:33 +00:00
Michael 56cd98b38b Further improved logging 2022-03-12 07:48:31 +00:00
Michael c1bb1cf0fc Improved logging 2022-03-12 07:34:30 +00:00
Michael 5a16a424ac Issue 11309: improved check for wanted posts 2022-03-12 07:08:10 +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
Hypolite Petovan c13ae36256
Merge pull request #11305 from annando/api-spoiler
API: Improve support for the summary field
2022-03-08 15:48:46 -05:00
Michael e0468ac914 API: Improve support for the summary field 2022-03-08 18:32:09 +00:00
Michael 8039ab731f Type hints reverted 2022-03-08 18:26:59 +00:00
Michael Vogel acba7d25a0
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-03-06 14:15:59 +01:00
Michael 31dbdd3677 variable type for the return value is added 2022-03-06 12:21:27 +00:00
Michael Vogel 1ec1adf904
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-03-06 05:49:49 +01:00
Michael 421dd028ce Fix storing mail settings 2022-03-05 13:08:09 +00:00
Hypolite Petovan 6a1f9a7fa3 Move unfollow protocol to worker task
- Add uid parameter to unfollow hook
- Rework and unify Contact::unfollow, Contact::removeSharer and Contact::terminateFriendship
- Add missing twitterUser property to Twitter\Friendships\Destroy module
2022-02-24 09:35:54 -05:00
Hypolite Petovan 52f5d924b7 Replace remaining instances of DBA::update('contact') with Contact::update()
- This was breaking the synchronisation between the contact and user-contact tables
2022-02-24 09:35:54 -05:00
Michael 59630a2c82 Improve the name of the "followers" receiver 2022-02-23 20:18:37 +00:00
Michael 311c1fdd81 Avoid warning and notice 2022-02-20 05:14:36 +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 29d83c0ffb Block communication with Diaspora for communities 2022-02-15 07:08:02 +00: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 9a764516d0 Use the "contact-type" instead of "forum" or "prv" 2022-02-09 06:52:16 +00: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
Hypolite Petovan 121e40357c
Merge pull request #11209 from annando/issue-10365-Events
Issue 10365: Event updates are now processed
2022-02-05 12:08:00 -05:00
Michael 3e51309525 Check for a filled "event-id" field 2022-02-05 16:22:21 +00:00
Michael 4914ee423f Issue 10914: Display events in the feed in the author's timezone 2022-02-05 11:29:50 +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 ad526f5ad2 set the post-type to "poll" for incoming poll posts 2022-01-23 05:50:39 +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
Michael a97bfb512a Issue 11104: Don't cann the addons on Diaspora reshare 2021-12-20 21:16:00 +00: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 3d65809a82 Fix media handling upon creation and display 2021-12-04 04:03:18 +00:00
Michael 4a90e6b1f0 Test code removed 2021-12-02 06:36:09 +00:00
Michael bd2ee581d3 Diaspora reshares via API are fixed now 2021-12-02 06:33:19 +00:00
Michael eb1b2256a0 Removed and replaced deprecated functionalities 2021-11-07 14:00:47 +00:00
Michael 63da4a75e9 The boot.php had been cleared of most functions 2021-11-04 20:29:59 +00: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 409d909d0f
Restructure HTTPClient for new paradigm 2021-10-28 20:01:03 +02:00
Philipp 68046573a4
Restructure Cache to follow new paradigm 2021-10-26 22:11:06 +02:00
Michael Vogel 81c9d8d479
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2021-10-25 21:27:21 +02:00
Michael 87673fd0c5 Merge remote-tracking branch 'upstream/develop' into logging 2021-10-25 18:56:29 +00:00
Philipp 82a6c78033 Move FSuggest to depository 2021-10-23 21:45:35 -04:00
Michael a497bd3a3d Merge remote-tracking branch 'upstream/develop' into logging 2021-10-22 06:06:39 +00:00
Philipp 44627a0b12
fix intro.cid and intro.suggest-id 2021-10-21 21:57:23 +02:00
Philipp 7d7d310cc4
Replace almost every Introduction places 2021-10-21 21:49:21 +02:00
Michael f6faae5bb1 Replace deprecated log calls 2021-10-20 18:53:52 +00:00
Michael 2f1f6f6fb2 Replace "notification" call with new function, removing enotify.php 2021-10-19 19:45:36 +00: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 f1d3f60499 Remove "fcontact" from suggestions 2021-10-17 20:19:02 +00:00
Michael 27b9da3df5 replace "p" with higher level database functions 2021-10-12 05:53:29 +00:00
Hypolite Petovan 80a8cd86c4
Merge pull request #10836 from nupplaphil/feat/depository_permissionset
Migrate PermissionSet to Depository paradigm
2021-10-08 09:39:39 -04:00
Philipp 62eb16e9ad
Migrate PermissionSet to Depository paradigm 2021-10-07 19:53:38 +02:00
Michael ab17fbf6b2 Unneeded "ProxyUtils" renamed to "Proxy" 2021-10-05 20:18:19 +00:00
Michael d20aa5f557 The legacy reshare functionality is removed 2021-10-05 18:58:35 +00:00
Hypolite Petovan a4706e9521 Trim XML before emptiness check in Protocol\Feed::import
- Address https://github.com/friendica/friendica/issues/10791
2021-10-03 19:32:20 -04: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
Hypolite Petovan 6db211568a Remove most calls to date_default_timezone_* calls
- It was wrongly used to set the node-wide ot user-specific timezone
- It is now fully managed from the App object
- Add a static variable to DateTimeFormat maintain the convenient local() method
2021-10-03 13:42:31 -04:00
Michael 763e264196 More "q" calls have been replaced 2021-10-03 15:02:20 +00:00
Michael 9961943b73 Code Style: Replace "AS" with "as" 2021-10-03 10:34:41 +00: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
Tobias Diekershoff 8dc4499bcf
Merge pull request #10797 from annando/diaspora-deprecated
Replaced deprecated code from the Diaspora implementation
2021-10-02 19:19:40 +02:00
Michael e5ffda3478 Replaced deprecated code from the Diaspora implementation 2021-10-02 17:11:54 +00:00
Michael 865006682a Merge remote-tracking branch 'upstream/develop' into user-contact 2021-10-02 11:57:43 +00:00
Hypolite Petovan 9d77958247 Ensure parent exists before adding reply to elements in OStatus and Feed
- Address https://github.com/friendica/friendica/issues/10474#issuecomment-927118628
2021-09-26 08:15:07 -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 Vogel a689db7b64
Update src/Protocol/ActivityPub.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2021-09-14 23:22:57 +02:00
Michael b18f92ea72 Fixed indendation 2021-09-14 20:46:59 +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 ce6f6978bd Use the correct function is adviced ... 2021-09-03 04:20:32 +00:00
Michael 64fd94fc74 Issue 10651: remote comments appeared as own posts 2021-09-02 05:57:50 +00:00
Michael 2bae4dde1f Avoid notices 2021-08-30 12:29:09 +00:00
Philipp b76634ea0c
Catch TransferExceptions for HTTPClient::finalUrl() in case the headers are empty 2021-08-29 13:37:08 +02:00
Philipp 13a91e63aa
Rename DI::httpRequest() into DI::httpClient() 2021-08-25 21:54:54 +02:00
Philipp 505100bdd7
Rename HTTPRequestOptions to HTTPClientOptions 2021-08-25 21:45:15 +02:00
Philipp 0cafa871f1
Use HTTPRequestOptions constants for HTTPClient::get() 2021-08-25 21:31:30 +02:00
Philipp 2356221aba
Fixup HTTP headers for httpClient requests 2021-08-25 14:22:43 +02:00
Philipp 803c1d71de
Fix IHTTPResult::getHeader()
- Now returns a string array, like expected
- Fix usages
- Fix dataset
2021-08-20 19:58:42 +02:00
Philipp dee1899628
Fix IHTTPResult::getHeader/s()
- Split functionality "getHeader()" and "getHeaders()" analog to IMessageInterface::getHeader/s()
- Fix functionality at various places - Adapt CurlResultTest
2021-08-20 19:58:42 +02: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
Michael ce46ab2573 The Matrix and XMPP address is now transported via AP as well 2021-08-10 23:49:09 +00:00
Hypolite Petovan 56ee1a211f
Merge pull request #10592 from annando/event
Simplify event storing
2021-08-10 09:00:41 -04:00
Michael 8e074a5fe4 Simplify event storing 2021-08-10 10:24:14 +00:00
Michael 56c00ea42d Handles PHP Notice: Undefined index: addr in src/Protocol/Diaspora.php on line 3091 2021-08-10 03:50:43 +00:00
Hypolite Petovan d7e5814b12 Simplify attachment processing in Protocol\ActivityPub\Receiver
- Remove indexing attachments by mediatype for later sorting
2021-08-09 19:29:12 -04:00
Michael 51d549639d Fix profile probing via Pleroma 2021-08-09 06:56:41 +00:00
Michael 6a23b17c95 Respect the postopts values for scheduled posts 2021-08-06 18:49:17 +00:00
Tobias Diekershoff 0e54d35f65
Merge pull request #10575 from MrPetovan/bug/10019-peertube-embed
Extract MP4 video URL from PeerTube ActivityPub metadata to enable video embed
2021-08-05 18:11:07 +02:00
Hypolite Petovan f194d167b0 Extract MP4 video URL from PeerTube ActivityPub metadata to enable video embed
- This MP4 video URL is located in the tags of the streaming URL link element that we don't support yet
2021-08-05 10:51:42 -04:00
Michael eec6cdf01b Avoid a database query when possible 2021-08-05 08:51:39 +00:00
Michael 835152d418 Simplified signature creation 2021-08-05 08:42:46 +00:00
Michael 1c5baddcd2 Don't use the system user for participation messages 2021-08-04 12:35:03 +00:00
Michael ec3eead034 Don't set the pconfig values on manual mode 2021-08-03 05:39:04 +00:00
Hypolite Petovan dfb043ce60 Add Exception for empty User::getOwnerDataById(0 return case in Protocol\ActivityPub\Transmitter::getProfile()
- Address https://github.com/friendica/friendica/issues/10473#issuecomment-882781552
- Add try-catch blocks to all references of Protocol\ActivityPub\Transmitter::getProfile()
2021-07-27 16:46:08 -04:00
Michael 8dd21d82f5 Fix possible fatal error when body is null 2021-07-27 12:25:38 +00:00
Michael afe3c8954c Simplified functionality to load the profile in the sidebar 2021-07-23 12:39:37 +00:00
Michael 71f53c946f New function to replace mentions with nicknames 2021-07-22 09:13:39 +00:00
Michael bb5f738619 Fix for Mastodon falsely adding previews to mentions 2021-07-22 04:50:01 +00:00
Michael d2408c1f1b Merge remote-tracking branch 'upstream/develop' into loop-prevention 2021-07-19 12:07:34 +00:00
Hypolite Petovan 0dd94e8fd5
Merge pull request #10515 from annando/event-handling
Improved event storing / improved performance when fetching events
2021-07-19 04:00:53 -04:00
Michael 58cec97358 Merge remote-tracking branch 'upstream/develop' into loop-prevention 2021-07-19 07:51:29 +00:00
Michael 424a85bb94 Fetch local data without HTTP requests 2021-07-18 18:54:25 +00:00
Michael d8bf9c4601 Prevent loop also when fetching the outbox 2021-07-18 16:42:55 +00:00
Michael 2030691f9f Improved event storing / improved performance when fetching events 2021-07-18 15:05:46 +00:00
Michael f62f82df75 Move ActivityPub endpoints to an AP class 2021-07-17 20:28:46 +00:00
Michael 3a5523820c Legacy DFRN transport layer is removed 2021-07-15 13:28:32 +00:00
Michael d267ba999c We now use the new account-user-view (and fixed the function name) 2021-07-11 09:39:34 +00:00
Michael 07d2dfcd60 Some more "convertForUriId" replacements 2021-07-10 12:58:48 +00:00
Michael de39091a79 Revert some test changes 2021-07-09 19:32:06 +00:00
Michael 90897f36ca Fix notices because of unknown Hubzilla activity type 2021-07-09 19:30:41 +00:00
Michael d6c1e1fd1c Fix "Undefined index: reply-to-id" 2021-07-09 18:10:48 +00:00
Michael d8974c9a2a Function renamed to better reflect the functionality 2021-07-09 06:29:24 +00:00
Michael e72e74f7db Fixed function name 2021-07-08 15:44:55 +00:00
Michael f29bd23ea8 New function to convert BBCode for a given ID 2021-07-08 13:47:46 +00:00
Michael 37a76e70ef Providing the uri-id to "convert" when possible 2021-07-06 12:34:48 +00:00
Michael 3deb384c54 Replace the proxify function 2021-07-05 21:35:57 +00:00
Michael 90588ddb8e Avoid proxyfying images that are removed or replaced later 2021-07-05 07:00:35 +00:00
Michael e519b782fd Simplified proxy handling 2021-07-04 21:24:49 +00:00
Michael f0268b57be Use "getOwnerDataById" and "getOwnerDataByNick" to fetch owner data 2021-07-04 17:25:08 +00:00
Michael 5ee0f6e5e1 Transmit preview link 2021-07-04 06:30:54 +00:00
Hypolite Petovan c63dfa38c1
Merge pull request #10451 from annando/contact-path
Some more places changed to the new contact avatar path format
2021-06-30 21:24:27 -04:00
Michael 16de3454bc Change logo path 2021-06-30 20:00:57 +00:00
Michael b46ad72651 Fix media size 2021-06-30 19:55:28 +00:00
Michael 98dd4e889a Some more contact paths 2021-06-30 18:44:41 +00:00
Michael e2dc36a691 AP: Support "discoverable" 2021-06-30 05:40:11 +00:00
Michael 19aef93560 Unified avatar paths 2021-06-29 20:26:58 +00:00
Michael df05d6b52a Transmit mediaType for headers as well / use blank image for empty header 2021-06-22 13:58:29 +00:00
Michael dd39b3203b Transmit mediaType, preparation for header image 2021-06-22 03:17:41 +00:00
Michael a2b1819721 Fix notice "Undefined index: url in .../src/Protocol/ActivityPub/Transmitter.php on line 611" 2021-06-17 18:48:23 +00:00
Michael fe07dc828b Fix noscrape publishing and pulling, added header 2021-06-17 11:23:32 +00:00