diff options
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, "")
+}
+
|