Commit Graph

5461 Commits

Author SHA1 Message Date
1832397363
[ActivityPub] Include recent actor type attribute in its creation
Improve debug logs
2021-12-20 13:32:49 +00:00
ed67da89dc
[TAGS] Fix some minor logic issues with Actor Tags and Circles 2021-12-20 13:32:49 +00:00
630e22579e
[PLUGIN][RepeatNote] Add support for onGSVerbToActivityStreamsTwoActivityType 2021-12-20 13:32:48 +00:00
8d1e000574
[PLUGIN][Favourite] Add support for onGSVerbToActivityStreamsTwoActivityType 2021-12-20 13:32:48 +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
ff38efd5f1
[PLUGIN][ProfileColor] Cache results 2021-12-13 15:49:52 +00:00
5dd9e5a3d7
[PLUGIN][RepeatNote] Add Notifications and ActivityPub support
Minor bug fixes
2021-12-10 04:05:41 +00:00
0ee4cc7709
[PLUGIN][Favourite] Notify when actor favours a note 2021-12-10 04:05:35 +00:00
4992ff153b
[PLUGIN][RepeatNote] Fill activity log and fix some bugs
Refactored the plugin.
2021-12-10 04:05:26 +00:00
01689edc66
[PLUGIN][Favourite] Report already favoured or unfavoured 2021-12-10 04:05:22 +00:00
1be4b3d481
[EVENT][FilterNoteList] Use an in-out parameter, so multiple events can act on this 2021-12-09 21:39:00 +00:00
26b95fae96
[PLUGIN][StemWord] Remove the country part from the code. Ignore if no stemmer is found for the given language 2021-12-09 16:23:09 +00:00
774e32f834
[PLUGINS][TreeNotes] Working, however feed is still not formatted
[ENTITY][Note] Fix for getReplies()
2021-12-09 00:15:47 +00:00
64122a9612
[PLUGIN][Favourite] Add ActivityPub Inbox support 2021-12-08 23:24:25 +00:00
5025901c86
[PLUGIN][Favourite] Log changes into Activity 2021-12-08 23:24:25 +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
df92b0d225
[COMPONENTS][Conversation] Refactored Reply plugin into Conversation component
[PLUGIN][TreeNotes] TODO: think it is broken, perhaps a problem of the conversation arguments passed in note card template
2021-12-08 22:48:04 +00:00
614e02b4c6
[PLUGIN][TagBasedFiltering] Add to user settings page and split adding tags from note/actor from editing blocked 2021-12-08 19:57:36 +00:00
d52a043705
[TWIG] Restructure user settings template, making it much easier to use and extend 2021-12-08 19:57:35 +00:00
3b8a3e953d
[CONTROLLER][FeedController] Make post processing happen more automatically, reducing noise in individual controllers. Now it's enough to simply extends App\Core\Controller\FeedController, to implement a feed 2021-12-08 10:20:37 +00:00
7783922b2e
[CONTROLLER][PLUGIN][Directory][Favourite][Reply][CORE][FeedController] Refactor to new FeedController 2021-12-07 23:34:32 +00:00
c131e47176
[COMPONENT][Tag] Remove wrong canonicalization of tags in tag feed controller. Fix display of original tags 2021-12-07 20:10:59 +00:00
4657a1d6a5
[COMPONENTS][Tag] Fix actor tag template
[PLUGINS][RelatedTags] Fix actor tag template
2021-12-07 15:35:27 +00:00
546c5c84fd
[COMPONENTS][Tag] Actor/Note tag template polished
[PLUGINS][RelatedTags] Disable rendering of template when no results are found
2021-12-06 22:22: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
2a161c9c66
[PLUGIN][TagBasedFiltering] Block actor tags, but don't block notes from the current actor 2021-12-05 19:18:57 +00:00
9f445632b2
[PLUGIN][TagBasedFiltering] Expand to allow filtering by actor tags 2021-12-05 17:55:49 +00:00
e29e1cc87c
[ENTITY] Rename 'getFrom' to 'getBy' 2021-12-05 17:55:46 +00:00
c40866ecf6
[PLUGIN][TagBasedFiltering] Add TagBasedFiltering plugin, which allows filtering feeds by note tags and (soon) actor tags 2021-12-05 17:54:58 +00:00
1457aa8220
[UI][PLUGIN][DeleteNote][EVENT] Add 'AddExtraNoteActions' event, which can be leveraged to add extra actions on each note, but which are normally collapsed 2021-12-05 17:54:58 +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
044649c745
[PLUGIN][VideoEncoder] Some videos don't have images (video stream), only audio, handle that 2021-12-03 03:32:44 +00:00
582519e13e
[COMPONENT][Attachment] Do not show download links for non-local attachments 2021-12-03 03:32:43 +00:00
ff5f346fec
[PLUGINS][Oomox] Further checks done when handling form requests. Improved documentation, fixed typos and diminished repeated calls 2021-12-03 03:32:38 +00:00
b66873e289
[PLUGIN][StoreRemoteMedia] Do not save empty files 2021-12-03 01:16:57 +00:00
70ed04a7db
[COMPONENT][Link] Fix some minor issues with empty headed links, typo in event handler's name, and refactor entity to inside component 2021-12-03 00:46:52 +00:00
bded039282
[PLUGIN][Embed] try catch absence of favicon 2021-12-02 22:49:27 +00:00
2e11001b8f
[PLUGIN][Embed] Fix links 2021-12-02 22:21:49 +00:00
2445b5318d
[PLUGIN][Embed] Make it work when content-length header is not provided 2021-12-02 21:26:06 +00:00
bfec10fc95
[COMPONENT][Attachment][Entity][Attachment] getThumbnail can be null 2021-12-02 21:26:05 +00:00
12557a1e16
[PLUGINS][Oomox] Reset theme colors added 2021-12-02 20:26:27 +00:00
eeaad19754
[Attachment] Move Controller and Entities to a Component
There's no problem in having the templates in the core
2021-12-02 15:14:07 +00:00
37ef8cddfa
[ENTITY][Note] Add getLanguageLocale() and getNoteLanguageShortDisplay()
[CARDS][Note] Render note's language short display

[PLUGINS] Bring back titles to Reply, Repeat and Favourite actions
2021-12-02 15:05:49 +00:00
d044039272
[FreeNetwork] Initial multi-protocol support 2021-12-02 14:23:21 +00:00