active_feed_is_cat, active_feed_id handling changes

This commit is contained in:
Andrew Dolgov 2009-01-17 11:14:45 +01:00
parent 617698d710
commit 3d72bbdb4f
7 changed files with 62 additions and 54 deletions

View File

@ -281,7 +281,7 @@
WHERE id = '$feed' AND owner_uid = ".$_SESSION["uid"]); WHERE id = '$feed' AND owner_uid = ".$_SESSION["uid"]);
} }
print "<headlines id=\"$feed\"><![CDATA["; print "<headlines id=\"$feed\" is_cat=\"$cat_view\"><![CDATA[";
$override_order = false; $override_order = false;

View File

@ -25,7 +25,6 @@ function toggle_sortable_feedlist(enabled) {
} }
function viewCategory(cat) { function viewCategory(cat) {
active_feed_is_cat = true;
viewfeed(cat, '', true); viewfeed(cat, '', true);
return false; return false;
} }
@ -239,17 +238,18 @@ function viewfeed(feed, subop, is_cat, subop_param, skip_history, offset) {
clean_feed_selections(); clean_feed_selections();
setActiveFeedId(feed); setActiveFeedId(feed, is_cat);
if (is_cat != undefined) {
active_feed_is_cat = is_cat;
}
if (!is_cat) { if (!is_cat) {
var feedr = document.getElementById("FEEDR-" + feed); var feedr = document.getElementById("FEEDR-" + feed);
if (feedr && !feedr.className.match("Selected")) { if (feedr && !feedr.className.match("Selected")) {
feedr.className = feedr.className + "Selected"; feedr.className = feedr.className + "Selected";
} }
} else {
var feedr = document.getElementById("FCAT-" + feed_id);
if (feedr && !feedr.className.match("Selected")) {
feedr.className = feedr.className + "Selected";
}
} }
f.innerHTML = cache_find_param(cache_prefix + feed, unread_ctr); f.innerHTML = cache_find_param(cache_prefix + feed, unread_ctr);
@ -264,7 +264,7 @@ function viewfeed(feed, subop, is_cat, subop_param, skip_history, offset) {
new Ajax.Request(query, { new Ajax.Request(query, {
onComplete: function(transport) { onComplete: function(transport) {
headlines_callback2(transport, feed, is_cat, page_offset); headlines_callback2(transport, page_offset);
} }); } });
} }

View File

