<input type=\"submit\" class=\"button\"
onclick=\"javascript:addFeed()\" value=\"Add feed\">
- (<a href='javascript:browseFeeds()'>Browse feeds</a>)
+ (<a href='javascript:browseFeeds()'>Top 50</a>)
</td><td align='right'>
<input id=\"feed_search\" size=\"20\"
onchange=\"javascript:updateFeedList()\"
onclick=\"closeInfoBox()\" value=\"Close this window\"></div>";
}
+ if ($op == "pref-feed-browser") {
+
+ $subop = $_REQUEST["subop"];
+
+ if ($subop == "details") {
+ $id = db_escape_string($_GET["id"]);
+ print "-- nasty details about feed $id --";
+ return;
+ }
+
+ print "<div class=\"warning\">Under construction</div>";
+
+ print "<h1>Feed browser</h1>";
+
+ $result = db_query($link, "SELECT feed_url,count(id) AS subscribers
+ FROM ttrss_feeds
+ WHERE auth_login = '' AND auth_pass = '' AND private = false
+ GROUP BY feed_url ORDER BY subscribers DESC LIMIT 50");
+
+ print "<ul class='nomarks' id='browseFeedList'>";
+
+ $feedctr = 0;
+
+ while ($line = db_fetch_assoc($result)) {
+ $feed_url = $line["feed_url"];
+ $subscribers = $line["subscribers"];
+
+ $sub_result = db_query($link, "SELECT id
+ FROM ttrss_feeds WHERE feed_url = '$feed_url' AND owner_uid =" .
+ $_SESSION["uid"]);
+
+ if (db_num_rows($sub_result) > 0) {
+ continue; // already subscribed
+ }
+
+ $det_result = db_query($link, "SELECT site_url,title,id
+ FROM ttrss_feeds WHERE feed_url = '$feed_url' LIMIT 1");
+
+ $details = db_fetch_assoc($det_result);
+
+ $icon_file = ICONS_DIR . "/" . $details["id"] . ".ico";
+
+ if (file_exists($icon_file) && filesize($icon_file) > 0) {
+ $feed_icon = "<img class=\"tinyFeedIcon\" src=\"" . ICONS_URL .
+ "/".$details["id"].".ico\">";
+ } else {
+ $feed_icon = "<img class=\"tinyFeedIcon\" src=\"images/blank_icon.gif\">";
+ }
+
+ $check_box = "<input onclick='toggleSelectListRow(this)' class='feedBrowseCB'
+ type=\"checkbox\" id=\"FBCHK-" . $details["id"] . "\">";
+
+ $class = ($feedctr % 2) ? "even" : "odd";
+
+ print "<li class='$class' id=\"FBROW-".$details["id"]."\">$check_box".
+ "$feed_icon ";
+
+ print "<a href=\"javascript:browserExpand('".$details["id"]."')\">" .
+ $details["title"] ."</a> " .
+ "<span class='subscribers'>($subscribers)</span>";
+
+ print "<div class=\"browserDetails\" id=\"BRDET-" . $details["id"] . "\">";
+ print "</div>";
+
+ print "</li>";
+
+ ++$feedctr;
+ }
+
+ if ($feedctr == 0) {
+ print "<li>No feeds found to subscribe.</li>";
+ }
+
+ print "</ul>";
+
+ print "<input type='submit' class='button' onclick=\"feedBrowserSubscribe()\"
+ value=\"Subscribe\">";
+
+ print "</div>";
+
+ }
+
db_close($link);
?>
var active_filter = false;
var active_label = false;
var active_user = false;
-
var active_tab = false;
+var feed_to_expand = false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
xmlhttp = new XMLHttpRequest();
}
+function expand_feed_callback() {
+ if (xmlhttp.readyState == 4) {
+ try {
+ var container = document.getElementById("BRDET-" + feed_to_expand);
+ container.innerHTML=xmlhttp.responseText;
+ container.style.display = "block";
+ p_notify("");
+ } catch (e) {
+ exception_error("expand_feed_callback", e);
+ }
+ }
+}
+
function feedlist_callback() {
if (xmlhttp.readyState == 4) {
try {
}
}
+function feed_browser_callback() {
+ var container = document.getElementById('prefContent');
+ if (xmlhttp.readyState == 4) {
+ container.innerHTML=xmlhttp.responseText;
+ p_notify("");
+ }
+}
+
function userlist_callback() {
var container = document.getElementById('prefContent');
if (xmlhttp.readyState == 4) {
updatePrefsList();
} else if (id == "userConfig") {
updateUsersList();
+ } else if (id == "feedBrowser") {
+ updateBigFeedBrowser();
}
var tab = document.getElementById(active_tab + "Tab");
exception_error("feedBrowserSubscribe", e);
}
}
+
+function updateBigFeedBrowser() {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ p_notify("Loading, please wait...");
+
+ xmlhttp.open("GET", "backend.php?op=pref-feed-browser", true);
+ xmlhttp.onreadystatechange=feed_browser_callback;
+ xmlhttp.send(null);
+
+}
+
+function browserExpand(id) {
+ try {
+/* if (feed_to_expand && feed_to_expand != id) {
+ var d = document.getElementById("BRDET-" + feed_to_expand);
+ d.style.display = "none";
+ } */
+
+ feed_to_expand = id;
+
+ xmlhttp.open("GET", "backend.php?op=pref-feed-browser&subop=details&id="
+ + param_escape(id), true);
+ xmlhttp.onreadystatechange=expand_feed_callback;
+ xmlhttp.send(null);
+
+ } catch (e) {
+ exception_error("browserExpand", e);
+ }
+}
onclick="selectTab('genConfig')">
<input id="feedConfigTab" class="prefsTab" type="submit" value="Feed Configuration"
onclick="selectTab('feedConfig')">
+ <input id="feedBrowserTab" class="prefsTab" type="submit" value="Feed Browser"
+ onclick="selectTab('feedBrowser')">
<input id="filterConfigTab" class="prefsTab" type="submit" value="Content Filtering"
onclick="selectTab('filterConfig')">
<? if (GLOBAL_ENABLE_LABELS && get_pref($link, 'ENABLE_LABELS')) { ?>
color : #808080;
}
+div.subscribers {
+ color : #808080;
+ font-size : x-small;
+ float : right;
+}
+
input.feedBrowseCB {
margin-right : 1em;
}
+
+div.browserDetails {
+ margin : 5px 5px 5px 5px;
+ display : none;
+ padding : 5px;
+}