threads are marked as read by recording when they were read. this is done with unix timestamps (which have the granularity of one second).
lots of things can happen within a second, unfortunately. you can read a thread before someone else posts in the thread, but within the same second.
as a result, i changed the condition under which a thread is new. before, a thread was fresh if thread_update_time > thread_read_time. but because someone can post in the same second that you have already loaded the thread, this isn't good enough. so
now, a thread is fresh if thread_update_time >= thread_read_time. this change was made with
r303 .
this has an annoying artifact, however. when you post in a thread, it will be marked as new afterwards.
so how should we fix this?
(1) we can put a one-second pause in the reply.php and newthread.php scripts. this way, after you make a post, you'll always load it one second later, thus marking it as read.
(2) the thread listing can see who posted last in the thread. if it was you, it won't show the thread as fresh.
(3) we can mark threads as read by the "last post read" instead of the "last time read." this seems like the cleanest solution.
thoughts?
Étrangère
I am not a robot...
1 is cool but 3 seems more practical
Étrangère
I am not a robot...
Also I was just in the philosophy/religion section...two fresh threads. Odd thing is, the first (environmentalism) thread's jump link didn't jump me anywhere and then there were 8 "unfresh" threads before the next "fresh" one (aum, ohm support) more than half a page down
Which I was the last one to post in like a month ago...
Does this mean someone posted something there and then archived it? Maybe I should have put this in the what happened!? thread.
what happens when someone edits a post in a "read" thread? does the thread go to the top of the list? is the thread marked fresh?
Étrangère> the first (environmentalism) thread's jump link didn't jump me anywhere
probably because even the first post was unread by you. so you should have started at the beginning.
Étrangère> Does this mean someone posted something there and then archived it?
no, this is exactly the case that i'm referring to in the original post: "this has an annoying artifact, however. when you post in a thread, it will be marked as new afterwards." so because you posted in the thread and read the thread within the same second, it is still marked as new.
--
bluet> does the thread go to the top of the list?
no.
bluet> is the thread marked fresh?
no. it's all silent.
but i'm planning on implementing
issue 39 .
Étrangère
I am not a robot...
> no, this is exactly the case that i'm referring to in the original post: "this has an annoying artifact, however. when you post in a thread, it will be marked as new afterwards." so because you posted in the thread and read the thread within the same second, it is still marked as new.
No, because as I said in my first post about it, I had last posted in that thread almost one month ago...
but you were the last person to post in it, right?
freshies are still being generated on your own posts... now when you jump to kill the freshy, it doesn't go to the bottom
leaves me wondering if it REALLY was me that posted /ocd
yeah this crap freaks me out. I have to mentally prepare myself for freshie functions before they are implemented.
Étrangère
I am not a robot...
> but you were the last person to post in it, right?
Yeah...so? Are you saying it's normal for a thread to suddenly appear fresh from my own post after a month? I don't get how all of a sudden it shows up for no reason. It definitely wasn't in the same second that I viewed it, as you were saying.
threads where i had the last post also suddenly got fresh
Étrangère> Are you saying it's normal for a thread to suddenly appear fresh from my own post after a month?
yes.
Étrangère> I don't get how all of a sudden it shows up for no reason.
because for those threads, thread_update_time was the same as thread_read_time.
so before, (thread_update_time > thread_read_time) == FALSE, so it was not fresh.
but now, (thread_update_time >= thread_read_time) == TRUE, so it is now fresh.
Étrangère> It definitely wasn't in the same second that I viewed it, as you were saying.
how do you know? the reply script redirects to the respective thread, usually well within one second.
was i not clear with my first post, everyone? :(
Étrangère
I am not a robot...
I'm just gonna let this go :)
3, because this is terrible.
> I'm just gonna let this go :)
i guess i'll ask in person, then. :/
Étrangère
I am not a robot...
Thanks for clarifying!
we're going to start tracking new posts by using post id numbers.
this is exciting!
i'm beginning work on this today.
issue 43
asemisldkfj
the law is no protection
interesting! sounds promising too.