This commit is contained in:
eson 2023-09-04 12:30:24 +08:00
parent 1724a78cd0
commit b01fc28fa9
4 changed files with 49 additions and 3 deletions

View File

@ -3,6 +3,7 @@ package logic
import (
"bytes"
"fusenapi/utils/check"
"fusenapi/utils/fstpl"
"log"
"net/smtp"
"sync"
@ -21,7 +22,7 @@ var tpls *template.Template
func init() {
var err error
tpls, err = template.ParseGlob("../../../../html_template/*.tpl")
tpls = fstpl.AutoParseTplFiles()
if err != nil {
log.Fatal(err)
}

View File

@ -1,7 +1,41 @@
package fstpl
import "html/template"
import (
"log"
"os"
"runtime"
"strings"
"text/template"
)
func ParseFile(t *template.Template) {
func AutoParseTplFiles() *template.Template {
var currentFilePath string
var ok bool
_, currentFilePath, _, ok = runtime.Caller(1)
if !ok {
panic("Error: Unable to get the current file path.")
}
dirs := strings.Split(currentFilePath, "/")
dirs = dirs[0 : len(dirs)-1]
var curdir string
for i := 0; i < 20; i++ {
curdir = strings.Join(dirs, "/")
finfo, err := os.Stat(curdir + "/fs_template")
//TODO: 完成
if err == nil && finfo.IsDir() {
tpls, err := template.ParseGlob(curdir + "/fs_template/*.tpl")
if err != nil {
log.Fatal(err)
}
return tpls
}
// log.Println(finfo, err)
dirs = dirs[:len(dirs)-1]
}
panic("can't find template dirs")
}

View File

@ -0,0 +1,11 @@
package fstpl
import (
"log"
"testing"
)
func TestF(t *testing.T) {
log.Println(AutoParseTplFiles())
}