This prevents all stickied threads from having their own bump order. We
want stickies to all stay in the same order.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
Sometimes, it is necessary for an admin or other moderator to reveal
themselves. Capcodes allow them to do so by appending a special colored
portion at the end of their name on a post.
This adds object-level permissions, so if you have a moderator who
shouldn't be able to use the "admin" capcode, you can give them
permission only to the "moderator" capcode.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
* Board selection is allowed for when you want to make a global ban
* Post ID is added to ban model for referencing later
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This is done in the admin view and opens a new iframed window. The ban
form is pretty barebones and doesn't have full functionality yet, but
that is coming.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
Users can be banned by IP address now, either by singular IP or in an IP
range. If they are banned and attempt to post, they will be met with a
"you are banned until X date" screen.
There are a few loose threads with this, and IP bans may be obsolete if
I decide to go the accounts-required-for-posting route. But I think this
is a good start for 4chan style posting.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
* There are now Reports and ReportRecords.
* Reports coordinate to what moderators see, and ReportRecords
coordinate with the reports that are created by individual users.
* Reports keep track of the report reason and the creating user.
* ReportRecords keep track of the total weight and whether this report
requires urgent attention or not.
* ReportRecord keeps track of its own weight and urgency because then we
can sort by weight and urgency in the admin view.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
The report system is pretty low-tech. However the scaffolding is there
for a lot of new stuff. What we currently have:
* Users can create reports
* Staff can view reports
* Admins can create report templates
There's a post drop-down menu available on all posts now, too. This is
where "report post" menu item lives and other things like that can be
added too.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
Reports are created by users.
Bans are created by moderators, in response to reports.
Report reasons and ban templates are created by admins, which give a
template for reports sent and bans issued.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
The majority of the words on the site are user-generated, but I've tried
to surround everything else with localization calls. I don't know
another language so this will have to do until someone decides to
translate it lol
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
When reply to a post, you can uncheck "bump" and it will not bump the
thread to the top of the board.
This is useful for the OP, too, because it allows for "permasage"
functionality which is useful for moderators.
Finally, there is also "autosink" functionality. After a per-board
threshhold of posts, a thread will stop bumping.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This isn't perfect, but if a user tries to make a completely blank post,
they will be blocked from doing so
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
If a user tries to post more than once in a certain amount of time, they
will be blocked from doing so until their cooldown is over. This
required a little bit of hacking to get the board and IP address set
*before* the validation checks were made, but it all appears to work.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
Each board is allowed a number of threads per page, and a maximum number
of pages (default 10 for both). If a thread falls off the last page, it
is deleted.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
Images can be uploaded, thumbnails are created, they're displayed within
the threads themselves. Just like four chans!
There is not an upload size limit set yet. Gotta get on that next.
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>