I searched forum and didn't find anyone else who had reported the problem so I decided to post it here. The title basically says it all, if you have multiple pages of posts on the "Show new replies to your posts." page and you hit the "Mark ALL messages as read" button it only marks the posts on the current page as read. This happened on two SMF 2.0.2 installs on different servers with caching set to 1 on both, one was a fresh SMF install no mods. Let me know if I can provide any further details to help narrow down the problem.
I don't think that's a bug. I believe that it's meant to work that way.
Odd, I agree, but...
Maybe the text should be changed to read "Mark ALL messages on this page as read".
(Unless I've misunderstood, that is)
Hmm I guess that could make sense, we noticed it after a import from vB so users have 50x pages of unread posts. If the functionality doesn't change then the label should as it can be confused.
I'll check, though, in case I've boobed. ;)
There is already a mark all messages as read at the end of the board index.
I'd change it to "Mark messages as read", it's a button, we cannot let it fill half screen... ;)
Quote from: emanuele on March 20, 2012, 08:25:07 AMwe cannot let it fill half screen... ;)
[panto mode]
Oh yes we can!!!
[/panto mode]
Perhaps "Mark these 25 messages as read"
That'd work!
Thing is, I just tested this by unignoring the Spanish boards (since I knew that'd be a big source of messages), viewing all unread (to make sure I had a ton of them, and there were, 9 pages) - though both view latest unread and view all unread both take me to the same place, so that's not a factor.
And sure enough... mark all messages as read marked all nine pages as read. I've used this before to mark multiple pages, so I'm not sure there is a bug here :/
What the OP claims is more than 1 page of unread REPLIES. And I don't think I ever had more than 1 page of unread replies and, for sure, I didn't marked those as read without actually read them...
edit: confirmed in my test board. Not sure if it is intentional or not, but the fact is, it only marks current page as read
Ah, that might explain it. Hmm.
Yup, it does explain it - they call different parts of markasread. The question then, having established what it is doing, is whether it should be changed.
Or at least made clear that it is doing something different, because it seems that the current behavior is confusing.
I'd say it should mark everything as read. It's what all other similar functions do *and* that's what the button says ;)
This is where it gets incredibly complicated. All unread is not necessarily all unread.
If you click on the board icon you get taken to the unread page - but only for that board, where marking it unread will only touch that board's unread items. But I believe the text string is different.
Yeesh this is a complicated tangle of code.
There's a separate problem... if you rely mostly on unreadreplies, selecting 'mark all messages as read' to actually *mean* all, could mean that you miss some unless you go via unread first.
Perhaps the correct course of action is not to make it force clear all unreadreplies as the code currently does but change the text instead.