1
0
mirror of https://git.tt-rss.org/git/tt-rss.git synced 2025-12-13 16:05:56 +00:00

fix HOOK_QUERY_HEADLINES being invoked with different argument lists, add some more phpdoc comments for base plugin class

This commit is contained in:
Andrew Dolgov
2021-11-14 17:07:47 +03:00
parent af2f4460ce
commit 55729b4bbd
2 changed files with 84 additions and 5 deletions

View File

@@ -93,11 +93,13 @@ class Handler_Public extends Handler {
$line["content_preview"] = Sanitizer::sanitize(truncate_string(strip_tags($line["content"]), 100, '...')); $line["content_preview"] = Sanitizer::sanitize(truncate_string(strip_tags($line["content"]), 100, '...'));
$line["tags"] = Article::_get_tags($line["id"], $owner_uid); $line["tags"] = Article::_get_tags($line["id"], $owner_uid);
$max_excerpt_length = 250;
PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_QUERY_HEADLINES, PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_QUERY_HEADLINES,
function ($result) use (&$line) { function ($result) use (&$line) {
$line = $result; $line = $result;
}, },
$line); $line, $max_excerpt_length);
PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_ARTICLE_EXPORT_FEED, PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_ARTICLE_EXPORT_FEED,
function ($result) use (&$line) { function ($result) use (&$line) {

View File

@@ -109,6 +109,8 @@ abstract class Plugin {
*/ */
function hook_article_button($line) { function hook_article_button($line) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return "";
} }
/** /**
@@ -117,6 +119,8 @@ abstract class Plugin {
*/ */
function hook_article_filter($article) { function hook_article_filter($article) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return [];
} }
/** /**
@@ -185,6 +189,8 @@ abstract class Plugin {
*/ */
function hook_hotkey_map($hotkeys) { function hook_hotkey_map($hotkeys) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return [];
} }
/** /**
@@ -269,14 +275,28 @@ abstract class Plugin {
return []; return [];
} }
/**
* @param array<string,mixed> $row
* @return string
*/
function hook_article_left_button($row) { function hook_article_left_button($row) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return "";
} }
/**
* @param int $feed_id
* @return void
*/
function hook_prefs_edit_feed($feed_id) { function hook_prefs_edit_feed($feed_id) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
/**
* @param int $feed_id
* @return void
*/
function hook_prefs_save_feed($feed_id) { function hook_prefs_save_feed($feed_id) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
@@ -285,8 +305,15 @@ abstract class Plugin {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
function hook_query_headlines($row) { /**
* @param array<string,mixed> $row
* @param int $excerpt_length
* @return array<string,mixed>
*/
function hook_query_headlines($row, $excerpt_length) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return [];
} }
/** @return void */ /** @return void */
@@ -294,23 +321,50 @@ abstract class Plugin {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
/**
* @param string $query
* @return array<string>
*/
function hook_search($query) { function hook_search($query) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return [];
} }
function hook_format_enclosures($rv, $result, $id, $always_display_enclosures, $article_content, $hide_images) { function hook_format_enclosures($rv, $result, $id, $always_display_enclosures, $article_content, $hide_images) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
/**
* @param string $contents
* @param string $url
* @param string $auth_login
* @param string $auth_pass
* @return string (possibly mangled feed data)
*/
function hook_subscribe_feed($contents, $url, $auth_login, $auth_pass) { function hook_subscribe_feed($contents, $url, $auth_login, $auth_pass) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
/**
* @param int $feed
* @param bool $is_cat
* @param array<string,mixed> $qfh_ret (headlines object)
* @return string
*/
function hook_headlines_before($feed, $is_cat, $qfh_ret) { function hook_headlines_before($feed, $is_cat, $qfh_ret) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return "";
} }
function hook_render_enclosure($entry, $id, $rv) { /**
* @param array<string,mixed> $entry
* @param int $article_id
* @param array<string,mixed> $rv
* @return string
*/
function hook_render_enclosure($entry, $article_id, $rv) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
@@ -318,8 +372,17 @@ abstract class Plugin {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
/**
* @param array<string,mixed> $line
* @param int $feed
* @param bool $is_cat
* @param int $owner_uid
* @return array<string,mixed> ($line)
*/
function hook_article_export_feed($line, $feed, $is_cat, $owner_uid) { function hook_article_export_feed($line, $feed, $is_cat, $owner_uid) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return [];
} }
/** @return void */ /** @return void */
@@ -331,12 +394,19 @@ abstract class Plugin {
* @param array<string,string> $entry * @param array<string,string> $entry
* @param int $id * @param int $id
* @param array{'formatted': string, 'entries': array<int, array<string, mixed>>} $rv * @param array{'formatted': string, 'entries': array<int, array<string, mixed>>} $rv
* @return array<string,string> * @return array<string,string> ($entry)
*/ */
function hook_enclosure_entry($entry, $id, $rv) { function hook_enclosure_entry($entry, $id, $rv) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return [];
} }
/**
* @param string $html
* @param array<string,mixed> $row
* @return string ($html)
*/
function hook_format_article($html, $row) { function hook_format_article($html, $row) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
@@ -353,8 +423,15 @@ abstract class Plugin {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
} }
function hook_send_mail(Mailer $mailer, $params) { /**
* @param Mailer $mailer
* @param array<string,mixed> $params
* @return int
*/
function hook_send_mail($mailer, $params) {
user_error("Dummy method invoked.", E_USER_ERROR); user_error("Dummy method invoked.", E_USER_ERROR);
return -1;
} }
/** NOTE: $article_filters should be renamed $filter_actions because that's what this is /** NOTE: $article_filters should be renamed $filter_actions because that's what this is