add a simple JS-based hook host

This commit is contained in:
Andrew Dolgov 2013-04-24 19:49:37 +04:00
parent a62337b35d
commit 8d388f321b
4 changed files with 9 additions and 1 deletions

View File

@ -100,7 +100,7 @@
require 'lib/jshrink/Minifier.php';
print get_minified_js(array("tt-rss",
"functions", "feedlist", "viewfeed", "FeedTree"));
"functions", "feedlist", "viewfeed", "FeedTree", "PluginHost"));
foreach (PluginHost::getInstance()->get_plugins() as $n => $p) {
if (method_exists($p, "get_js")) {

View File

@ -139,6 +139,7 @@ function viewfeed(feed, method, is_cat, offset, background, infscroll_req) {
onComplete: function(transport) {
setFeedExpandoIcon(feed, is_cat, 'images/blank_icon.gif');
headlines_callback2(transport, offset, background, infscroll_req);
PluginHost.run(PluginHost.HOOK_FEED_LOADED, [feed, is_cat]);
} });
} catch (e) {

View File

@ -40,6 +40,8 @@ function setActiveFeedId(id, is_cat) {
$("headlines-frame").setAttribute("is-cat", is_cat ? 1 : 0);
selectFeed(id, is_cat);
PluginHost.run(PluginHost.HOOK_FEED_SET_ACTIVE, _active_article_id);
} catch (e) {
exception_error("setActiveFeedId", e);
}

View File

@ -232,6 +232,8 @@ function render_article(article) {
c.domNode.scrollTop = 0;
} catch (e) { };
PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED, article);
c.attr('content', article);
correctHeadlinesOffset(getActiveArticleId());
@ -1193,6 +1195,7 @@ function cdmScrollToArticleId(id, force) {
function setActiveArticleId(id) {
_active_article_id = id;
PluginHost.run(PluginHost.HOOK_ARTICLE_SET_ACTIVE, _active_article_id);
}
function getActiveArticleId() {
@ -1219,6 +1222,8 @@ function unpackVisibleHeadlines() {
var cencw = $("CENCW-" + child.id.replace("RROW-", ""));
if (cencw) {
PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED_CDM, child);
cencw.innerHTML = htmlspecialchars_decode(cencw.innerHTML);
cencw.setAttribute('id', '');
Element.show(cencw);