Show (only) new posts since last visit

Much like every forum you’ve ever used, it’d be great if there was a way to view only the new posts in my stream since my last login.

I check in to Diaspora as often as possible but with several hundred contacts I can often miss posts, or forget where I was up to.

If I could filter my stream to only show me posts since my last visit, it would be really useful.

The logic behind the code should function much like any forum does:

  1. User logs in
  2. Stream SELECT statement needs a simple WHERE clause on the end to only select posts since whatever value was stored in a ‘lastVisited’ field
  3. The current timestamp gets saved in lastVisited field against my userid

Note: This discussion was imported from Loomio. Click here to view the original discussion.

It’d be better to have a link saying ‘Older posts’ at the end of the new posts being displayed. It will give a cleaner view.
Some people might want to see their older posts as well.

This could get strange. Because sometimes I check my stream I did check some minutes ago, I see new postings between the old ones. That is because the stream is sorted by publishing-time and not by distribution time. And I guess, that is a good choice to do so.

Your proposal also says “Much like every forum you’ve ever used”, but diaspora is not a forum. It’s a live-stream.

What I’d rather see is a button to ‘mark all posts as read’ and a button on each individual post to mark it as read, so that those posts so marked won’t appear in the stream on future viewings unless there is new activity on them. This way, no unread post will be hidden from my stream because it was posted earlier than my last visit.

In the future, some client-side Javascript could be provided to enable other forms of filtering so that users could tailor what they see in their streams with far more precision - something like the excellent Social Fixer does for Facebook.

Interesting to use JavaScript for it …
Well, to decide whether a post was “read” it would have been to distributed already. So it could be stored in a JavaScript array and hide through it by setting “display:hidden;”. A better approach would be to transmit a array of IDs (or so) to the server to sort those posts out on a database level (is that secure?).

I’m just brainstorming :slight_smile:
Maybe a GreaseMonkey script could be written then as PoC. Something, which does not have to be merged into core immediately but could be tested by volunteers.

Well, to decide whether a post was “read” it would have been to distributed already. So it could be stored in a JavaScript array and hide through it by setting “display:hidden;”.

That would only differentiate whether or not a post had been displayed previously. What I’m proposing is a means for a user to say ‘I’ve read this and don’t want to see this post any more unless there are updates on it’. It’s a different thing.

Proposal: Similar idea

I have another similar idea. It’s about applying a mark (with some CSS rule) to indicate only the last loaded post on you stream.
I think it’s easier to implement (by using the datetime field maybe)


Outcome: N/A

Votes:

  • Yes: 3
  • Abstain: 0
  • No: 0
  • Block: 1

Note: This proposal was imported from Loomio. Vote details, some comments and metadata were not imported. Click here to view the proposal with all details on Loomio.

Eduardo - this whole thing is on brainstorming and discussion phase - no point in creating a proposal about it yet as there is nothing concrete to vote about :wink:

Also, not all features need voting on. They need a developer - and after that is found a vote only if not everyone agrees on something. No point in voting on features no one is ready to implement.

I think this proposal is pointless, it says nothing. We don’t even have a UI or interaction mockup, it’s written in a personal form and contains assumptions. This is nothing good to vote about.

‘I’ve read this and don’t want to see this post any more unless there are updates on it’. It’s a different thing.

@goob Agree, maybe it would be useful just to have a bar telling me “the last time you were here” instead of “readed” I think is easier to implement: Just the date and time of your last visit.

Maybe a GreaseMonkey script could be written then as PoC. Something, which does not have to be merged into core immediately but could be tested by volunteers.

Again, interesting, but lot of people who don’t know about GreaseMonkey wouldn’t use this feature.
If there is a GreaseMonkey, I’ll gladly use it! :slight_smile:

Idea is good, but I am doubtful about the implementation. What does “posts since my last visit” mean?? Does it refer to the posts that were posted after my last visit OR the posts which had some activities after my last visit? If it is the latter, then it is nice. Else, I may miss the new activities in an old post.

So there are two option:

  • New posts since last visit.
  • Posts with updates (had activities).

The first one is necessary! We look for the stream for new posts.
The latter maybe is necessary, some posts that we didn’t participate (comment/like/reshare) can have more activities.

New posts since last visit are already displayed in the stream, with posts from before last visit underneath them.