package command import ( "flag" "log" "tomatentum.net/svg-templater/internal/database" "tomatentum.net/svg-templater/internal/server" "tomatentum.net/svg-templater/pkg/svg" ) var ( help bool generateTokenFlag bool deleteTokenFlag bool datapath string ) func PrepareCommandLine() { flag.BoolVar(&help, "help", false, "Displays the help String") flag.BoolVar(&generateTokenFlag, "tokengen", false, "Generate token with name") flag.BoolVar(&deleteTokenFlag, "tokendel", false, "Delete token with name") flag.StringVar(&datapath, "data", "/var/lib/svg-templater", "Override data directory") } func HandleCommandline() { flag.Parse() if !help { svg.Storage = svg.NewFileStorage(datapath, "public") if err := database.OpenSQLite(datapath); err != nil { log.Fatal("Failed opening DB:\n", err) return } database.InitDB() } defer database.Close() if generateTokenFlag { GenerateTokenCommand() } else if deleteTokenFlag { DeleteTokenCommand() } else if help { flag.PrintDefaults() } else { server.PrepareHTTP() server.Start() } }