support for generated feeds based on searches
This commit is contained in:
parent
186649709a
commit
e1eb21470e
18
backend.php
18
backend.php
|
@ -807,7 +807,8 @@
|
|||
|
||||
function print_headline_subtoolbar($link, $feed_site_url, $feed_title,
|
||||
$bottom = false, $rtl_content = false, $feed_id = 0,
|
||||
$is_cat = false) {
|
||||
$is_cat = false, $search = false, $match_on = false,
|
||||
$search_mode = false) {
|
||||
|
||||
if (!$bottom) {
|
||||
$class = "headlinesSubToolbar";
|
||||
|
@ -864,9 +865,13 @@
|
|||
print $feed_title;
|
||||
}
|
||||
|
||||
if ($search) {
|
||||
$search_q = "&q=$search&m=$match_on&smode=$search_mode";
|
||||
}
|
||||
|
||||
print "
|
||||
<a target=\"_new\"
|
||||
href=\"backend.php?op=rss&id=$feed_id&is_cat=$is_cat\"
|
||||
href=\"backend.php?op=rss&id=$feed_id&is_cat=$is_cat$search_q\"
|
||||
<img class=\"noborder\"
|
||||
alt=\"Generated feed\" src=\"images/feed-icon-12x12.png\">
|
||||
</a>";
|
||||
|
@ -879,7 +884,7 @@
|
|||
if (db_num_rows($result) > 0) {
|
||||
|
||||
print_headline_subtoolbar($link, $feed_site_url, $feed_title, false,
|
||||
$rtl_content, $feed, $cat_view);
|
||||
$rtl_content, $feed, $cat_view, $search, $match_on, $search_mode);
|
||||
|
||||
if (!get_pref($link, 'COMBINED_DISPLAY_MODE')) {
|
||||
print "<table class=\"headlinesList\" id=\"headlinesList\"
|
||||
|
@ -3662,6 +3667,10 @@
|
|||
$pass = db_escape_string($_GET["pass"]);
|
||||
$is_cat = $_GET["is_cat"] != false;
|
||||
|
||||
$search = db_escape_string($_GET["q"]);
|
||||
$match_on = db_escape_string($_GET["m"]);
|
||||
$search_mode = db_escape_string($_GET["smode"]);
|
||||
|
||||
if (!$_SESSION["uid"] && $user && $pass) {
|
||||
authenticate_user($link, $user, $pass);
|
||||
}
|
||||
|
@ -3669,7 +3678,8 @@
|
|||
if ($_SESSION["uid"] ||
|
||||
http_authenticate_user($link)) {
|
||||
|
||||
generate_syndicated_feed($link, $feed, $is_cat);
|
||||
generate_syndicated_feed($link, $feed, $is_cat,
|
||||
$search, $search_mode, $match_on);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -2106,7 +2106,7 @@
|
|||
if ($search && $search_mode == "all_feeds") {
|
||||
$feed_title = "Global search results ($search)";
|
||||
} else if ($search && preg_match('/^-?[0-9][0-9]*$/', $feed) == false) {
|
||||
$feed_title = "Feed search results ($search, $feed)";
|
||||
$feed_title = "Tag search results ($search, $feed)";
|
||||
} else if (preg_match('/^-?[0-9][0-9]*$/', $feed) == false) {
|
||||
$feed_title = $feed;
|
||||
} else if (preg_match('/^-?[0-9][0-9]*$/', $feed) != false && $feed >= 0) {
|
||||
|
@ -2120,6 +2120,11 @@
|
|||
} else {
|
||||
$feed_title = "Uncategorized";
|
||||
}
|
||||
|
||||
if ($search) {
|
||||
$feed_title = "Category search results ($search, $feed_title)";
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
$result = db_query($link, "SELECT title,site_url,last_error FROM ttrss_feeds
|
||||
|
@ -2128,7 +2133,10 @@
|
|||
$feed_title = db_fetch_result($result, 0, "title");
|
||||
$feed_site_url = db_fetch_result($result, 0, "site_url");
|
||||
$last_error = db_fetch_result($result, 0, "last_error");
|
||||
|
||||
|
||||
if ($search) {
|
||||
$feed_title = "Feed search results ($search, $feed_title)";
|
||||
}
|
||||
}
|
||||
|
||||
} else if ($feed == -1) {
|
||||
|
@ -2209,10 +2217,11 @@
|
|||
|
||||
}
|
||||
|
||||
function generate_syndicated_feed($link, $feed, $is_cat) {
|
||||
function generate_syndicated_feed($link, $feed, $is_cat,
|
||||
$search, $search_mode, $match_on) {
|
||||
|
||||
$qfh_ret = queryFeedHeadlines($link, $feed,
|
||||
30, false, $is_cat, false, false, false);
|
||||
30, false, $is_cat, $search, $search_mode, $match_on);
|
||||
|
||||
$result = $qfh_ret[0];
|
||||
$feed_title = $qfh_ret[1];
|
||||
|
|
Loading…
Reference in New Issue