-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathreturns.go
85 lines (67 loc) · 1.92 KB
/
returns.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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package main
import (
"embed"
"strings"
"edgan/att-fiber-gateway-info/internal/logging"
)
func returnApplicationName() string {
applicationName := "att-fiber-gateway-info"
return applicationName
}
func returnApplicationNameVersion() string {
version := returnVersion()
applicationName := returnApplicationName()
applicationNameVersion := applicationName + space + version
return applicationNameVersion
}
//go:embed .version
var versionFile embed.FS
func returnVersion() string {
versionBytes, _ := versionFile.ReadFile(".version")
version := strings.TrimSpace(string(versionBytes))
return version
}
func returnActionMetric(action string) string {
actionMetric := strings.Replace(action, dash, period, twoOccurance)
actionMetric = strings.Replace(actionMetric, space, period, oneOccurance)
return actionMetric
}
// returnActionPage returns the page for a specific action
func returnActionPage(action string, actionPages map[string]string) string {
page, exists := actionPages[action]
if !exists {
logging.LogFatalf("Unknown action: %s", action)
}
return page
}
// returnActionPages returns action to page mappings
func returnActionPages() map[string]string {
actionPages := map[string]string{
"broadband-status": "broadbandstatistics",
"device-list": "devices",
"fiber-status": "fiberstat",
"home-network-status": "lanstatistics",
"ip-allocation": "ipalloc",
"restart-gateway": "reset",
"system-information": "sysinfo",
}
for _, action := range actions {
if strings.HasPrefix(action, natActionPrefix) {
actionPages[action] = "nattable"
}
if strings.HasPrefix(action, resetActionPrefix) {
actionPages[action] = "reset"
}
}
return actionPages
}
func returnPath(page string) string {
path := "/cgi-bin/" + page + ".ha"
return path
}
func returnConfigValue(flagValue string, configValue string) string {
if flagValue != empty {
return flagValue
}
return configValue
}