How best to mark items in activity feed as read or seen?

I have an activity feed which shows recent activity across the site, some of it tailored depending on whether the users follow each other or have subscribed to their updates, but generally it covers the following; photo updates, changes to profile details, shared posts and status updates etc.

At present I am counting all updates and showing that total number of items but that will soon become too big and useless;

Each activity item as a ‘created at’ value in the DB so I tried basing it on time - if less than a week old display ‘new’ in the bottom right corner of the feed item. Thats better but still not the best it could be.

The way I’ve dealt with it with messages is that on opening a message the current date and time is inserted into the messages table as the seen/read time and the presance of a value here switches the message to ‘read’ status.

I’m not sure how I would acheive similar for activity items as there is no clicking on them so either has to done by scroll or based on the users last login date (which is stored in the DB).

Any thoughts/help would be welcomed.

Hi @benyates1, what are exactly ‘activity items’, could you give us a bit more detail?

Apologies @Andres_Vaquero ‘activity items’ is what a refer to a post within the activity feed on the frontend so it is essentially a record in a database.

So these activity items will display straight away in the page, dont need to even click to open up a list menu? And they have no pagination?

Yes, pretty much. They’ll display on the activity feed which is the first page they’ll see when they login. There is also a modal window that pops up from the bell icon on the footer.

They are not clickable. And are not paginated yet but I plan to have some kind of infinite loading pagination.

Hi, I think with the infinite loading you can safely assume that the new data that is loaded to the feed is being read on the spot by the user, therefore I think it might be safe to mark them as seen upon rendering, or maybe even better once you load a new batch you mark the older batch as read. There would surely be a few edge cases to deal with…

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.