42 lines
884 B
Go
42 lines
884 B
Go
|
package common
|
||
|
|
||
|
import (
|
||
|
"strings"
|
||
|
)
|
||
|
|
||
|
type Route string
|
||
|
|
||
|
var (
|
||
|
RouteHome Route = "HOME"
|
||
|
RouteDocuments Route = "DOCUMENTS"
|
||
|
RouteProgress Route = "PROGRESS"
|
||
|
RouteActivity Route = "ACTIVITY"
|
||
|
RouteSearch Route = "SEARCH"
|
||
|
RouteAdmin Route = "ADMIN"
|
||
|
RouteAdminImport Route = "ADMIN_IMPORT"
|
||
|
RouteAdminUsers Route = "ADMIN_USERS"
|
||
|
RouteAdminLogs Route = "ADMIN_LOGS"
|
||
|
)
|
||
|
|
||
|
func (r Route) IsAdmin() bool {
|
||
|
return strings.HasPrefix("ADMIN", string(r))
|
||
|
}
|
||
|
|
||
|
func (r Route) Name() string {
|
||
|
var pathSplit []string
|
||
|
for _, rawPath := range strings.Split(string(r), "_") {
|
||
|
pathLoc := strings.ToUpper(rawPath[:1]) + strings.ToLower(rawPath[1:])
|
||
|
pathSplit = append(pathSplit, pathLoc)
|
||
|
|
||
|
}
|
||
|
return strings.Join(pathSplit, " - ")
|
||
|
}
|
||
|
|
||
|
type Settings struct {
|
||
|
Route Route
|
||
|
User string
|
||
|
Version string
|
||
|
IsAdmin bool
|
||
|
SearchEnabled bool
|
||
|
}
|