Cody Joyce 2 months ago
parent
commit
5d1a58002d

+ 15 - 3
app/app.go

@@ -1,24 +1,36 @@
 package app
 
 import (
+	"html/template"
+
 	"git.clearsky.net.au/cody/gex.git/app/route/home"
+	"git.clearsky.net.au/cody/gex.git/pkg/render"
 	"git.clearsky.net.au/cody/gex.git/pkg/sec"
 	"git.clearsky.net.au/cody/gex.git/pkg/sess"
 
 	"git.clearsky.net.au/cody/gex.git/pkg/gen"
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 )
 
 func Init() {
 	gen.GeneratePages("app")
+	render.Include = func(req *srv.Req, props render.Props, funcs render.Funcs) {
+		props["Sess"] = req.Ctx["Sess"]
+		funcs["Cody"] = func() template.HTML {
+			return "GO Fuck yourself"
+		}
+	}
 }
 
 func Middleware() {
-	gex.AddMiddleware(sess.Middleware)
-	gex.AddMiddleware(sec.Middleware)
+	srv.AddMiddleware(sess.Middleware)
+	srv.AddMiddleware(sec.Middleware)
+
 }
 
 func Routes() {
 	type roles []string
 	sec.Route("/{$}", roles{"Everyone"}, home.Index)
 }
+
+// props and funcs to include with every render

+ 1 - 1
app/layout/app.gen.tpl

@@ -6,7 +6,7 @@
     <link rel="stylesheet" href="/app/pub/css/app.gen.css">
     
 </head>
-<body class="YFmXvnoP">
+<body class="ICZvIYWz">
     
 </body>
 </html>

+ 2 - 2
app/route/home/home.go

@@ -1,11 +1,11 @@
 package home
 
 import (
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
 	"git.clearsky.net.au/cody/gex.git/pkg/render"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 )
 
