]> git.mxchange.org Git - friendica.git/commitdiff
Create Event for jot_networks hook
authorArt4 <art4@wlabs.de>
Sat, 22 Feb 2025 19:22:23 +0000 (19:22 +0000)
committerArt4 <art4@wlabs.de>
Sat, 22 Feb 2025 19:22:23 +0000 (19:22 +0000)
src/Core/ACL.php
src/Core/Hooks/HookEventBridge.php
src/Event/ArrayFilterEvent.php
tests/Unit/Core/Hooks/HookEventBridgeTest.php
tests/Unit/Event/ArrayFilterEventTest.php

index e0ff7e9e6a9d870eb763bf2be8ce64a50bd5b382..46d66b9a20f40ffbc72b0c32a81f979c1a41372c 100644 (file)
@@ -11,6 +11,7 @@ use Exception;
 use Friendica\App\Page;
 use Friendica\Database\DBA;
 use Friendica\DI;
+use Friendica\Event\ArrayFilterEvent;
 use Friendica\Model\Contact;
 use Friendica\Model\Circle;
 use Friendica\Model\User;
@@ -285,7 +286,12 @@ class ACL
 
                                }
                        }
-                       Hook::callAll('jot_networks', $jotnets_fields);
+
+                       $eventDispatcher = DI::eventDispatcher();
+
+                       $jotnets_fields = $eventDispatcher->dispatch(
+                               new ArrayFilterEvent(ArrayFilterEvent::JOT_NETWORKS, $jotnets_fields),
+                       )->getArray();
                }
 
                $acl_contacts = self::getContactListByUserId($user['uid'], $condition);
index 943ba7eaa63bdf9dac89d6218fe35e52b4d7f75b..39198cf86cde527ac04e79ad50c3c958bc1e6565 100644 (file)
@@ -58,6 +58,7 @@ final class HookEventBridge
                ArrayFilterEvent::BBCODE_TO_HTML_START   => 'bbcode',
                ArrayFilterEvent::HTML_TO_BBCODE_END     => 'html2bbcode',
                ArrayFilterEvent::BBCODE_TO_MARKDOWN_END => 'bb2diaspora',
+               ArrayFilterEvent::JOT_NETWORKS           => 'jot_networks',
                HtmlFilterEvent::HEAD                    => 'head',
                HtmlFilterEvent::FOOTER                  => 'footer',
                HtmlFilterEvent::PAGE_HEADER             => 'page_header',
@@ -96,6 +97,7 @@ final class HookEventBridge
                        ArrayFilterEvent::BBCODE_TO_HTML_START   => 'onBbcodeToHtmlEvent',
                        ArrayFilterEvent::HTML_TO_BBCODE_END     => 'onHtmlToBbcodeEvent',
                        ArrayFilterEvent::BBCODE_TO_MARKDOWN_END => 'onBbcodeToMarkdownEvent',
+                       ArrayFilterEvent::JOT_NETWORKS           => 'onArrayFilterEvent',
                        HtmlFilterEvent::HEAD                    => 'onHtmlFilterEvent',
                        HtmlFilterEvent::FOOTER                  => 'onHtmlFilterEvent',
                        HtmlFilterEvent::PAGE_HEADER             => 'onHtmlFilterEvent',
index 94cc07e874b670d0da1f63b4c980439ebcba80e7..43734efc959474af2b54add60061254cd35a1797 100644 (file)
@@ -54,6 +54,8 @@ final class ArrayFilterEvent extends Event
 
        public const BBCODE_TO_MARKDOWN_END = 'friendica.data.bbcode_to_markdown_end';
 
+       public const JOT_NETWORKS = 'friendica.data.jot_networks';
+
        private array $array;
 
        public function __construct(string $name, array $array)
index b8fb3c48149cf7fc3c54da84107db83c44c4fbf8..9da695a74cf587fd51ed0a11a231c64c8a981d00 100644 (file)
@@ -47,6 +47,7 @@ class HookEventBridgeTest extends TestCase
                        ArrayFilterEvent::BBCODE_TO_HTML_START   => 'onBbcodeToHtmlEvent',
                        ArrayFilterEvent::HTML_TO_BBCODE_END     => 'onHtmlToBbcodeEvent',
                        ArrayFilterEvent::BBCODE_TO_MARKDOWN_END => 'onBbcodeToMarkdownEvent',
+                       ArrayFilterEvent::JOT_NETWORKS           => 'onArrayFilterEvent',
                        HtmlFilterEvent::HEAD                    => 'onHtmlFilterEvent',
                        HtmlFilterEvent::FOOTER                  => 'onHtmlFilterEvent',
                        HtmlFilterEvent::PAGE_HEADER             => 'onHtmlFilterEvent',
@@ -270,6 +271,7 @@ class HookEventBridgeTest extends TestCase
                        [ArrayFilterEvent::ITEM_PHOTO_MENU, 'item_photo_menu'],
                        [ArrayFilterEvent::PAGE_INFO, 'page_info_data'],
                        [ArrayFilterEvent::SMILEY_LIST, 'smilie'],
+                       [ArrayFilterEvent::JOT_NETWORKS, 'jot_networks'],
                ];
        }
 
index 643f309a8b53429b941cd4a02d0c547f055c3973..ddb7cb4758c323b4e27d0e63fb075935e490562c 100644 (file)
@@ -43,6 +43,7 @@ class ArrayFilterEventTest extends TestCase
                        [ArrayFilterEvent::SMILEY_LIST, 'friendica.data.smiley_list'],
                        [ArrayFilterEvent::BBCODE_TO_HTML_START, 'friendica.data.bbcode_to_html_start'],
                        [ArrayFilterEvent::BBCODE_TO_MARKDOWN_END, 'friendica.data.bbcode_to_markdown_end'],
+                       [ArrayFilterEvent::JOT_NETWORKS, 'friendica.data.jot_networks'],
                ];
        }