Cody Joyce 2 сар өмнө
parent
commit
5d1a58002d

+ 15 - 3
app/app.go

@@ -1,24 +1,36 @@
 package app
 package app
 
 
 import (
 import (
+	"html/template"
+
 	"git.clearsky.net.au/cody/gex.git/app/route/home"
 	"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/sec"
 	"git.clearsky.net.au/cody/gex.git/pkg/sess"
 	"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/gen"
-	"git.clearsky.net.au/cody/gex.git/pkg/gex"
+	"git.clearsky.net.au/cody/gex.git/pkg/srv"
 )
 )
 
 
 func Init() {
 func Init() {
 	gen.GeneratePages("app")
 	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() {
 func Middleware() {
-	gex.AddMiddleware(sess.Middleware)
-	gex.AddMiddleware(sec.Middleware)
+	srv.AddMiddleware(sess.Middleware)
+	srv.AddMiddleware(sec.Middleware)
+
 }
 }
 
 
 func Routes() {
 func Routes() {
 	type roles []string
 	type roles []string
 	sec.Route("/{$}", roles{"Everyone"}, home.Index)
 	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">
     <link rel="stylesheet" href="/app/pub/css/app.gen.css">
     
     
 </head>
 </head>
-<body class="YFmXvnoP">
+<body class="ICZvIYWz">
     
     
 </body>
 </body>
 </html>
 </html>

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

@@ -1,11 +1,11 @@
 package home
 package home
 
 
 import (
 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/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)
 	html := render.Template("./index.tpl", req)
 	res.Send(html)
 	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">
     <link rel="stylesheet" href="/app/pub/css/app.gen.css">
     
     
 </head>
 </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>
 </body>

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

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

+ 3 - 3
main.go

@@ -2,7 +2,7 @@ package main
 
 
 import (
 import (
 	"git.clearsky.net.au/cody/gex.git/app"
 	"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"
 	"git.clearsky.net.au/cody/gex.git/pkg/utils"
 )
 )
 
 
@@ -12,11 +12,11 @@ func main() {
 
 
 	app.Init()
 	app.Init()
 
 
-	gex.InitRouter()
+	srv.InitRouter()
 
 
 	app.Middleware()
 	app.Middleware()
 	app.Routes()
 	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"
 	"path/filepath"
 	"strings"
 	"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"
 	"git.clearsky.net.au/cody/gex.git/pkg/utils"
 )
 )
 
 
 type Props map[string]any
 type Props map[string]any
 type Funcs = template.FuncMap
 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/") {
 	if !strings.Contains(fp, "app/") {
 		fp = utils.Cwd(2) + "/" + fp
 		fp = utils.Cwd(2) + "/" + fp
 	}
 	}
@@ -30,7 +32,7 @@ func Template(fp string, req *gex.Req, propFunc ...interface{}) string {
 		funcs = propFunc[1].(Funcs)
 		funcs = propFunc[1].(Funcs)
 	}
 	}
 
 
-	global(req, props, funcs)
+	Include(req, props, funcs)
 
 
 	tmpl, err := template.
 	tmpl, err := template.
 		New(filepath.Base(fp)).
 		New(filepath.Base(fp)).

+ 2 - 2
pkg/sec/middleware.go

@@ -1,11 +1,11 @@
 package sec
 package sec
 
 
 import (
 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/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
 	pattern := req.Pattern
 
 
 	// Cancel the security check as there are no permissions for this route
 	// Cancel the security check as there are no permissions for this route

+ 3 - 3
pkg/sec/secure.go

@@ -1,10 +1,10 @@
 package sec
 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)
 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
 	permissions[pattern] = roles
-	gex.Route(pattern, handler)
+	srv.Route(pattern, handler)
 }
 }

+ 2 - 2
pkg/sess/middleware.go

@@ -1,8 +1,8 @@
 package sess
 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
 	var sess Sess
 	sess.Construct(req, res)
 	sess.Construct(req, res)
 	sess.Save()
 	sess.Save()

+ 4 - 4
pkg/sess/session.go

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

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

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

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

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

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

@@ -1,4 +1,4 @@
-package gex
+package srv
 
 
 import (
 import (
 	"fmt"
 	"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