diff options
author | Steven Le Rouzic <steven.lerouzic@gmail.com> | 2024-04-15 23:17:09 +0200 |
---|---|---|
committer | Steven Le Rouzic <steven.lerouzic@gmail.com> | 2024-04-15 23:17:09 +0200 |
commit | 3d507d36ea2c7955d98a16b85cb7bc02c8923caa (patch) | |
tree | 82a26595e2c3fc37de7c7b84aecdcb38635ebfeb /view/login.templ | |
parent | 6ceda23af460ddd4f79b476248a4244e60932926 (diff) |
User login & logout
Diffstat (limited to 'view/login.templ')
-rw-r--r-- | view/login.templ | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/view/login.templ b/view/login.templ new file mode 100644 index 0000000..f8ea6e3 --- /dev/null +++ b/view/login.templ @@ -0,0 +1,29 @@ +package view
+
+import (
+ "stevenlr.com/timer/model"
+)
+
+templ LoginFormError(currentUser *model.User, err string) {
+ <div class="login-form">
+ if currentUser == nil {
+ <form hx-post="/login" hx-target-error="closest .login-form">
+ <p>
+ <input type="text" name="user" placeholder="User" />
+ <input type="password" name="password" placeholder="Password" />
+ <button type="submit">Sign in</button>
+ if err != "" {
+ <span style="color:red;">{ err }</span>
+ }
+ </p>
+ </form>
+ } else {
+ <p>Signed in as { currentUser.Name } <button type="button" hx-post="/logout" hx-refresh>Sign out</button></p>
+ }
+ </div>
+}
+
+templ LoginForm(currentUser *model.User) {
+ @LoginFormError(currentUser, "")
+}
+
|