/
handlers.go
35 lines (29 loc) · 977 Bytes
/
handlers.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package home
import (
"net/http"
"github.com/qor/qor"
"github.com/qor/qor/utils"
"github.com/qor/render"
"github.com/rs/zerolog/log"
)
// Controller home controller
type Controller struct {
View *render.Render
}
// Index home index page
func (ctrl Controller) Index(w http.ResponseWriter, req *http.Request) {
log.Debug().Msg("viewpaths for home/index")
for _, v := range ctrl.View.ViewPaths {
log.Debug().Msg(v)
}
ctrl.View.Execute("index", map[string]interface{}{}, req, w)
}
// SwitchLocale switch locale
func (ctrl Controller) SwitchLocale(w http.ResponseWriter, req *http.Request) {
utils.SetCookie(http.Cookie{Name: "locale", Value: req.URL.Query().Get("locale")}, &qor.Context{Request: req, Writer: w})
http.Redirect(w, req, req.Referer(), http.StatusSeeOther)
}
// RedirectToAdmin 重定向到/admin, 暂时屏蔽前端界面
func (ctrl Controller) RedirectToAdmin(w http.ResponseWriter, req *http.Request) {
http.Redirect(w, req, "/admin", 302)
}