@ -406,30 +406,6 @@ function gotoExportOpml() {
document.location.href = "opml.php?op=Export"; document.location.href = "opml.php?op=Export";
} }
function getActiveFeedId() {
// return getCookie("ttrss_vf_actfeed");
try {
debug("gAFID: " + active_feed_id);
return active_feed_id;
} catch (e) {
exception_error("getActiveFeedId", e);
}
}
function activeFeedIsCat() {
return active_feed_is_cat;
}
function setActiveFeedId(id) {
// return setCookie("ttrss_vf_actfeed", id);
try {
debug("sAFID(" + id + ")");
active_feed_id = id;
} catch (e) {
exception_error("setActiveFeedId", e);
}
}
function parse_counters(reply, scheduled_call) { function parse_counters(reply, scheduled_call) {
try { try {

View File

@ -4188,7 +4188,7 @@
$inner_title_class = "catTitleNL"; $inner_title_class = "catTitleNL";
} }
if ($cat_id > 0) { if ($cat_id >= 0) {
$cat_class = "feedCat"; $cat_class = "feedCat";
} else { } else {
$cat_class = "virtCat"; $cat_class = "virtCat";

View File

@ -39,14 +39,14 @@
<h2><?php echo __("Feed actions") ?></h2> <h2><?php echo __("Feed actions") ?></h2>
<table> <table>
<tr><td class='n'>r</td><td><?php echo __("Update active feed") ?></td></tr> <tr><td class='n'>f r</td><td><?php echo __("Update active feed") ?></td></tr>
<!-- <tr><td class='n'>R</td><td><?php echo __("Update all feeds") ?></td></tr> --> <!-- <tr><td class='n'>R</td><td><?php echo __("Update all feeds") ?></td></tr> -->
<tr><td class='n'>f a</td><td><?php echo __("(Un)hide read feeds") ?></td></tr> <tr><td class='n'>f a</td><td><?php echo __("(Un)hide read feeds") ?></td></tr>
<tr><td class='n'>f s</td><td><?php echo __("Subscribe to feed") ?></td></tr> <tr><td class='n'>f s</td><td><?php echo __("Subscribe to feed") ?></td></tr>
<tr><td class='n'>f e</td><td><?php echo __("Edit feed") ?></td></tr> <tr><td class='n'>f e</td><td><?php echo __("Edit feed") ?></td></tr>
<tr><td class='n'>f w</td><td><?php echo __("Sort by name or unread count") ?></td></tr> <tr><td class='n'>f w</td><td><?php echo __("Sort by name or unread count") ?></td></tr>
<tr><td class='n'>f h</td><td><?php echo __("Hide visible read articles") ?></td></tr> <tr><td class='n'>f h</td><td><?php echo __("Hide visible read articles") ?></td></tr>
<tr><td class='n'>q</td><td><?php echo __("Mark feed as read") ?></td></tr> <tr><td class='n'>f q</td><td><?php echo __("Mark feed as read") ?></td></tr>
<tr><td class='n'>Q</td><td><?php echo __("Mark all feeds as read") ?></td></tr> <tr><td class='n'>Q</td><td><?php echo __("Mark all feeds as read") ?></td></tr>
<tr><td class='n'>x</td><td><?php echo __("If viewing category, (un)collapse it") ?></td></tr> <tr><td class='n'>x</td><td><?php echo __("If viewing category, (un)collapse it") ?></td></tr>
</table> </table>

View File

@ -8,8 +8,8 @@ var daemon_enabled = false;
var daemon_refresh_only = false; var daemon_refresh_only = false;
//var _qfd_deleted_feed = 0; //var _qfd_deleted_feed = 0;
var firsttime_update = true; var firsttime_update = true;
var active_feed_id = 0; var _active_feed_id = 0;
var active_feed_is_cat = false; var _active_feed_is_cat = false;
var number_of_feeds = 0; var number_of_feeds = 0;
var sanity_check_done = false; var sanity_check_done = false;
var _hfd_scrolltop = 0; var _hfd_scrolltop = 0;
@ -20,6 +20,36 @@ var hor_offset = 0;
var feeds_sort_by_unread = false; var feeds_sort_by_unread = false;
var feedlist_sortable_enabled = false; var feedlist_sortable_enabled = false;
function activeFeedIsCat() {
return _active_feed_is_cat;
}
function getActiveFeedId() {
// return getCookie("ttrss_vf_actfeed");
try {
debug("gAFID: " + _active_feed_id);
return _active_feed_id;
} catch (e) {
exception_error("getActiveFeedId", e);
}
}
function setActiveFeedId(id, is_cat) {
// return setCookie("ttrss_vf_actfeed", id);
try {
debug("sAFID(" + id + ", " + is_cat + ")");
_active_feed_id = id;
if (is_cat != undefined) {
_active_feed_is_cat = is_cat;
}
} catch (e) {
exception_error("setActiveFeedId", e);
}
}
function isFeedlistSortable() { function isFeedlistSortable() {
return feedlist_sortable_enabled; return feedlist_sortable_enabled;
} }
@ -250,7 +280,7 @@ function viewCurrentFeed(subop) {
// if (getActiveFeedId()) { // if (getActiveFeedId()) {
if (getActiveFeedId() != undefined) { if (getActiveFeedId() != undefined) {
viewfeed(getActiveFeedId(), subop, active_feed_is_cat); viewfeed(getActiveFeedId(), subop, activeFeedIsCat());
} else { } else {
disableContainerChildren("headlinesToolbar", false, document); disableContainerChildren("headlinesToolbar", false, document);
// viewfeed(-1, subop); // FIXME // viewfeed(-1, subop); // FIXME
@ -728,14 +758,10 @@ function parse_runtime_info(elem) {
function catchupCurrentFeed() { function catchupCurrentFeed() {
var fn = getFeedName(getActiveFeedId(), active_feed_is_cat); var fn = getFeedName(getActiveFeedId(), activeFeedIsCat());
var str = __("Mark all articles in %s as read?").replace("%s", fn); var str = __("Mark all articles in %s as read?").replace("%s", fn);
/* if (active_feed_is_cat) {
str = "Mark all articles in this category as read?";
} */
if (getInitParam("confirm_feed_catchup") != 1 || confirm(str)) { if (getInitParam("confirm_feed_catchup") != 1 || confirm(str)) {
return viewCurrentFeed('MarkAllRead') return viewCurrentFeed('MarkAllRead')
} }

View File

@ -67,7 +67,7 @@ function clean_feed_selections() {
} }
} }
function headlines_callback2(transport, active_feed_id, is_cat, feed_cur_page) { function headlines_callback2(transport, feed_cur_page) {
try { try {
loading_set_progress(100); loading_set_progress(100);
@ -76,19 +76,25 @@ function headlines_callback2(transport, active_feed_id, is_cat, feed_cur_page) {
clean_feed_selections(); clean_feed_selections();
setActiveFeedId(active_feed_id); var is_cat = false;
var feed_id = false;
if (is_cat != undefined) { if (transport.responseXML) {
active_feed_is_cat = is_cat; var headlines = transport.responseXML.getElementsByTagName("headlines")[0];
if (headlines) {
is_cat = headlines.getAttribute("is_cat");
feed_id = headlines.getAttribute("id");
setActiveFeedId(feed_id, is_cat);
}
} }
if (!is_cat) { if (!is_cat) {
var feedr = document.getElementById("FEEDR-" + active_feed_id); var feedr = document.getElementById("FEEDR-" + feed_id);
if (feedr && !feedr.className.match("Selected")) { if (feedr && !feedr.className.match("Selected")) {
feedr.className = feedr.className + "Selected"; feedr.className = feedr.className + "Selected";
} }
} else { } else {
var feedr = document.getElementById("FCAT-" + active_feed_id); var feedr = document.getElementById("FCAT-" + feed_id);
if (feedr && !feedr.className.match("Selected")) { if (feedr && !feedr.className.match("Selected")) {
feedr.className = feedr.className + "Selected"; feedr.className = feedr.className + "Selected";
} }
@ -138,10 +144,10 @@ function headlines_callback2(transport, active_feed_id, is_cat, feed_cur_page) {
cache_prefix = "F:"; cache_prefix = "F:";
} }
cache_invalidate(cache_prefix + active_feed_id); cache_invalidate(cache_prefix + feed_id);
if (!disable_cache) { if (!disable_cache) {
cache_inject(cache_prefix + active_feed_id, cache_inject(cache_prefix + feed_id,
headlines.firstChild.nodeValue, headlines_unread); headlines.firstChild.nodeValue, headlines_unread);
} }
@ -1090,7 +1096,7 @@ function cdmSelectArticles(mode) {
function catchupPage() { function catchupPage() {
var fn = getFeedName(getActiveFeedId(), active_feed_is_cat); var fn = getFeedName(getActiveFeedId(), activeFeedIsCat());
var str = __("Mark all visible articles in %s as read?"); var str = __("Mark all visible articles in %s as read?");
@ -1129,7 +1135,7 @@ function catchupSelection() {
} }
var fn = getFeedName(getActiveFeedId(), active_feed_is_cat); var fn = getFeedName(getActiveFeedId(), activeFeedIsCat());
var str = __("Mark %d selected articles in %s as read?"); var str = __("Mark %d selected articles in %s as read?");