/
main.go
30 lines (25 loc) · 902 Bytes
/
main.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
package main
import (
"fmt"
"net/http"
"github.com/mmanjoura/adsa-cms/qor-example/config"
"github.com/mmanjoura/adsa-cms/qor-example/config/admin"
"github.com/mmanjoura/adsa-cms/qor-example/config/api"
_ "github.com/mmanjoura/adsa-cms/qor-example/config/i18n"
"github.com/mmanjoura/adsa-cms/qor-example/config/routes"
_ "github.com/mmanjoura/adsa-cms/qor-example/db/migrations"
)
func main() {
mux := http.NewServeMux()
mux.Handle("/", routes.Router())
admin.Admin.MountTo("/admin", mux)
api.API.MountTo("/api", mux)
config.Filebox.MountTo("/downloads", mux)
for _, path := range []string{"system", "javascripts", "stylesheets", "images"} {
mux.Handle(fmt.Sprintf("/%s/", path), http.FileServer(http.Dir("public")))
}
fmt.Printf("Listening on: %v\n", config.Config.Port)
if err := http.ListenAndServe(fmt.Sprintf(":%d", config.Config.Port), mux); err != nil {
panic(err)
}
}