51cccd0155
[PLUGIN][ActivityPub] Simplify DB usage
2022-02-20 05:03:40 +00:00
9523927b8e
[PLUGIN][ActivityPub][Model][Note] There may be no attachments, nor tags, nor to, nor cc
2022-02-19 05:46:48 +00:00
ebbd8bf1e4
[PLUGIN][ActivityPub][HTTPSignatures] Fix wrong assumption that sha512 is used in hs2019
2022-02-19 04:49:50 +00:00
7a59d5a002
[PLUGIN][ActivityPub][HTTPSignatures] Validate draft-cavage-http-signatures-11
2022-02-19 04:49:50 +00:00
99f7e7cd79
[PLUGIN][ActivityPub][Model][Note] Handle group scope properly
2022-02-19 04:49:50 +00:00
27635d8ec2
[PLUGIN][ActivityPub][Model][Note] Add name property as note title
2022-02-19 04:49:49 +00:00
0a741903a1
[PLUGIN][ActivityPub][Model][Note] Federate content out
2022-02-19 04:49:49 +00:00
8f60fc4685
[PLUGIN][ActivityPub][Model][Note] Federate attentions out
2022-02-19 04:49:49 +00:00
8cf60275e6
[PLUGIN][ActivityPub][Model][Note] Add support to Pages
2022-02-19 04:49:49 +00:00
e70acd5c3b
[UTIL][HTML] HTML abstraction class was extended with a more specialised Heading class
...
This little abstraction layer made it a bit easier to add a different title to a Note or Actor Feed Collection template, from whichever controller that uses it. Please, bear in mind, that abstract templates such as those found in Components\Collection, may act in a very 'declarative' way upon using them. This makes it difficult to dynamically choose what type of header is used without undergoing a mining operation in the likes of a pyramid of doom. Hence, this _little_ change.
2022-02-16 18:53:08 +00:00
bc63c3727a
[COMPONENT][GROUP] Allow to create a group as private and prioritise group scope on Posting in that context
2022-02-14 05:02:09 +00:00
10d1a7ed2a
[PLUGIN][ActivityPub] Implement Group Inbox POST
2022-02-13 23:15:00 +00:00
66323c5a73
[PLUGIN][ActivityPub] Fix several issues with target and notifications inserted by AP
2022-02-13 23:14:59 +00:00
416451a519
[CORE][Actor] Simplify logic so more is reused between different types of actors
...
Minor bug fixes
2022-02-11 00:27:03 +00:00
1f1524c2b3
[GROUP] Simplify logic by making Actor::Organisation a type of Actor::Group
...
Some minor bug fixes
2022-02-11 00:26:43 +00:00
6b1c6f603e
[CORE][ActorLocalRoles] Improve Roles
2022-01-22 18:47:56 +00:00
bdeb3bcff5
[PLUGIN][ActivityPub] Federate Actor of types other than Person
...
Fix some other minor bugs
2022-01-21 22:05:31 +00:00
59b8bdf99b
[PLUGIN][ActivityPub] Provide ActivityStreams 2.0 responses for every Collection
...
Implemented ActivityPub Outbox
2022-01-11 20:30:25 +00:00
627d92b290
[COMPONENT][Tag] Improve Note Tag Handling and start extracting Circles logic out of the plugin, various bug fixes
2022-01-05 01:30:02 +00:00
9ea230d12b
[COMPONENT][Subscription] Implement subscription handlers
2022-01-03 02:23:06 +00:00
fe087b2217
[PLUGIN][ActivityPub] Accept Undo Follow
2022-01-03 02:23:06 +00:00
def5f36c25
[PLUGIN][ActivityPub][Inbox] Accept Follow Activity
...
Improve how Core Activity is handled in general
2022-01-02 23:50:16 +00:00
046731a05a
[COMPONENT][Avatar] Save title if possible, delete correctly, no early flushes
...
[PLUGIN][ActivityPub] Minor bug fixes in Actor translation
2022-01-02 23:50:14 +00:00
1d1d169a5c
[PLUGIN][ActivityPub] Support federation of Tombstones
2021-12-28 17:10:20 +00:00
3e83387e98
[PLUGIN][DeleteNote] Support ActivityPub
2021-12-28 16:22:38 +00:00
80afc0fa6c
[TEMPLATES][Cards][Profile] Provide both actor uri and url, as well as full mention guidance
2021-12-27 05:08:27 +00:00
c4dacd7626
[COMPONENT][Attachment] Vinculate note information with attachment controllers
...
Various minor bug fixes
2021-12-27 04:56:00 +00:00
a1d9909379
[CORE][VisibilityScope] Use enum type instead of Bitmap
2021-12-26 19:16:56 +00:00
c79b1e4c94
[AUTOGENERATED] Update auto generated code
2021-12-26 19:16:15 +00:00
ec28f23025
[TOOLS] Run CS-fixer on all files
2021-12-26 19:16:15 +00:00
5e42723624
[ENTITY][Note] Include reply_to's targets in child's
2021-12-26 19:16:14 +00:00
91f8c86efa
[PLUGIN][ActivityPub] Support and federate scopes
2021-12-26 19:16:12 +00:00
d4bc1d097d
[ENTITY][NoteTag][COMPONENT][Language] Add language to NoteTag and minor corrections
2021-12-26 06:22:30 +00:00
78fddaf86a
[PLUGIN][ActivityPub] Notify mentions in tags
2021-12-26 06:22:28 +00:00
9d0b39e680
[PLUGIN][ActivityPub] Support tags in notes
2021-12-25 18:04:31 +00:00
36483a6ecd
[COMPONENT][Link] Ignore html anchors that include mention class
2021-12-25 18:04:30 +00:00
3c79d82b80
[PLUGIN][ActivityPub][Note] Support inReplyTo
2021-12-24 02:46:39 +00:00
1865d2b41e
[ActivityPub][Postman] Fill To and CC with mentions
2021-12-24 00:42:02 +00:00
1832397363
[ActivityPub] Include recent actor type attribute in its creation
...
Improve debug logs
2021-12-20 13:32:49 +00:00
a9c73a8f33
[PLUGIN][ActivityPub] Add mention tags
2021-12-20 13:32:48 +00:00
a005a7bcea
[PLUGIN][ActivityPub] Add getUriByObject, so that we can construct activities referring to other known objects (local or foreign)
2021-12-20 13:32:46 +00:00
1d09a02ad6
[FreeNetwork][ActivityPub] Sometimes remote Actors report empty full names in not very explicit manners
2021-12-19 19:04:05 +00:00
a81ac673ac
[CORE][ENTITY] Rename 'Entity::getWithPK' to 'Entity::getByPK'
2021-12-19 19:04:01 +00:00
480a42cca5
[PLUGIN][ActivityPub] Introduce ActivitypubObject. Beware, inside the plugin, an Object can never be an Activity.
...
Many bug fixes and other major changes (interface changed, see EVENTS.md)
2021-12-08 23:24:23 +00:00
330e09f2d3
[PLUGIN][ActivityPub] Only store a new object if there were no previous activities with it before
2021-12-05 21:09:30 +00:00
5196b669b9
[PLUGIN][ActivityPub] Add attachment support to Notes
2021-12-05 21:04:20 +00:00
19b8a7648e
[PLUGIN][ActivityPub] Implement Avatar support
2021-12-05 20:08:14 +00:00
e29e1cc87c
[ENTITY] Rename 'getFrom' to 'getBy'
2021-12-05 17:55:46 +00:00
9512890264
[PLUGIN][ActivityPub] Implement Actor Update
...
Diverse minor bug fixes
2021-12-05 03:11:08 +00:00
778cb57d83
[PLUGIN][ActivityPub] Finish base ActivityStreams 2.0 interface
...
Instructions below
To extend an Activity properties do:
public function onActivityPubValidateActivityStreamsTwoData(string $type_name, array &$validators): bool {
if ($type_name === '{Type}') {
$validators['attribute'] = myValidator::class;
}
return Event::next;
}
The Validator should be of the form:
use ActivityPhp\Type;
use ActivityPhp\Type\Util;
use Plugin\ActivityPub\Util\ModelValidator;
class myValidator extends ModelValidator
{
/**
* Validate Attribute's value
*
* @param mixed $value from JSON's attribute
* @param mixed $container A {Type}
* @return bool
* @throws Exception
*/
public function validate($value, $container): bool
{
// Validate that container is a {Type}
Util::subclassOf($container, Type\Extended\Object\{Type}::class, true);
return {Validation Result};
To act on received activities do:
public function onActivityPubNew{Type}(&$obj): bool {
To add information to Activities being federated by ActivityPub do:
public function ActivityPubAddActivityStreamsTwoData(string $type_name, &$type): bool {
To implement an ActivityStreams 2.0 representation do:
public function onActivityPubActivityStreamsTwoResponse(string $route, arrray $vars, ?TypeResponse &$response = null): bool {
if ($route === '{Object route}') {
$response = ModelResponse::handle($vars[{Object}]);
return Event::stop;
}
return Event::next;
}
2021-12-04 21:05:07 +00:00