Commit Graph

52 Commits

Author SHA1 Message Date
Ben Visness a4ad2c5f04 Update data model for personal projects
Also:
- Added a helper for fetching posts with appropriate visibility
- Added personal projects to the project index
2021-11-06 15:25:31 -05:00
Ben Visness 251446d6e4 Do jam showcase stuff 2021-09-24 22:53:00 -05:00
Ben Visness 9c7acd7dbb Add a sort field to subforums 2021-09-23 01:18:45 -05:00
Ben Visness 986a42c1ac Switch to centralized helpers for fetching threads/posts
This includes the ability to "shadowban" new users who have not yet been
approved. We do not have UI for approving these users.

Migrate deserving users to new Approved status

Add post fetching helpers as well

The logic in the thread/post stuff is definitely getting redundant, but
I'm not sure I'm yet ready to try to abstract any of it away.

The next thing to do is probably to update blogs and other places that
fetch threads/posts, and delete the old helpers.

Move forums and blogs fully to new helpers

Use the helpers on the landing page too

that was easy!

Fix up some spots I missed

Check user status and use helpers on the profile page
2021-09-22 23:48:31 -05:00
Asaf Gartner 7063fd5604 Added basic usage tracking for posts. 2021-09-22 22:18:39 +03:00
Ben Visness b2a35c469a Update project last updated fields on new forum/blog posts 2021-09-08 22:44:46 -05:00
Ben Visness 36bb2ce2d5 Put timestamp in avatar filenames to avoid cache problems 2021-09-07 19:55:52 -05:00
Ben Visness f1e2e99663 Don't treat replies to the OP as replies 2021-09-06 16:40:00 -05:00
Ben Visness b53770932d No longer require a migration in seedfile
We don't need to do this any more, since our database backups now
include the migration table. The seedfile command also no longer
requires the user to type a password.

This also prevents the Discord history bot from running when it has no
credentials.
2021-09-05 19:43:49 -05:00
Ben Visness 59f5243839 Prefix things with "public." inside Postgres functions
Boy is this a stupid behavior of Postgres, and one that only really
manifests when restoring data from a backup.
2021-09-05 17:43:34 -05:00
Ben Visness a42973c3cb More server setup stuff I dunno I'm sorry 2021-09-04 16:09:01 -05:00
Asaf Gartner 307a122518 Another attempt at crash mailing 2021-09-04 21:59:03 +03:00
Ben Visness c59b58daf0 Restrict project header links 2021-08-28 08:11:01 -05:00
Ben Visness a655fe96bc Fix up remaining project colors 2021-08-28 07:14:49 -05:00
Ben Visness 67b86720a9 Add user edit form
Add most of the user settings backend

still need to do discord lol

Add the Discord settings

Add avatar uploads
2021-08-27 17:18:02 -05:00
Ben Visness 719c0d230c Delete stuff on message delete
still need to do bulk delete
2021-08-26 18:33:39 -05:00
Ben Visness ec64babdd6 Create snippets! 2021-08-23 19:49:39 -05:00
Asaf Gartner 40ba0d5455 Added unique constraint on onetimetoken 2021-08-17 08:31:48 +03:00
Ben Visness d92bf9a9b8 Add Discord account linking 2021-08-15 23:40:56 -05:00
Ben Visness 38a1188be7 Add Discord integration
Clean up several TODOs

Implement the full disconnect / resume flow

Detect zombied connections and restart

Implement the random delay on reconnect

Implement message sending!!

(with a goofy feedback loop on the echo bot)

Fix the feedback loop in the echo bot

Clean up the Discord gateway code

Many things are methods now to reduce the amount of explicit plumbing.
Connection handling should be a little more robust, and we have an
actual error handling strategy now.

Allow sending multiple Discord messages at once

Delete irrelevant tests

uhh, start rate limiting

Add per-route rate limiting

Add global rate limit handling

Handle context cancellation in Discord REST code

Allow changing buckets per route

Add the showcase rejection bot

