Completed template system, added login/logout

This commit is contained in:
2017-10-06 21:32:26 +02:00
parent 8c8aad3312
commit 2d8bdf9643
19 changed files with 399 additions and 51 deletions
+12 -10
View File
@@ -2,7 +2,7 @@ package viewmodel
import (
"fmt"
"strings"
"log"
"git.aiterp.net/AiteRP/aitestory/server"
"git.aiterp.net/gisle/wrouter/auth"
@@ -10,20 +10,22 @@ import (
// Base is the basic information used to render the page
type Base struct {
UserID string
UserName string
UserRole string
UserLoggedIn bool
ViewTitle string
User struct {
Name string
Role string
LoggedIn bool
}
ViewTitle string
}
// InitBase initializes the base of the viewmodel
func (base *Base) setupBase(user *auth.User, viewTitle string) {
if user != nil {
base.UserID = user.ID
base.UserName = strings.SplitN(user.ID, ":", 2)[1]
base.UserRole = user.Data["role"]
base.UserLoggedIn = true
log.Printf("%+v", user)
base.User.Name = user.ID
base.User.Role = user.Data["role"]
base.User.LoggedIn = true
}
base.ViewTitle = fmt.Sprintf("%s - %s", viewTitle, server.Main.Config.View.Title)
+5 -4
View File
@@ -8,10 +8,11 @@ import (
// PageList is a view model for rendering the front page
type PageList struct {
Base
Headers []model.Header
Category string
ActiveTags []model.Tag
FavoriteTags []model.Tag
Headers []model.Header
ActiveCategory model.PageCategory
Categories []model.PageCategory
ActiveTag model.Tag
FavoriteTags []model.Tag
}
// Setup sets up the page model and the base, and should
+19
View File
@@ -0,0 +1,19 @@
package viewmodel
import (
"git.aiterp.net/gisle/wrouter/auth"
)
// UserLogin is a view model for rendering the user login form
type UserLogin struct {
Base
Error string
UserName string
Password string
}
// Setup sets up the page model and the base, and should
// be run after the details have been filled in.
func (ul *UserLogin) Setup(user *auth.User) {
ul.setupBase(user, "Login")
}