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

pluginhost: rework run_hooks() to be shorter, add callback variant; implement exception handling for both

This commit is contained in:
Andrew Dolgov
2021-02-08 14:24:45 +03:00
parent 20b56b5b23
commit 1eb1629d9e
11 changed files with 115 additions and 91 deletions

View File

@@ -800,8 +800,7 @@ class Pref_Feeds extends Handler_Protected {
print '</div><div dojoType="dijit.layout.ContentPane" title="'.__('Plugins').'">';
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_EDIT_FEED,
"hook_prefs_edit_feed", $feed_id);
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_EDIT_FEED, $feed_id);
print "</div></div>";
@@ -1072,8 +1071,7 @@ class Pref_Feeds extends Handler_Protected {
RSSUtils::set_basic_feed_info($feed_id);
} */
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_SAVE_FEED,
"hook_prefs_save_feed", $feed_id);
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_SAVE_FEED, $feed_id);
} else {
$feed_data = array();
@@ -1384,8 +1382,7 @@ class Pref_Feeds extends Handler_Protected {
print "<button dojoType='dijit.form.Button' class='alt-primary' onclick=\"return App.displayDlg('".__("Public OPML URL")."','pubOPMLUrl')\">".
__('Display published OPML URL')."</button> ";
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefFeedsOPML");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefFeedsOPML");
print "</div>"; # pane
@@ -1403,13 +1400,11 @@ class Pref_Feeds extends Handler_Protected {
print "<button class=\"alt-danger\" dojoType=\"dijit.form.Button\" onclick=\"return Helpers.clearFeedAccessKeys()\">".
__('Clear all generated URLs')."</button> ";
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefFeedsPublishedGenerated");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefFeedsPublishedGenerated");
print "</div>"; #pane
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefFeeds");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB, "prefFeeds");
print "</div>"; #container
}

View File

@@ -814,8 +814,7 @@ class Pref_Filters extends Handler_Protected {
print "</div>"; #pane
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefFilters");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB, "prefFilters");
print "</div>"; #container

View File

@@ -304,8 +304,7 @@ class Pref_Labels extends Handler_Protected {
print "</div>"; #pane
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefLabels");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB, "prefLabels");
print "</div>"; #container

View File

@@ -559,8 +559,7 @@ class Pref_Prefs extends Handler_Protected {
print "</div>"; # tab container
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefPrefsAuth");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefPrefsAuth");
print "</div>"; #pane
@@ -814,8 +813,7 @@ class Pref_Prefs extends Handler_Protected {
print_hidden("boolean_prefs", "$listed_boolean_prefs");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefPrefsPrefsInside");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefPrefsPrefsInside");
print '</div>'; # inside pane
print '<div dojoType="dijit.layout.ContentPane" region="bottom">';
@@ -840,8 +838,7 @@ class Pref_Prefs extends Handler_Protected {
print "&nbsp;";
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefPrefsPrefsOutside");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefPrefsPrefsOutside");
print "</form>";
print '</div>'; # inner pane
@@ -1005,8 +1002,7 @@ class Pref_Prefs extends Handler_Protected {
print "</form>";
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefPrefs");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB, "prefPrefs");
print "</div>"; #container

View File

@@ -176,8 +176,7 @@ class Pref_System extends Handler_Protected {
print "</div>"; # accordion pane
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefSystem");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB, "prefSystem");
print "</div>"; #container
}

View File

@@ -355,8 +355,7 @@ class Pref_Users extends Handler_Protected {
<button dojoType='dijit.form.Button' onclick='Users.resetSelected()'>".
__('Reset password')."</button dojoType=\"dijit.form.Button\">";
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefUsersToolbar");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefUsersToolbar");
print "</div>"; #toolbar
print "</div>"; #pane
@@ -429,8 +428,7 @@ class Pref_Users extends Handler_Protected {
print "</div>"; #pane
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefUsers");
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB, "prefUsers");
print "</div>"; #container