mirror of
https://github.com/kevin-DL/revel-cmd.git
synced 2026-01-11 18:54:31 +00:00
Reformat of code Allow user to use a mix of command line arguments and flags Enhance the import tool to detect missing packages in the modules side Added test cases for all commands
60 lines
2.3 KiB
Go
60 lines
2.3 KiB
Go
package app
|
|
|
|
import (
|
|
"github.com/revel/revel"
|
|
)
|
|
|
|
var (
|
|
// AppVersion revel app version (ldflags)
|
|
AppVersion string
|
|
|
|
// BuildTime revel app build-time (ldflags)
|
|
BuildTime string
|
|
)
|
|
|
|
func init() {
|
|
// Filters is the default set of global filters.
|
|
revel.Filters = []revel.Filter{
|
|
revel.PanicFilter, // Recover from panics and display an error page instead.
|
|
revel.RouterFilter, // Use the routing table to select the right Action
|
|
revel.FilterConfiguringFilter, // A hook for adding or removing per-Action filters.
|
|
revel.ParamsFilter, // Parse parameters into Controller.Params.
|
|
revel.SessionFilter, // Restore and write the session cookie.
|
|
revel.FlashFilter, // Restore and write the flash cookie.
|
|
revel.ValidationFilter, // Restore kept validation errors and save new ones from cookie.
|
|
revel.I18nFilter, // Resolve the requested language
|
|
HeaderFilter, // Add some security based headers
|
|
revel.InterceptorFilter, // Run interceptors around the action.
|
|
revel.CompressFilter, // Compress the result.
|
|
revel.BeforeAfterFilter, // Call the before and after filter functions
|
|
revel.ActionInvoker, // Invoke the action.
|
|
}
|
|
|
|
// Register startup functions with OnAppStart
|
|
// revel.DevMode and revel.RunMode only work inside of OnAppStart. See Example Startup Script
|
|
// ( order dependent )
|
|
// revel.OnAppStart(ExampleStartupScript)
|
|
// revel.OnAppStart(InitDB)
|
|
// revel.OnAppStart(FillCache)
|
|
}
|
|
|
|
// HeaderFilter adds common security headers
|
|
// There is a full implementation of a CSRF filter in
|
|
// https://github.com/revel/modules/tree/master/csrf
|
|
var HeaderFilter = func(c *revel.Controller, fc []revel.Filter) {
|
|
c.Response.Out.Header().Add("X-Frame-Options", "SAMEORIGIN")
|
|
c.Response.Out.Header().Add("X-XSS-Protection", "1; mode=block")
|
|
c.Response.Out.Header().Add("X-Content-Type-Options", "nosniff")
|
|
c.Response.Out.Header().Add("Referrer-Policy", "strict-origin-when-cross-origin")
|
|
|
|
fc[0](c, fc[1:]) // Execute the next filter stage.
|
|
}
|
|
|
|
//func ExampleStartupScript() {
|
|
// // revel.DevMod and revel.RunMode work here
|
|
// // Use this script to check for dev mode and set dev/prod startup scripts here!
|
|
// if revel.DevMode == true {
|
|
// // Dev mode
|
|
// }
|
|
//}
|