Commit Graph

34 Commits

Author SHA1 Message Date
73915fcd98
fix(go): resolve signin/logout issues for all time
All checks were successful
continuous-integration/drone/push Build is passing
affects:
* app/settings
* app/server
* handlers
    * signin
    * signup
    * logout
    * home
    * middleware
2023-09-08 17:22:20 +02:00
1b2d860beb
fix(go,tmpl): solve the Chromium/Safari logout...
All checks were successful
continuous-integration/drone/push Build is passing
...issue by deleting the session cookie after successful password change
and forcing the user to re-authenticate.

additionally, split the InitialPasswordChange func into separate "GET"
and "POST" variants.
2023-09-04 19:21:01 +02:00
6b45213649
go: add user onboarding, HIBP search functionality
All checks were successful
continuous-integration/drone/push Build is passing
* add user onboarding workflow
* fix user editing (no edits of passwords of regular users after
  onboarding)
* refresh HIBP breach cache in DB on app start-up
* display HIBP breach details
* fix request scheduling to prevent panics (this still needs some love..)
* fix middleware auth
* add TODOs
* update head.tmpl
* reword some error messages
2023-08-24 18:43:24 +02:00
ab93161867
go,tmpl: allow conditionally disabling the sign-up
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-16 15:07:10 +02:00
70af5cc86a
fix: repair broken routes
All checks were successful
continuous-integration/drone/push Build is passing
a follow up of:
7f87d0f2c2
1b64571429
2023-08-15 17:56:25 +02:00
7f87d0f2c2
routes: regroup, reorganise, break out csrf config
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-13 16:44:40 +02:00
1b64571429
routes: group certain endpoints
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-13 15:52:31 +02:00
e7be74d1eb
routes: add extra handling for signin/signup
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-12 14:50:49 +02:00
1c67191c09
feat: implement user deletion
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-07 21:29:30 +02:00
52dfe44080
go(logout): let only authorised users log out
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-07 14:40:46 +02:00
81ca7d8ec1
go,tmpl: add a way to manage API keys [wip]
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-05 22:13:43 +02:00
leo
5f8548958f
go: add usr updating [wip]
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-02 20:00:14 +02:00
leo
32aa8d8852
go: add+enable compression middleware
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-31 22:42:50 +02:00
leo
5cf5ba51bc
go: enable HEAD method for some routes
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-31 22:32:25 +02:00
leo
ffc9b74c75
go: add a simple caching middleware for assets
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-31 22:29:52 +02:00
leo
dbd0e9d01d
go: implement session auth middleware
All checks were successful
continuous-integration/drone/push Build is passing
* simplify protection of endpoints
* role discernment still occures in respective handlers
* db client needs to be passed into handlers as a global var now
2023-05-30 23:50:37 +02:00
leo
ae5c4f1dd4
go,tmpl: add usr details listing
All checks were successful
continuous-integration/drone/push Build is passing
* add tmpl
* add handler for route /manage/user/:id
* add convenience helper func
* handle not found/invalid uuid errors
2023-05-29 22:42:18 +02:00
leo
547f6e7b3c
add user creation
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-22 06:47:33 +02:00
leo
97ea29d043
add user listing
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-22 03:22:58 +02:00
leo
3a2f85f683
feat: add license headers (+spdx id)
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-20 20:15:57 +02:00
leo
31ab083f8a
handlers: add health-check endpoints
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-13 22:33:38 +02:00
leo
122ea638c9
go: refactor template rendering
All checks were successful
continuous-integration/drone/push Build is passing
* create pkg 'modules/template'
* move template rendering code from 'handlers' to 'modules/template'
* update call sites
* walk the 'templates' dir to discover nested hierarchies
* solidify LiveMode handling (vs embedded assets)
* break out funcMap to it's own file
* general clean-up
2023-05-11 04:32:39 +02:00
leo
9dbc475145
go: implement the Echo renderer for templates
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 21:50:35 +02:00
leo
eafc9c1e92
go,tmpl: conditionally show content to users
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 00:03:41 +02:00
leo
c4d0cb209b
go: add settings struct
All checks were successful
continuous-integration/drone/push Build is passing
* let the settings struct be the single source of truth
* rm app fields that are covered by settings
* pass around a pointer to settings instead of config
* consolidate config+flags into settings on start-up
* update tests
* rm empty settings.go file

fixes #4
2023-05-03 02:18:29 +02:00
leo
1d421465f5
go: have a dynamic {asset,tmpl}Path
All checks were successful
continuous-integration/drone/push Build is passing
* handle errors more specifically when loading assets/tmpls
2023-04-28 23:16:58 +02:00
leo
3cb2da457e
routes: change 303 -> 301 for /static -> /assets
All checks were successful
continuous-integration/drone/push Build is passing
* should enable users' browsers to make use of the status code and cache
  the redirect (in case anybody accesses the older version of the app
  and hits /static)
2023-04-28 19:07:43 +02:00
leo
bde8cfc88e
fix: properly redirect /static/* to /assets/*
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-27 17:43:34 +02:00
leo
d99d86a2be
go(app): use embedded variable value
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-26 23:11:58 +02:00
leo
8c7c84f6f9
go: rm deadcode from app/routes.go
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-26 23:05:48 +02:00
leo
1655d6b792
go: /static -> /assets in varnames,routes,dirs
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-26 22:44:18 +02:00
leo
f129606b8f
add bulk changes
All checks were successful
continuous-integration/drone/push Build is passing
* add handlers for signin,singup,logout...
* introduce ent ORM and add user schema
* add live mode, devel mode to selectively turn on features via
  config/flags
* add templates, handle embedding moar smarter:
  * live mode uses live folder structure, else embedded templates are
    used
* start using tailwindcss to style stuff
* add development goodies for hot-reloading (browser-sync - bs.js)
* pimp-up config.dhall with actual custom config Type (enables remote
  schema and local values only as needed)
* add justfile (alternative to makefile for process automation)
2023-04-13 00:07:08 +02:00
leo
5937a24ad9
go: add a handler for admin endpoint(s) 2023-03-22 23:11:14 +01:00
leo
c945c9fcb7
go: add a method to setup routes 2023-03-22 23:03:21 +01:00