// GET handles the GET method on browse page func GET(w http.ResponseWriter, r *http.Request, c *config.Config) (int, error) { functions := template.FuncMap{ "CanBeEdited": utils.CanBeEdited, "Defined": utils.Defined, } tpl, err := utils.GetTemplate(r, functions, "browse") if err != nil { return http.StatusInternalServerError, err } b := browse.Browse{ Next: middleware.HandlerFunc(func(w http.ResponseWriter, r *http.Request) (int, error) { return 404, nil }), Root: c.Path, Configs: []browse.Config{ { PathScope: "/", Variables: c, Template: tpl, }, }, IgnoreIndexes: true, } return b.ServeHTTP(w, r) }
// Browse configures a new Browse middleware instance. func Browse(c *Controller) (middleware.Middleware, error) { configs, err := browseParse(c) if err != nil { return nil, err } browse := browse.Browse{ Configs: configs, IgnoreIndexes: false, } return func(next middleware.Handler) middleware.Handler { browse.Next = next return browse }, nil }
// Browse configures a new Browse middleware instance. func Browse(c *Controller) (middleware.Middleware, error) { configs, err := browseParse(c) if err != nil { return nil, err } browse := browse.Browse{ Root: c.Root, Configs: configs, } return func(next middleware.Handler) middleware.Handler { browse.Next = next return browse }, nil }