-func Index(req *gex.Req, res gex.Res) {
+func Index(req *srv.Req, res srv.Res) {
 
 	html := render.Template("./index.tpl", req)
 	res.Send(html)

+ 3 - 2
app/route/home/index.gen.tpl

@@ -6,9 +6,10 @@
     <link rel="stylesheet" href="/app/pub/css/app.gen.css">
     
 </head>
-<body class="YFmXvnoP">
+<body class="ICZvIYWz">
     
-        <h1 class="nTStyErB">Hello {{.Sess.User_name}}</h1>
+        <h1 class="SJFOGsYd">Hello {{.Sess.User_name}}</h1>
+        {{Cody}}
         
     
 </body>

+ 1 - 0
app/route/home/index.tpl

@@ -2,6 +2,7 @@
     <block id="title">Hello World</block>
     <block id="body">
         <h1>Hello {{.Sess.User_name}}</h1>
+        {{Cody}}
         
     </block>
 </layout>

+ 3 - 3
main.go

@@ -2,7 +2,7 @@ package main
 
 import (
 	"git.clearsky.net.au/cody/gex.git/app"
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 	"git.clearsky.net.au/cody/gex.git/pkg/utils"
 )
 
@@ -12,11 +12,11 @@ func main() {
 
 	app.Init()
 
-	gex.InitRouter()
+	srv.InitRouter()
 
 	app.Middleware()
 	app.Routes()
 
-	gex.StartServer()
+	srv.StartServer()
 
 }

+ 0 - 15
pkg/render/global.go

@@ -1,15 +0,0 @@
-package render
-
-import (
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
-	"git.clearsky.net.au/cody/gex.git/pkg/sess"
-)
-
-func global(req *gex.Req, props Props, funcs Funcs) {
-	sess := req.Ctx["Sess"].(sess.Sess)
-
-	props["Sess"] = &sess
-	props["Req"] = &req
-
-	funcs["HasRole"] = sess.HasRole
-}

+ 5 - 3
pkg/render/render.go

@@ -6,14 +6,16 @@ import (
 	"path/filepath"
 	"strings"
 
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 	"git.clearsky.net.au/cody/gex.git/pkg/utils"
 )
 
 type Props map[string]any
 type Funcs = template.FuncMap
 
-func Template(fp string, req *gex.Req, propFunc ...interface{}) string {
+var Include func(req *srv.Req, props Props, funcs Funcs)
+
+func Template(fp string, req *srv.Req, propFunc ...interface{}) string {
 	if !strings.Contains(fp, "app/") {
 		fp = utils.Cwd(2) + "/" + fp
 	}
@@ -30,7 +32,7 @@ func Template(fp string, req *gex.Req, propFunc ...interface{}) string {
 		funcs = propFunc[1].(Funcs)
 	}
 
-	global(req, props, funcs)
+	Include(req, props, funcs)
 
 	tmpl, err := template.
 		New(filepath.Base(fp)).

+ 2 - 2
pkg/sec/middleware.go

@@ -1,11 +1,11 @@
 package sec
 
 import (
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
 	"git.clearsky.net.au/cody/gex.git/pkg/sess"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 )
 
-func Middleware(req *gex.Req, res gex.Res) bool {
+func Middleware(req *srv.Req, res srv.Res) bool {
 	pattern := req.Pattern
 
 	// Cancel the security check as there are no permissions for this route

+ 3 - 3
pkg/sec/secure.go

@@ -1,10 +1,10 @@
 package sec
 
-import "git.clearsky.net.au/cody/gex.git/pkg/gex"
+import "git.clearsky.net.au/cody/gex.git/pkg/srv"
 
 var permissions = make(map[string][]string)
 
-func Route(pattern string, roles []string, handler func(req *gex.Req, res gex.Res)) {
+func Route(pattern string, roles []string, handler func(req *srv.Req, res srv.Res)) {
 	permissions[pattern] = roles
-	gex.Route(pattern, handler)
+	srv.Route(pattern, handler)
 }

+ 2 - 2
pkg/sess/middleware.go

@@ -1,8 +1,8 @@
 package sess
 
-import "git.clearsky.net.au/cody/gex.git/pkg/gex"
+import "git.clearsky.net.au/cody/gex.git/pkg/srv"
 
-func Middleware(req *gex.Req, res gex.Res) bool {
+func Middleware(req *srv.Req, res srv.Res) bool {
 	var sess Sess
 	sess.Construct(req, res)
 	sess.Save()

+ 4 - 4
pkg/sess/session.go

@@ -4,15 +4,15 @@ import (
 	"encoding/json"
 	"fmt"
 
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
 	"git.clearsky.net.au/cody/gex.git/pkg/sess/jwt"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 
 	"time"
 )
 
 type Sess struct {
-	req       *gex.Req
-	res       gex.Res
+	req       *srv.Req
+	res       srv.Res
 	User_id   int
 	User_name string
 	Roles     []string
@@ -35,7 +35,7 @@ func (sess *Sess) setDefaults() {
 	sess.Expires = Expires
 }
 
-func (sess *Sess) Construct(req *gex.Req, res gex.Res) {
+func (sess *Sess) Construct(req *srv.Req, res srv.Res) {
 	sess.req = req
 	sess.res = res
 	sess.setDefaults()

+ 1 - 1
pkg/gex/middleware.go → pkg/srv/middleware.go

@@ -1,4 +1,4 @@
-package gex
+package srv
 
 type middlewareHandler func(req *Req, res Res) bool
 

+ 1 - 1
pkg/gex/request.go → pkg/srv/request.go

@@ -1,4 +1,4 @@
-package gex
+package srv
 
 import (
 	"net/http"

+ 1 - 1
pkg/gex/response.go → pkg/srv/response.go

@@ -1,4 +1,4 @@
-package gex
+package srv
 
 import (
 	"fmt"

+ 1 - 1
pkg/gex/router.go → pkg/srv/router.go

@@ -1,4 +1,4 @@
-package gex
+package srv
 
 import (
 	"net/http"

+ 1 - 1
pkg/gex/server.go → pkg/srv/server.go

@@ -1,4 +1,4 @@
-package gex
+package srv
 
 import (
 	"fmt"

+ 1 - 1
tmp/build-errors.log

@@ -1 +1 @@
-exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1
+exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1

BIN
tmp/main