mirror of
https://github.com/friendica/friendica
synced 2025-03-03 19:48:26 +00:00
Create Event for jot_tool hook
This commit is contained in:
parent
674ad96b69
commit
7260f29292
6 changed files with 32 additions and 16 deletions
|
@ -11,7 +11,6 @@ use Friendica\App\Arguments;
|
|||
use Friendica\App\BaseURL;
|
||||
use Friendica\App\Mode;
|
||||
use Friendica\App\Page;
|
||||
use Friendica\AppHelper;
|
||||
use Friendica\BaseModule;
|
||||
use Friendica\Core\ACL;
|
||||
use Friendica\Core\Config\Capability\IManageConfigValues;
|
||||
|
@ -23,6 +22,7 @@ use Friendica\Core\Renderer;
|
|||
use Friendica\Core\Session\Capability\IHandleUserSessions;
|
||||
use Friendica\Core\Theme;
|
||||
use Friendica\Database\DBA;
|
||||
use Friendica\Event\HtmlFilterEvent;
|
||||
use Friendica\Model\Contact;
|
||||
use Friendica\Model\Item as ItemModel;
|
||||
use Friendica\Model\Post;
|
||||
|
@ -42,6 +42,7 @@ use Friendica\Util\Profiler;
|
|||
use Friendica\Util\Strings;
|
||||
use Friendica\Util\Temporal;
|
||||
use ImagickException;
|
||||
use Psr\EventDispatcher\EventDispatcherInterface;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
class Conversation
|
||||
|
@ -75,8 +76,6 @@ class Conversation
|
|||
private $baseURL;
|
||||
/** @var IManageConfigValues */
|
||||
private $config;
|
||||
/** @var AppHelper */
|
||||
private $appHelper;
|
||||
/** @var Page */
|
||||
private $page;
|
||||
/** @var Mode */
|
||||
|
@ -85,8 +84,9 @@ class Conversation
|
|||
private $session;
|
||||
/** @var UserGServerRepository */
|
||||
private $userGServer;
|
||||
private EventDispatcherInterface $eventDispatcher;
|
||||
|
||||
public function __construct(UserGServerRepository $userGServer, LoggerInterface $logger, Profiler $profiler, Activity $activity, L10n $l10n, Item $item, Arguments $args, BaseURL $baseURL, IManageConfigValues $config, IManagePersonalConfigValues $pConfig, Page $page, Mode $mode, AppHelper $appHelper, IHandleUserSessions $session)
|
||||
public function __construct(UserGServerRepository $userGServer, LoggerInterface $logger, Profiler $profiler, Activity $activity, L10n $l10n, Item $item, Arguments $args, BaseURL $baseURL, IManageConfigValues $config, IManagePersonalConfigValues $pConfig, Page $page, Mode $mode, EventDispatcherInterface $eventDispatcher, IHandleUserSessions $session)
|
||||
{
|
||||
$this->activity = $activity;
|
||||
$this->item = $item;
|
||||
|
@ -99,7 +99,7 @@ class Conversation
|
|||
$this->args = $args;
|
||||
$this->pConfig = $pConfig;
|
||||
$this->page = $page;
|
||||
$this->appHelper = $appHelper;
|
||||
$this->eventDispatcher = $eventDispatcher;
|
||||
$this->session = $session;
|
||||
$this->userGServer = $userGServer;
|
||||
}
|
||||
|
@ -332,8 +332,9 @@ class Conversation
|
|||
'$is_mobile' => $this->mode->isMobile(),
|
||||
]);
|
||||
|
||||
$jotplugins = '';
|
||||
Hook::callAll('jot_tool', $jotplugins);
|
||||
$jotplugins = $this->eventDispatcher->dispatch(
|
||||
new HtmlFilterEvent(HtmlFilterEvent::JOT_TOOL, ''),
|
||||
)->getHtml();
|
||||
|
||||
if ($this->config->get('system', 'set_creation_date')) {
|
||||
$created_at = Temporal::getDateTimeField(
|
||||
|
|
|
@ -53,6 +53,7 @@ final class HookEventBridge
|
|||
HtmlFilterEvent::PAGE_HEADER => 'page_header',
|
||||
HtmlFilterEvent::PAGE_CONTENT_TOP => 'page_content_top',
|
||||
HtmlFilterEvent::PAGE_END => 'page_end',
|
||||
HtmlFilterEvent::JOT_TOOL => 'jot_tool',
|
||||
];
|
||||
|
||||
/**
|
||||
|
@ -79,6 +80,7 @@ final class HookEventBridge
|
|||
HtmlFilterEvent::PAGE_HEADER => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::PAGE_CONTENT_TOP => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::PAGE_END => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::JOT_TOOL => 'onHtmlFilterEvent',
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
@ -26,6 +26,8 @@ final class HtmlFilterEvent extends Event
|
|||
|
||||
public const PAGE_END = 'friendica.html.page_end';
|
||||
|
||||
public const JOT_TOOL = 'friendica.html.jot_tool';
|
||||
|
||||
private string $html;
|
||||
|
||||
public function __construct(string $name, string $html)
|
||||
|
|
|
@ -16,13 +16,13 @@ use Friendica\BaseModule;
|
|||
use Friendica\Content\Feature;
|
||||
use Friendica\Core\ACL;
|
||||
use Friendica\Core\Config\Capability\IManageConfigValues;
|
||||
use Friendica\Core\Hook;
|
||||
use Friendica\Core\L10n;
|
||||
use Friendica\Core\PConfig\Capability\IManagePersonalConfigValues;
|
||||
use Friendica\Core\Renderer;
|
||||
use Friendica\Core\Session\Model\UserSession;
|
||||
use Friendica\Core\Theme;
|
||||
use Friendica\Database\DBA;
|
||||
use Friendica\Event\HtmlFilterEvent;
|
||||
use Friendica\Model\Contact;
|
||||
use Friendica\Model\Item;
|
||||
use Friendica\Model\User;
|
||||
|
@ -34,6 +34,7 @@ use Friendica\Util\ACLFormatter;
|
|||
use Friendica\Util\Crypto;
|
||||
use Friendica\Util\Profiler;
|
||||
use Friendica\Util\Temporal;
|
||||
use Psr\EventDispatcher\EventDispatcherInterface;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
class Compose extends BaseModule
|
||||
|
@ -59,8 +60,9 @@ class Compose extends BaseModule
|
|||
/** @var AppHelper */
|
||||
private $appHelper;
|
||||
|
||||
private EventDispatcherInterface $eventDispatcher;
|
||||
|
||||
public function __construct(AppHelper $appHelper, UserSession $session, IManageConfigValues $config, IManagePersonalConfigValues $pConfig, Page $page, ACLFormatter $ACLFormatter, SystemMessages $systemMessages, L10n $l10n, BaseURL $baseUrl, Arguments $args, LoggerInterface $logger, Profiler $profiler, Response $response, array $server, array $parameters = [])
|
||||
public function __construct(EventDispatcherInterface $eventDispatcher, AppHelper $appHelper, UserSession $session, IManageConfigValues $config, IManagePersonalConfigValues $pConfig, Page $page, ACLFormatter $ACLFormatter, SystemMessages $systemMessages, L10n $l10n, BaseURL $baseUrl, Arguments $args, LoggerInterface $logger, Profiler $profiler, Response $response, array $server, array $parameters = [])
|
||||
{
|
||||
parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters);
|
||||
|
||||
|
@ -71,6 +73,7 @@ class Compose extends BaseModule
|
|||
$this->config = $config;
|
||||
$this->session = $session;
|
||||
$this->appHelper = $appHelper;
|
||||
$this->eventDispatcher = $eventDispatcher;
|
||||
}
|
||||
|
||||
protected function post(array $request = [])
|
||||
|
@ -153,8 +156,9 @@ class Compose extends BaseModule
|
|||
$location = $_REQUEST['location'] ?? $user['default-location'];
|
||||
$wall = $_REQUEST['wall'] ?? $type == 'post';
|
||||
|
||||
$jotplugins = '';
|
||||
Hook::callAll('jot_tool', $jotplugins);
|
||||
$jotplugins = $this->eventDispatcher->dispatch(
|
||||
new HtmlFilterEvent(HtmlFilterEvent::JOT_TOOL, ''),
|
||||
)->getHtml();
|
||||
|
||||
// Output
|
||||
$this->page->registerFooterScript(Theme::getPathForFile('js/ajaxupload.js'));
|
||||
|
|
|
@ -15,10 +15,10 @@ use Friendica\App\Page;
|
|||
use Friendica\AppHelper;
|
||||
use Friendica\BaseModule;
|
||||
use Friendica\Content\Feature;
|
||||
use Friendica\Core\Hook;
|
||||
use Friendica\Core\L10n;
|
||||
use Friendica\Core\Renderer;
|
||||
use Friendica\Core\Session\Capability\IHandleUserSessions;
|
||||
use Friendica\Event\HtmlFilterEvent;
|
||||
use Friendica\Model\Contact;
|
||||
use Friendica\Model\Post;
|
||||
use Friendica\Model\User;
|
||||
|
@ -27,6 +27,7 @@ use Friendica\Navigation\SystemMessages;
|
|||
use Friendica\Network\HTTPException;
|
||||
use Friendica\Util\Crypto;
|
||||
use Friendica\Util\Profiler;
|
||||
use Psr\EventDispatcher\EventDispatcherInterface;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
/**
|
||||
|
@ -44,10 +45,13 @@ class Edit extends BaseModule
|
|||
protected $mode;
|
||||
/** @var AppHelper */
|
||||
protected $appHelper;
|
||||
|
||||
private EventDispatcherInterface $eventDispatcher;
|
||||
|
||||
/** @var bool */
|
||||
protected $isModal = false;
|
||||
|
||||
public function __construct(L10n $l10n, BaseURL $baseUrl, Arguments $args, LoggerInterface $logger, Profiler $profiler, Response $response, IHandleUserSessions $session, SystemMessages $sysMessages, Page $page, Mode $mode, AppHelper $appHelper, array $server, array $parameters = [])
|
||||
public function __construct(L10n $l10n, BaseURL $baseUrl, Arguments $args, LoggerInterface $logger, Profiler $profiler, Response $response, IHandleUserSessions $session, SystemMessages $sysMessages, Page $page, Mode $mode, AppHelper $appHelper, EventDispatcherInterface $eventDispatcher, array $server, array $parameters = [])
|
||||
{
|
||||
parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters);
|
||||
|
||||
|
@ -56,6 +60,7 @@ class Edit extends BaseModule
|
|||
$this->page = $page;
|
||||
$this->mode = $mode;
|
||||
$this->appHelper = $appHelper;
|
||||
$this->eventDispatcher = $eventDispatcher;
|
||||
}
|
||||
|
||||
|
||||
|
@ -109,9 +114,9 @@ class Edit extends BaseModule
|
|||
$item['body'] = Post\Media::addAttachmentsToBody($item['uri-id'], $item['body']);
|
||||
$item = Post\Media::addHTMLAttachmentToItem($item);
|
||||
|
||||
$jotplugins = '';
|
||||
|
||||
Hook::callAll('jot_tool', $jotplugins);
|
||||
$jotplugins = $this->eventDispatcher->dispatch(
|
||||
new HtmlFilterEvent(HtmlFilterEvent::JOT_TOOL, ''),
|
||||
)->getHtml();
|
||||
|
||||
$output .= Renderer::replaceMacros(Renderer::getMarkupTemplate('jot.tpl'), [
|
||||
'$is_edit' => true,
|
||||
|
|
|
@ -42,6 +42,7 @@ class HookEventBridgeTest extends TestCase
|
|||
HtmlFilterEvent::PAGE_HEADER => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::PAGE_CONTENT_TOP => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::PAGE_END => 'onHtmlFilterEvent',
|
||||
HtmlFilterEvent::JOT_TOOL => 'onHtmlFilterEvent',
|
||||
];
|
||||
|
||||
$this->assertSame(
|
||||
|
@ -196,6 +197,7 @@ class HookEventBridgeTest extends TestCase
|
|||
[HtmlFilterEvent::PAGE_HEADER, 'page_header'],
|
||||
[HtmlFilterEvent::PAGE_CONTENT_TOP, 'page_content_top'],
|
||||
[HtmlFilterEvent::PAGE_END, 'page_end'],
|
||||
[HtmlFilterEvent::JOT_TOOL, 'jot_tool'],
|
||||
];
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue