Commit Graph

156 Commits

Author SHA1 Message Date
Sage Vaillancourt 58bebc2109 Refactor index_get() with early returns. 2022-09-27 22:50:12 -04:00
Sage Vaillancourt 82faabd34a Remove previous css minification 2022-09-28 02:00:34 +00:00
Sage Vaillancourt 4915afa750 Fix requirements syntax 2022-09-28 01:56:52 +00:00
Sage Vaillancourt 777575619c Add and use Flask-Minify. 2022-09-28 01:55:10 +00:00
Sage Vaillancourt 1b32206a23 Implement template-switching.
Point testing subdomain to port 1111.
Fix busted <div>
2022-09-28 00:45:51 +00:00
Sage Vaillancourt 4ce13cad00 Fix arg list 2022-09-27 16:29:51 +00:00
Sage Vaillancourt cfcd318011 Call gs directly when compressing PDFs.
I.e. avoid unnecessary bash invocation.
2022-09-27 08:32:32 -04:00
Sage Vaillancourt 13781ba7d9 Move https responsibilities to caddy 2022-09-27 06:17:27 +00:00
Sage Vaillancourt 3857674244 Put fallbacks in their own file. 2022-09-27 02:47:38 +00:00
Sage Vaillancourt d358c55017 Add basic fallbacks for missing db/email creds.
Fallbacks may eventually warrant their own file.
Use f-strings to format password-reset emails.
Automatically delete email-reset rows after 15 minutes.
 - Cute, but a proper vacuum would likely be more robust.
Remove deprecated FLASK_ENV use.
Use exceptions in generate_pdf()
2022-09-26 17:00:21 -04:00
Sage Vaillancourt 7800c24f99 Forbid password resets after 15 minutes. 2022-09-26 09:40:48 -04:00
Sage Vaillancourt ae1a743855 Inform user if password-reset failed to send.
Remove unused db code.
2022-09-26 08:52:42 -04:00
Sage Vaillancourt c262762bdc Add __main__ to email for testing. 2022-09-26 08:40:10 -04:00
Sage Vaillancourt 9df78a9d6f Add email file!
Oops.
2022-09-26 12:24:59 +00:00
Sage Vaillancourt 7d44e7ed16 Show letter selector when anyone is signed in. 2022-09-26 03:39:58 +00:00
Sage Vaillancourt 611f4f10f6 Centralize index rendering.
Start building more flexibility about missing environment variables.
2022-09-25 21:57:55 -04:00
Sage Vaillancourt 0f73db5e45 Add functionality for password-reset emails.
Start building up multi-template feature.
Redirect to homepage and display error instead of returning plaintext.
Make usernames case-insensitive.
2022-09-26 01:38:17 +00:00
Sage Vaillancourt 98e385376c Don't create a new letter every time. 2022-09-25 03:02:52 +00:00
Sage Vaillancourt 2807c72740 Also host on :80 in prod
Somewhat forcefully puts users on https.
2022-09-25 01:12:32 +00:00
Sage Vaillancourt d8a4fa9bba Fix a few form-data bugs. 2022-09-24 21:59:38 +00:00
Sage Vaillancourt 8fbaf6e369 Try to pull form filling from database, where possible. 2022-09-24 17:39:10 -04:00
Sage Vaillancourt 88bfdb7530 Fix session variable name 2022-09-24 21:38:00 +00:00
Sage Vaillancourt b3f56872d7 Add email validation
Add a simple error display to base.jinja2
Build a bit of skeleton for saving letters to the DB.
2022-09-24 17:20:38 -04:00
Sage Vaillancourt 86563761f2 Add Create Account button to login section 2022-09-24 11:38:15 -04:00
Sage Vaillancourt aa212e2f1f Add secret key fallback with warning. 2022-09-24 10:25:04 -04:00
Sage Vaillancourt 3c02ce279e Tweak login form styling 2022-09-24 12:47:33 +00:00
Sage Vaillancourt 5975f5ddf1 Fix create_account id bug. 2022-09-23 19:42:08 -04:00
Sage Vaillancourt 1c41a1d27c Fix create_account page to point at appropriate route. 2022-09-23 19:41:04 -04:00
Sage Vaillancourt 32b2455070 Add actual create-account action. 2022-09-23 19:40:07 -04:00
Sage Vaillancourt a421e25344 Several style improvements.
Fix create_account() bug.
Lighter placeholder text.
Fancy black-white-button.
Username -> Email on login/create account forms.
2022-09-23 23:33:20 +00:00
Sage Vaillancourt c27d4e9189 Added create account page 2022-09-23 18:59:42 -04:00
Sage Vaillancourt 17494ca4df Add base jinja template. 2022-09-23 18:55:45 -04:00
Sage Vaillancourt fb54a9c2e0 Another form precision tweak. 2022-09-23 15:27:12 -04:00
Sage Vaillancourt 8147c3140e More precise form styling. 2022-09-23 15:25:51 -04:00
Sage Vaillancourt 1eab1e9f10 Use unique login username id. 2022-09-23 15:14:24 -04:00
Sage Vaillancourt 6f456fc5ce Some login/logout fixes 2022-09-23 19:12:07 +00:00
Sage Vaillancourt 396376669c Add basic login/logout forms.
The new forms need better styling.
Remove index_cache.
2022-09-23 15:02:15 -04:00
Sage Vaillancourt 00472d39a3 Merge branch 'main' of https://gitlab.com/sagev9000/undercover into main 2022-09-23 14:14:15 -04:00
Sage Vaillancourt 45eb4adff0 Display username when logged in. 2022-09-23 14:14:06 -04:00
Sage Vaillancourt 6ea74adc90 Redirect to tiny login form on /login GET 2022-09-23 18:13:43 +00:00
Sage Vaillancourt d5be15a827 Handle possibly-missing users. 2022-09-23 14:08:44 -04:00
Sage Vaillancourt 6c56b17dfc Start toying with logins.
Use SECRET_KEY from environment.
Remove (I believe) unnecessary config information.
2022-09-23 13:59:43 -04:00
Sage Vaillancourt a9c256e74f Rename latty.py to pdf_builder.py
Other small cleanup.
2022-09-23 13:37:37 -04:00
Sage Vaillancourt d7efb0d6ad Add favicon. 2022-09-23 12:00:59 -04:00
Sage Vaillancourt 178656c929 Merge remote-tracking branch 'origin/main' into main 2022-09-23 11:36:24 -04:00
Sage Vaillancourt ff659db77f Some project re-org, and add pytest.
Rename flaskr/ to undercover/
Rename writing_templates/ to letter_templates/
Put db testing code into __main__ check
Break css optimization into its own file and add simple testing.
Rename writing.py to routes.py.
Move cached index directly into routes.py
2022-09-23 11:35:56 -04:00
Sage Vaillancourt 80350b370a Merge branch 'main' of https://gitlab.com/sagev9000/undercover 2022-09-23 13:23:04 +00:00
Sage Vaillancourt 28c84a05cb Animated generate button 2022-09-23 13:22:27 +00:00
Sage Vaillancourt 0eee7d0ef7 Fix optimization call. 2022-09-23 09:21:58 -04:00
Sage Vaillancourt f8d1dac945 Break up css optimization functions.
sans -> sans-serif
2022-09-23 09:19:30 -04:00