1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
<?php
class VF_Shared extends Plugin {
/* @var PluginHost $host */
private $host;
function about() {
return array(1.0,
"Feed for all articles actively shared by URL",
"fox",
false);
}
function init($host) {
$this->host = $host;
$host->add_feed(-1, __("Shared articles"), 'link', $this);
}
function api_version() {
return 2;
}
/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
function get_unread($feed_id) {
$sth = $this->pdo->prepare("select count(int_id) AS count
from ttrss_user_entries where owner_uid = ? and unread = true and uuid != ''");
$sth->execute([$_SESSION['uid']]);
if ($row = $sth->fetch()) {
return $row['count'];
}
return 0;
}
/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
function get_total($feed_id) {
$sth = $this->pdo->prepare("select count(int_id) AS count
from ttrss_user_entries where owner_uid = ? and uuid != ''");
$sth->execute([$_SESSION['uid']]);
if ($row = $sth->fetch()) {
return $row['count'];
}
return 0;
}
/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
function get_headlines($feed_id, $options) {
$params = array(
"feed" => -4,
"limit" => $options["limit"],
"view_mode" => $this->get_unread(-1) > 0 ? "adaptive" : "all_articles",
"search" => $options['search'],
"override_order" => $options['override_order'],
"offset" => $options["offset"],
"filter" => $options["filter"],
"since_id" => $options["since_id"],
"include_children" => $options["include_children"],
"override_strategy" => "uuid != ''",
"override_vfeed" => "ttrss_feeds.title AS feed_title,"
);
$qfh_ret = Feeds::queryFeedHeadlines($params);
$qfh_ret[1] = __("Shared articles");
return $qfh_ret;
}
}
|