|
|
|
package tmpl
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
"github.com/taoshihan1991/imaptool/config"
|
|
|
|
"github.com/taoshihan1991/imaptool/models"
|
|
|
|
"github.com/taoshihan1991/imaptool/tools"
|
|
|
|
"html"
|
|
|
|
"html/template"
|
|
|
|
"net/http"
|
|
|
|
)
|
|
|
|
|
|
|
|
type CommonHtml struct {
|
|
|
|
Header template.HTML
|
|
|
|
Nav template.HTML
|
|
|
|
Left template.HTML
|
|
|
|
Bottom template.HTML
|
|
|
|
Rw http.ResponseWriter
|
|
|
|
}
|
|
|
|
|
|
|
|
func NewRender(rw http.ResponseWriter) *CommonHtml {
|
|
|
|
obj := new(CommonHtml)
|
|
|
|
obj.Rw = rw
|
|
|
|
header := tools.FileGetContent("html/header.html")
|
|
|
|
nav := tools.FileGetContent("html/nav.html")
|
|
|
|
obj.Header = template.HTML(header)
|
|
|
|
obj.Nav = template.HTML(nav)
|
|
|
|
return obj
|
|
|
|
}
|
|
|
|
func (obj *CommonHtml) SetLeft(file string) {
|
|
|
|
leftStr := tools.FileGetContent("html/" + file + ".html")
|
|
|
|
obj.Left = template.HTML(leftStr)
|
|
|
|
}
|
|
|
|
func (obj *CommonHtml) SetBottom(file string) {
|
|
|
|
str := tools.FileGetContent("html/" + file + ".html")
|
|
|
|
obj.Bottom = template.HTML(str)
|
|
|
|
}
|
|
|
|
func (obj *CommonHtml) Display(file string, data interface{}) {
|
|
|
|
if data == nil {
|
|
|
|
data = obj
|
|
|
|
}
|
|
|
|
main := tools.FileGetContent("html/" + file + ".html")
|
|
|
|
t, _ := template.New(file).Parse(main)
|
|
|
|
t.Execute(obj.Rw, data)
|
|
|
|
}
|
|
|
|
|
|
|
|
//首页
|
|
|
|
func PageIndex(c *gin.Context) {
|
|
|
|
if c.Request.RequestURI == "/favicon.ico" {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
lang, _ := c.Get("lang")
|
|
|
|
language := config.CreateLanguage(lang.(string))
|
|
|
|
about := models.FindAboutByPageLanguage("index", lang.(string))
|
|
|
|
cssJs := html.UnescapeString(about.CssJs)
|
|
|
|
title := about.TitleCn
|
|
|
|
keywords := about.KeywordsCn
|
|
|
|
desc := html.UnescapeString(about.DescCn)
|
|
|
|
content := html.UnescapeString(about.HtmlCn)
|
|
|
|
if lang == "en" {
|
|
|
|
title = about.TitleEn
|
|
|
|
keywords = about.KeywordsEn
|
|
|
|
desc = html.UnescapeString(about.DescEn)
|
|
|
|
content = html.UnescapeString(about.HtmlEn)
|
|
|
|
}
|
|
|
|
c.HTML(http.StatusOK, "index.html", gin.H{
|
|
|
|
"OnlineChat": language.IndexOnlineChat,
|
|
|
|
"Notice": language.Notice,
|
|
|
|
"NowAsk": language.NowAsk,
|
|
|
|
"LaterAsk": language.LaterAsk,
|
|
|
|
"Lang": lang,
|
|
|
|
"Title": title,
|
|
|
|
"Keywords": keywords,
|
|
|
|
"Desc": desc,
|
|
|
|
"Content": template.HTML(content),
|
|
|
|
"CssJs": template.HTML(cssJs),
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
//登陆界面
|
|
|
|
func PageMain(c *gin.Context) {
|
|
|
|
nav := tools.FileGetContent("html/nav.html")
|
|
|
|
c.HTML(http.StatusOK, "main.html", gin.H{
|
|
|
|
"Nav": template.HTML(nav),
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
//客服界面
|
|
|
|
func PageChatMain(c *gin.Context) {
|
|
|
|
c.HTML(http.StatusOK, "chat_main.html", nil)
|
|
|
|
}
|