mirror of
https://github.com/friendica/friendica
synced 2025-03-03 19:48:26 +00:00
Create event for page_info_data hook
This commit is contained in:
parent
ce4e77fbb6
commit
0b3915322b
5 changed files with 13 additions and 2 deletions
|
@ -7,8 +7,8 @@
|
|||
|
||||
namespace Friendica\Content;
|
||||
|
||||
use Friendica\Core\Hook;
|
||||
use Friendica\DI;
|
||||
use Friendica\Event\ArrayFilterEvent;
|
||||
use Friendica\Network\HTTPException;
|
||||
use Friendica\Util\ParseUrl;
|
||||
use Friendica\Util\Strings;
|
||||
|
@ -90,7 +90,11 @@ class PageInfo
|
|||
*/
|
||||
public static function getFooterFromData(array $data, bool $no_photos = false): string
|
||||
{
|
||||
Hook::callAll('page_info_data', $data);
|
||||
$eventDispatcher = DI::eventDispatcher();
|
||||
|
||||
$data = $eventDispatcher->dispatch(
|
||||
new ArrayFilterEvent(ArrayFilterEvent::PAGE_INFO, $data),
|
||||
)->getArray();
|
||||
|
||||
if (empty($data['type'])) {
|
||||
return '';
|
||||
|
|
|
@ -53,6 +53,7 @@ final class HookEventBridge
|
|||
ArrayFilterEvent::RENDER_LOCATION => 'render_location',
|
||||
ArrayFilterEvent::ITEM_PHOTO_MENU => 'item_photo_menu',
|
||||
ArrayFilterEvent::OEMBED_FETCH_END => 'oembed_fetch_url',
|
||||
ArrayFilterEvent::PAGE_INFO => 'page_info_data',
|
||||
HtmlFilterEvent::HEAD => 'head',
|
||||
HtmlFilterEvent::FOOTER => 'footer',
|
||||
HtmlFilterEvent::PAGE_HEADER => 'page_header',
|
||||
|
@ -85,6 +86,7 @@ final class HookEventBridge
|
|||
ArrayFilterEvent::RENDER_LOCATION => 'onArrayFilterEvent',
|
||||
ArrayFilterEvent::ITEM_PHOTO_MENU => 'onArrayFilterEvent',
|
||||
ArrayFilterEvent::OEMBED_FETCH_END => 'onOembedFetchEndEvent',
|
||||
ArrayFilterEvent::PAGE_INFO => 'onArrayFilterEvent',
|
||||
HtmlFilterEvent::HEAD => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::FOOTER => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::PAGE_HEADER => 'onHtmlFilterEvent',
|
||||
|
|
|
@ -44,6 +44,8 @@ final class ArrayFilterEvent extends Event
|
|||
|
||||
public const OEMBED_FETCH_END = 'friendica.data.oembed_fetch_end';
|
||||
|
||||
public const PAGE_INFO = 'friendica.data.page_info';
|
||||
|
||||
private array $array;
|
||||
|
||||
public function __construct(string $name, array $array)
|
||||
|
|
|
@ -42,6 +42,7 @@ class HookEventBridgeTest extends TestCase
|
|||
ArrayFilterEvent::RENDER_LOCATION => 'onArrayFilterEvent',
|
||||
ArrayFilterEvent::ITEM_PHOTO_MENU => 'onArrayFilterEvent',
|
||||
ArrayFilterEvent::OEMBED_FETCH_END => 'onOembedFetchEndEvent',
|
||||
ArrayFilterEvent::PAGE_INFO => 'onArrayFilterEvent',
|
||||
HtmlFilterEvent::HEAD => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::FOOTER => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::PAGE_HEADER => 'onHtmlFilterEvent',
|
||||
|
@ -196,6 +197,7 @@ class HookEventBridgeTest extends TestCase
|
|||
[ArrayFilterEvent::DISPLAY_ITEM, 'display_item'],
|
||||
[ArrayFilterEvent::RENDER_LOCATION, 'render_location'],
|
||||
[ArrayFilterEvent::ITEM_PHOTO_MENU, 'item_photo_menu'],
|
||||
[ArrayFilterEvent::PAGE_INFO, 'page_info_data'],
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
@ -39,6 +39,7 @@ class ArrayFilterEventTest extends TestCase
|
|||
[ArrayFilterEvent::RENDER_LOCATION, 'friendica.data.render_location'],
|
||||
[ArrayFilterEvent::ITEM_PHOTO_MENU, 'friendica.data.item_photo_menu'],
|
||||
[ArrayFilterEvent::OEMBED_FETCH_END, 'friendica.data.oembed_fetch_end'],
|
||||
[ArrayFilterEvent::PAGE_INFO, 'friendica.data.page_info'],
|
||||
];
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue