Commit Graph

40 Commits

Author SHA1 Message Date
5df21ccb95 Add poster name saving via cookie
When a user makes a new post with a name set, it will get saved via a
cookie to the user's client and it will automatically get set the next
time a user makes a post.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-07-12 20:28:21 -07:00
a3ebf75e83 Add thread locking and permissions
Mods can lock threads from replying now. Yay!

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-07-08 21:55:25 -07:00
b791cf6a6b Update various windows that open to have their height automatically set
Some windows have a variable height based on the user's permissions
(e.g. having a capcode option). This sets the window height to the
minimum requiremed height based on the document loaded in.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 20:37:19 -07:00
76f641a935 Remove some more old winbox references
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 19:31:37 -07:00
376066e55f Remove old winbox reference
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 19:31:18 -07:00
61b9e2a277 Merge report_window.js into post.js
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 18:44:58 -07:00
638d8cd349 Add bumplock to post modify form, and add set_bump permission
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 18:42:16 -07:00
0ac383ce6c Update PostModifyForm to use permissions to create its fields
Fields are only displayed via the PostModifyForm if the user has
specific permissions to do things, like set stickies.

Also, add PostModifySuccessView that will close the modify window when
the process is complete.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 18:16:08 -07:00
6f99472f16 Add post modify view
This allows moderators to modify posts (add sticky, etc).

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-30 16:21:36 -07:00
6c11d210e8 Add floating window for new threads
New threads get a floating window just like new replies have. This only
pops up on the board detail view.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-28 23:55:44 -07:00
6ad2a72b86 Remove old winbox JS include from base.html
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-28 22:48:58 -07:00
66f6093f9b Remove old reply form code
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-28 22:14:42 -07:00
ab749359fa Add admin capcodes
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>
2022-06-28 21:37:45 -07:00
d931f52f01 Move off WinBox to JSFrame
WinBox is nice, but it has this annoying bug that I don't feel like
figuring out how to fix. JSFrame seems to work much better, although
centering the window seems to be a chore. I'll figure it out soon
enough.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-26 20:52:47 -07:00
fb61239147 Add JSFrame implementation for report window
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-25 21:05:31 -07:00
4e60569cdc Fix blocktranslate issue in post_snippet.html
Can't use template filters, so this is fixed.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-25 20:51:56 -07:00
e596d59e82 Trying out JSFrame for windows
Winbox has this annoying bug where you can't move the window below the
calculated area of the document, so you can't drag it over blank space.
JSFrame fixes this and does basically what we want as well. This has
been implemented for post replies and I am going to implement it for
reports and ban creation too.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-25 20:42:10 -07:00
36f73a2d31 Add configurable report and ban window timeouts.
On the success page for bans and reports, the window can now be
configured to close after N seconds if desired.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-24 16:21:41 -07:00
412045e015 Convert templates to use translate instead of localize
Not sure what the difference is but most things tend to use translate.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-24 15:56:36 -07:00
e30012d6d0 Remove old openBanWindow function
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-23 23:01:26 -07:00
024f0c1290 Move openBanWindow to its own separate file
It is now shared between the admin view and the inline view.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-23 22:58:31 -07:00
647aedfc67 Add in-line ban capabilities
Anyone with the ability to create bans can now do so via the drop down
menu on all posts.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-23 22:27:26 -07:00
1e61522f7a Delete posts after a ban is created for them
After a user is banned for a post, that post now gets deleted. There's
no way to turn this off yet.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-23 21:49:04 -07:00
a5510d9552 Add board selection to ban creation and post ID to ban model
* 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>
2022-06-23 18:57:23 -07:00
b64559aba9 Add report record admin and template search
When creating a ban, you can type in to do a search, this is useful for
quickly banning users.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-23 18:16:00 -07:00
789bd0efe9 Ban window now has a more appropriate window color
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-23 16:15:18 -07:00
470a10d2a7 Add ability to create bans from reports
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>
2022-06-23 16:03:09 -07:00
28ccd7d73b Add IP bans
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>
2022-06-20 15:26:35 -07:00
6bda7f4f2d Big upheaval of how the reports system works
* 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>
2022-06-19 22:03:01 -07:00
fb14fbd4fc Update report success close to actually be one second
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-19 19:26:19 -07:00
b838663d50 Add preliminary report system
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>
2022-06-14 14:56:50 -07:00
ec011dc047 Add winbox.js to base.html
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-06-11 23:59:26 -07:00
6d16db0762 Remove unused html file
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-05-07 17:39:24 -07:00
bd6a86169d Add redirect to page 1 from bare URL
Previously, you could browse /board/ and /board/page/1/ in the browser
and they would be the same thing. Now, /board/ redirects to
/board/page/1/ to keep things unambiguous.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-05-07 16:31:32 -07:00
439035f1d8 Add return link to thread view
When you're looking at a post, there is now a "return" link that will
take you back to page 1 of the board.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-05-07 16:30:32 -07:00
994e4904a6 Add page count and links to bottom of board view
Current page shows up on the bottom of every board with next/prev links
where applicable.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-05-07 15:14:50 -07:00
fe8ea04d18 Add support for i18n and l10n
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>
2022-05-07 14:19:06 -07:00
6ed47f9957 Add max image upload size limit
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-05-04 21:14:00 -07:00
e6c60ff93c Add image upload support
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>
2022-05-04 19:45:36 -07:00
126db039e2 Initial commit
Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-05-03 18:02:04 -07:00