summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2009-01-24 06:01:17 +0100
committerAndrew Dolgov <[email protected]>2009-01-24 06:01:17 +0100
commitc2913898f1f56548d457073dbaa03c77ddc6d0d9 (patch)
tree10b37a0ddaccc4b77bbeff06daed4759a6d90336 /modules
parentb56465dd56772efb80ef251d8d19f7177b244d57 (diff)
use popup feedbrowser for main UI (2)
Diffstat (limited to 'modules')
-rw-r--r--modules/backend-rpc.php17
-rw-r--r--modules/pref-feeds.php44
2 files changed, 48 insertions, 13 deletions
diff --git a/modules/backend-rpc.php b/modules/backend-rpc.php
index b26304c2b..855d54aa7 100644
--- a/modules/backend-rpc.php
+++ b/modules/backend-rpc.php
@@ -503,6 +503,23 @@
return;
}
+ if ($subop == "feedBrowser") {
+
+ $search = db_escape_string($_REQUEST["search"]);
+ $limit = db_escape_string($_REQUEST["limit"]);
+
+ print "<rpc-reply>";
+ print "<content>";
+ print "<![CDATA[";
+ $ctr = print_feed_browser($link, $search, $limit);
+ print "]]>";
+ print "</content>";
+ print "<num-results value=\"$ctr\"/>";
+ print "</rpc-reply>";
+
+ return;
+ }
+
print "<rpc-reply><error>Unknown method: $subop</error></rpc-reply>";
}
?>
diff --git a/modules/pref-feeds.php b/modules/pref-feeds.php
index 0bdaf4e55..6c80d69a3 100644
--- a/modules/pref-feeds.php
+++ b/modules/pref-feeds.php
@@ -64,33 +64,41 @@
print "<div class=\"infoBoxContents\">";
-
$browser_search = db_escape_string($_GET["search"]);
- if (array_key_exists("search", $_GET)) {
- $_SESSION["feed_browser_search"] = $browser_search;
- } else {
- $browser_search = $_SESSION["feed_browser_search"];
- }
-
//print "<p>".__("Showing top 25 registered feeds, sorted by popularity:")."</p>";
- print "<input id=\"feed_browser_search\" size=\"20\" type=\"search\"
+
+ print "
+ <div style='float : right'>
+ <input id=\"feed_browser_search\" size=\"20\" type=\"search\"
onfocus=\"javascript:disableHotkeys();\"
onblur=\"javascript:enableHotkeys();\"
onchange=\"javascript:updateFeedBrowser()\" value=\"$browser_search\">
<input type=\"submit\" class=\"button\"
- onclick=\"javascript:updateFeedBrowser()\" value=\"".__('Search')."\">";
+ onclick=\"javascript:updateFeedBrowser()\" value=\"".__('Search')."\">
+ </div>";
+
+ print __('Top')." <select id=\"feed_browser_limit\">";
+
+ foreach (array(25, 50, 100, 200) as $l) {
+ $issel = ($l == $limit) ? "selected" : "";
+ print "<option $issel>$l</option>";
+ }
+
+ print "</select>
+ <input type=\"submit\" class=\"button\"
+ onclick=\"updateFeedBrowser()\" value=\"".__('Show')."\">";
print "<p>";
$owner_uid = $_SESSION["uid"];
print "<ul class='browseFeedList' id='browseFeedList'>";
- $subscribe_btn_disabled = print_feed_browser($link, $search, $limit) == 0 ? "disabled" : "";
+ $subscribe_btn_disabled = print_feed_browser($link, $search, 25) == 0 ? "disabled" : "";
print "</ul>";
print "<div align='center'>
- <input type=\"submit\" class=\"button\"
+ <input type=\"submit\" class=\"button\" id=\"feed_browser_subscribe\"
$subscribe_btn_disabled
onclick=\"feedBrowserSubscribe()\" value=\"".__('Subscribe')."\">
<input type='submit' class='button'
@@ -1433,10 +1441,20 @@
function print_feed_browser($link, $search, $limit) {
+ $owner_uid = $_SESSION["uid"];
+
+ if ($search) {
+ $search_qpart = "AND (UPPER(feed_url) LIKE UPPER('%$search%') OR
+ UPPER(title) LIKE UPPER('%$search%'))";
+ } else {
+ $search_qpart = "";
+ }
+
$result = db_query($link, "SELECT feed_url, subscribers FROM
ttrss_feedbrowser_cache WHERE (SELECT COUNT(id) = 0 FROM ttrss_feeds AS tf
- WHERE tf.feed_url = ttrss_feedbrowser_cache.feed_url
- AND owner_uid = '$owner_uid') ORDER BY subscribers DESC LIMIT 25");
+ WHERE tf.feed_url = ttrss_feedbrowser_cache.feed_url
+ AND owner_uid = '$owner_uid') $search_qpart
+ ORDER BY subscribers DESC LIMIT $limit");
$feedctr = 0;