Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

MarkAllRead Extension [Version 1.0]

edited December 2007 in Vanilla 1.0 Help
I've actually made and uploaded a new extension, the extension adds a "Mark all Read" Link to the Panel. When you click on the link all discussion are set to be read.


  • Sweet.
  • oh shit are you serious? i thought making an extension like this was going to be a major database problem?
  • MarkMark Vanilla Staff
    The only problem is that if you have lots of people and they all use it, your database will get very big very fast.
  • Does this mark them all as read by putting in a record for every thread or just moving the last read date to the present time?
  • edited May 2006
    It would have to put a new record in for every unread thread, for every user that clicks it.
  • I thought there was a way of fooling it by updating one of the timestamps in the query. I managed to convince myself that a while ago atleast. Perhaps the query has changed or i was being an idiot. Maybe even both.
  • @Mark: is there another way with less database usage?

    @minisweeper: yes it puts a record for every thread to the database
  • It puts in a record for every discussion, so if you have like a 100 users and like 1000 discussions, your discussionwatch table will have 100 x 1000 records!

    Hutsein, maybe you can change your extension so it will only mark-read the discussions from last 2 weeks, or 3 weeks (maybe make it configurable for your users).
  • I've changed it, now you can select, that only for example 1 week or so is set to read. It can be set in the default.php
  • I am about half way through writing an extension with the same effect but different execution. This one adds a 'read time' column to the users table and shows threads as unread only if they have activity after that point. Also toying with the ability to 'undo' the action. Only been able to put 3-4 hours into it in the past month, basically enough to add a link, request a delegate and figure out that it is possible.
  • Yeah, this would be the perfect way, but I think creating this extension would be a lot of work...

    My extension was easy to create and is mainly for small communites because of the big db size, your extension will be for big communities
  • You took my extension's name!

  • "Mark, all read"

    *winks to Mark*
  • Yeah, wallphones way is the best way to do it i think.
  • MarkMark Vanilla Staff
    I just have to say thanks for the awesome add-ons, guys. You rock.
  • yeah, add-ons have really taken off in the last couple of weeks.
  • hmm...It seems that MarkAllRead isn't working for me - no error, just nothing is happening after the click on "Mark all read"...
  • I'm having the same problem...
  • have you set up the MARKALLREAD_LIMIT correctly. Basically it is set to 1d (1 day) and it turns only comments as read who aren't older than 1 day. you can change it to for example 2w and it will mark all comments as read who aren't older than 2 weeks.
  • I've set it to '3w'... and clicking "mark all read" does absolutely nothing.
This discussion has been closed.