Add library bot
2021-08-15 20:21:04 -05:00
Asaf Gartner 660f65ba95 Registration flow and email 2021-08-08 23:05:52 +03:00
Ben Visness 038ee7e90e Add permission check to the New Post button 2021-08-02 22:27:59 -05:00
Ben Visness c3e067fa44 Add blog indexes 2021-08-02 20:52:46 -05:00
Ben Visness bde7c576e3 Don't crash while listing migrations 2021-07-30 21:36:37 -05:00
Ben Visness b0f75675c8 Implement blog posts 2021-07-30 14:59:48 -05:00
Ben Visness 958aeb45e4 Add back the ability to mark everything on the site as unread 2021-07-29 23:48:30 -05:00
Ben Visness 8ecb4a7173 Rework the category/thread data model
Threads can stand alone now. Threads can be attached to resources
directly without requiring a category. In addition, a lot of wiki stuff
and library discussion stuff was deleted because we're not gonna port
it.
2021-07-29 22:49:24 -05:00
Asaf Gartner b41a556fcd Merge branch 'master' of gitssh.handmade.network:hmn/hmn 2021-07-23 06:22:57 +03:00
Asaf Gartner a46fd988f5 Podcasts 2021-07-23 06:09:46 +03:00
Ben Visness e9ba9b3dde Add permission check on post editing 2021-07-21 21:16:10 -05:00
Ben Visness 1ccf715c2d Add an explicit post reply feature 2021-07-19 22:07:15 -05:00
Ben Visness c1785d79a4 Get forum post creation working 2021-07-04 17:48:08 -05:00
Ben Visness de0b7a08fb Clean up lots of old post fields 2021-07-04 16:24:48 -05:00
Ben Visness 86e228d845 WIP broken schema changes for forum editing 2021-07-04 15:32:07 -05:00
Ben Visness 00b0383030 Start forum editing experience, including bbcode parser 2021-07-04 15:31:37 -05:00
Ben Visness c8231750aa Make some project fields not null 2021-05-05 23:04:58 -05:00
Ben Visness 71a46ba5a1 Get forum threads mostly implemented
Still several TODOs in the handler and templates
2021-05-03 20:59:45 -05:00
Ben Visness 285fd3eaf0 Start work on forum category indexes 2021-04-28 23:52:27 -05:00
Ben Visness 5d697e5fff Implement post links in feed / landing page 2021-04-27 22:30:02 -05:00
Asaf Gartner 4f9df3382f Added unique case-insensitive index on auth_user.username
Changed login code to look up lowercase usernames
2021-04-27 06:55:17 +03:00
Ben Visness 649f353b8c Improve post query performance 2021-04-26 20:49:46 -05:00
Asaf Gartner ed6ce26697 seedfile now drops and recreates the db. No need for `down` migrations. 2021-04-25 09:27:04 +03:00
Ben Visness a04b00c0a7 Get post content migrated and loading 2021-04-22 23:07:44 -05:00
Ben Visness 97a80e7c4f Add TODO(opensource) comments for future reference 2021-04-16 18:04:01 -05:00
Ben Visness a644ec1caa Successfully remove the member and memberextended tables! 2021-04-16 00:08:47 -05:00
Ben Visness cbe4b71869 Some kind of arbitrary checkpoint
I am in the middle of:
- porting the landing page
- making some db changes to help with that
- deleting the member and memberextended tables

Mainly the last one. Doing so requires us to update all the other tables
that currently point at member and memberextended so that the foreign
keys will point directly to users. The big thing that we still have yet
to do is links, and actually copying data from the member and
memberextended tables to users.
2021-04-14 20:17:05 -05:00
Asaf Gartner e827f47834 Corrected some comments. 2021-04-12 17:12:57 +03:00
Asaf Gartner a8c9167e24 Removed irrelevant code. 2021-04-12 16:51:30 +03:00
Asaf Gartner cdfd558730 Added seed command 2021-04-12 12:56:44 +03:00
Ben Visness f7ac023c44 Re-hash user's passwords if necessary when they log in 2021-03-28 10:32:30 -05:00