From c6c3a07f011abbca3eaa1bf0bb8776707ec7aabc Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sat, 19 Nov 2005 20:06:42 +0100 Subject: [PATCH] userDetails -> infoBox, feed infobox, user details improvements --- backend.php | 66 ++++++++++++++++++++++++++++++++++++++++++++++++----- prefs.js | 48 ++++++++++++++++++++++++++++++++------ tt-rss.css | 14 ++++++++---- 3 files changed, 110 insertions(+), 18 deletions(-) diff --git a/backend.php b/backend.php index 3eca4eda..0333e11f 100644 --- a/backend.php +++ b/backend.php @@ -1011,6 +1011,8 @@ FROM ttrss_feeds WHERE owner_uid = '".$_SESSION["uid"]."' ORDER by title"); + print "
PLACEHOLDER
"; + print "

"; print " @@ -1132,6 +1134,8 @@ print " Selection:  + PLACEHOLDER"; + print "
PLACEHOLDER
"; print "

 SelectTitle
"; @@ -2041,9 +2045,11 @@ $uid = sprintf("%d", $_GET["id"]); - print "
"; + print "
"; - $result = db_query($link, "SELECT login,last_login,access_level + $result = db_query($link, "SELECT login,last_login,access_level, + (SELECT COUNT(int_id) FROM ttrss_user_entries + WHERE owner_uid = id) AS stored_articles FROM ttrss_users WHERE id = '$uid'"); @@ -2059,10 +2065,12 @@ $login = db_fetch_result($result, 0, "login"); $last_login = db_fetch_result($result, 0, "last_login"); $access_level = db_fetch_result($result, 0, "access_level"); + $stored_articles = db_fetch_result($result, 0, "stored_articles"); print "
"; print ""; print ""; + print ""; $result = db_query($link, "SELECT COUNT(id) as num_feeds FROM ttrss_feeds WHERE owner_uid = '$uid'"); @@ -2073,11 +2081,12 @@ /* $result = db_query($link, "SELECT SUM(LENGTH(content)+LENGTH(title)+LENGTH(link)+LENGTH(guid)) AS db_size - FROM ttrss_entries WHERE owner_uid = '$uid'"); + FROM ttrss_user_entries,ttrss_entries + WHERE owner_uid = '$uid' AND ref_id = id"); $db_size = round(db_fetch_result($result, 0, "db_size") / 1024); - print ""; */ + print ""; */ print "
Username$login
Access level$access_level
Last logged in$last_login
Stored articles$stored_articles
Approx. DB size$db_size KBytes
Approx. used DB size$db_size KBytes
"; @@ -2107,12 +2116,57 @@ print "

"; + onclick=\"closeInfoBox()\" value=\"Close this window\">"; // print ""; } + if ($op == "feed-details") { + + $feed_id = $_GET["id"]; + + $result = db_query($link, + "SELECT + title,feed_url,last_updated, + (SELECT COUNT(int_id) FROM ttrss_user_entries + WHERE feed_id = id) AS total, + (SELECT COUNT(int_id) FROM ttrss_user_entries + WHERE feed_id = id AND unread = true) AS unread, + (SELECT COUNT(int_id) FROM ttrss_user_entries + WHERE feed_id = id AND marked = true) AS marked + FROM ttrss_feeds + WHERE id = '$feed_id' AND owner_uid = ".$_SESSION["uid"]); + + if (db_num_rows($result) == 0) return; + + $title = db_fetch_result($result, 0, "title"); + $last_updated = db_fetch_result($result, 0, "last_updated"); + $feed_url = db_fetch_result($result, 0, "feed_url"); + $total = db_fetch_result($result, 0, "total"); + $unread = db_fetch_result($result, 0, "unread"); + $marked = db_fetch_result($result, 0, "marked"); + + print "

$title

"; + + print ""; + + print ""; + print ""; + print ""; + print ""; + print ""; + + print "
Feed URL$feed_url
Last updated$last_updated
Total articles$total
Unread articles$unread
Starred articles$marked
"; + + print "
"; + + print "
+
"; + + } + db_close($link); ?> diff --git a/prefs.js b/prefs.js index 83a55d0d..89c314fa 100644 --- a/prefs.js +++ b/prefs.js @@ -119,11 +119,13 @@ function userlist_callback() { } } -function userdetails_callback() { - var container = document.getElementById('prefUserDetails'); +function infobox_callback() { + var container = document.getElementById('infoBox'); if (xmlhttp.readyState == 4) { - container.innerHTML=xmlhttp.responseText; - container.style.display = "block"; + if (container) { + container.innerHTML=xmlhttp.responseText; + container.style.display = "block"; + } } } @@ -880,7 +882,34 @@ function selectedUserDetails() { var id = rows[0]; xmlhttp.open("GET", "backend.php?op=user-details&id=" + id, true); - xmlhttp.onreadystatechange=userdetails_callback; + xmlhttp.onreadystatechange=infobox_callback; + xmlhttp.send(null); + +} + +function selectedFeedDetails() { + + if (!xmlhttp_ready(xmlhttp)) { + printLockingError(); + return + } + + var rows = getSelectedFeeds(); + + if (rows.length == 0) { + notify("No feeds are selected."); + return; + } + + if (rows.length > 1) { + notify("Please select one feed."); + return; + } + + var id = rows[0]; + + xmlhttp.open("GET", "backend.php?op=feed-details&id=" + id, true); + xmlhttp.onreadystatechange=infobox_callback; xmlhttp.send(null); } @@ -993,6 +1022,11 @@ function updatePrefsList() { function selectTab(id) { + if (!xmlhttp_ready(xmlhttp)) { + printLockingError(); + return + } + if (id == "feedConfig") { updateFeedList(); } else if (id == "filterConfig") { @@ -1066,7 +1100,7 @@ function dispOptionHelp(event, sender) { } */ -function closeUserDetails() { - var d = document.getElementById('prefUserDetails'); +function closeInfoBox() { + var d = document.getElementById('infoBox'); d.style.display = "none"; } diff --git a/tt-rss.css b/tt-rss.css index e6d8751b..1a3e2031 100644 --- a/tt-rss.css +++ b/tt-rss.css @@ -425,7 +425,7 @@ div.helpResponse { border : 1px solid #f0f0f0; } -div.userDetails { +div.infoBoxContents { background-image : url("images/vgrad_light_rev2.png"); background-position : top left; background-repeat : repeat-x; @@ -434,14 +434,14 @@ div.userDetails { border : 1px solid #f0f0f0; } -div.helpResponse h1, div.userDetails h1 { +div.helpResponse h1, div.infoBoxContents h1 { border-width : 0px 0px 1px 0px; border-style : solid; border-color : #c0c0c0; font-size : 16pt; } -div.helpResponse h2, div.userDetails h2 { +div.helpResponse h2, div.infoBoxContents h2 { border-width : 0px 0px 0px 0px; font-size : 12pt; } @@ -581,13 +581,17 @@ table.innerLoginForm td { padding : 3px 3px 5px 3px; } -#prefUserDetails { +#infoBox { position : absolute; margin-left : 30%; background-color : white; width : 30%; z-index : 3; border : 1px solid #c0c0c0; - display : none; padding-bottom : 10px; + display : none; +} + +div.small, p.small { + font-size : x-small; } -- 2.39.2