mirror of
https://github.com/eiblog/eiblog.git
synced 2026-02-04 13:52:26 +08:00
fix: time in location
This commit is contained in:
@@ -12,7 +12,12 @@ import (
|
||||
"time"
|
||||
)
|
||||
|
||||
var TplFuncMap = make(template.FuncMap)
|
||||
var (
|
||||
// TplFuncMap template func map
|
||||
TplFuncMap = make(template.FuncMap)
|
||||
// TimeLocation set location timezone
|
||||
TimeLocation = time.UTC
|
||||
)
|
||||
|
||||
func init() {
|
||||
TplFuncMap["dateformat"] = DateFormat
|
||||
@@ -22,19 +27,23 @@ func init() {
|
||||
TplFuncMap["getavatar"] = GetAvatar
|
||||
}
|
||||
|
||||
// Str2html string to html
|
||||
func Str2html(raw string) htmpl.HTML {
|
||||
return htmpl.HTML(raw)
|
||||
}
|
||||
|
||||
// DateFormat takes a time and a layout string and returns a string with the formatted date. Used by the template parser as "dateformat"
|
||||
// DateFormat takes a time and a layout string and returns a string with the formatted date.
|
||||
// Used by the template parser as "dateformat"
|
||||
func DateFormat(t time.Time, layout string) string {
|
||||
return t.Format(layout)
|
||||
return t.In(TimeLocation).Format(layout)
|
||||
}
|
||||
|
||||
// Join join string array with sep
|
||||
func Join(a []string, sep string) string {
|
||||
return strings.Join(a, sep)
|
||||
}
|
||||
|
||||
// IsNotZero judge t is zero
|
||||
func IsNotZero(t time.Time) bool {
|
||||
return !t.IsZero()
|
||||
}
|
||||
@@ -43,6 +52,7 @@ func IsNotZero(t time.Time) bool {
|
||||
// url: https://<static_domain>/static/img/avatar.png
|
||||
var avatar string
|
||||
|
||||
// GetAvatar store avatar base64 into css
|
||||
func GetAvatar(domain string) string {
|
||||
if avatar == "" {
|
||||
resp, err := http.Get("https://" + domain + "/static/img/avatar.png")
|
||||
|
||||
43
tools/tmplfunc_test.go
Normal file
43
tools/tmplfunc_test.go
Normal file
@@ -0,0 +1,43 @@
|
||||
// Package tools provides ...
|
||||
package tools
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestDateFormat(t *testing.T) {
|
||||
now := time.Now()
|
||||
layout := "2006-01-02 15:04:05"
|
||||
str := DateFormat(now, layout)
|
||||
t.Log(str)
|
||||
|
||||
var err error
|
||||
TimeLocation, err = time.LoadLocation("Asia/Shanghai")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
str = DateFormat(now, layout)
|
||||
t.Log(str)
|
||||
}
|
||||
|
||||
func TestParseInLocation(t *testing.T) {
|
||||
date := "2021-04-27 15:33"
|
||||
layout := "2006-01-02 15:04"
|
||||
tm, err := time.Parse(layout, date)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(tm)
|
||||
|
||||
TimeLocation, err = time.LoadLocation("Asia/Shanghai")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
tm, err = time.ParseInLocation(layout, date, TimeLocation)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(tm.UTC())
|
||||
}
|
||||
Reference in New Issue
Block a user