feat(accounts): implement user accounts, sessions, and dashboards
All checks were successful
Build and Publish Docker Image / deploy (push) Successful in 1m8s
All checks were successful
Build and Publish Docker Image / deploy (push) Successful in 1m8s
Introduce Stage 4 features to support multi-user accounts, cookie-based web sessions, and personal dashboards. Changes include: - Adding `/register` to bootstrap the first admin account and `/login`/`/logout` for session management. - Creating a personal dashboard (`/app`) to display owned boxes, storage usage, and upload history. - Implementing admin user management (`/admin/users`) for generating invite links and managing user states. - Updating the bbolt database schema to store users, sessions, invites, and collections. - Adding `golang.org/x/crypto` for password hashing and introducing unit tests for account handlers.
This commit is contained in:
@@ -27,6 +27,13 @@
|
||||
<span>{{.AppName}}</span>
|
||||
</a>
|
||||
<div class="nav-links">
|
||||
{{if .CurrentUser}}
|
||||
<a class="button button-ghost" href="/app">My files</a>
|
||||
<a class="button button-ghost" href="/account/settings">Account</a>
|
||||
<form action="/logout" method="post" class="inline-form"><button class="button button-outline" type="submit">Logout</button></form>
|
||||
{{else}}
|
||||
<a class="button button-ghost" href="/login">Login</a>
|
||||
{{end}}
|
||||
<a class="button button-ghost" href="/api">API</a>
|
||||
<a class="button button-outline" href="/healthz">Health</a>
|
||||
</div>
|
||||
@@ -39,7 +46,7 @@
|
||||
|
||||
<footer class="site-footer">
|
||||
<span>{{.AppName}} · {{.CurrentYear}} · self-hosted</span>
|
||||
<span class="footer-links"><a href="/">Upload</a><a href="/healthz">Health</a></span>
|
||||
<span class="footer-links"><a href="/">Upload</a>{{if .CurrentUser}}<a href="/app">My files</a>{{end}}<a href="/healthz">Health</a></span>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user