2022-01-09 06:59:28 +01:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"os"
|
2022-01-09 20:00:53 +01:00
|
|
|
"strings"
|
2022-01-09 06:59:28 +01:00
|
|
|
|
|
|
|
"github.com/ddworken/hishtory/shared"
|
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
switch os.Args[1] {
|
|
|
|
case "saveHistoryEntry":
|
|
|
|
saveHistoryEntry()
|
|
|
|
case "query":
|
|
|
|
query()
|
|
|
|
case "init":
|
2022-01-09 20:00:53 +01:00
|
|
|
shared.CheckFatalError(shared.Setup(os.Args))
|
|
|
|
case "enable":
|
|
|
|
shared.CheckFatalError(shared.Enable())
|
|
|
|
case "disable":
|
|
|
|
shared.CheckFatalError(shared.Disable())
|
2022-01-09 06:59:28 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func getServerHostname() string {
|
|
|
|
if server := os.Getenv("HISHTORY_SERVER"); server != "" {
|
|
|
|
return server
|
|
|
|
}
|
|
|
|
return "http://localhost:8080"
|
|
|
|
}
|
|
|
|
|
|
|
|
func query() {
|
2022-01-09 20:00:53 +01:00
|
|
|
userSecret, err := shared.GetUserSecret()
|
|
|
|
shared.CheckFatalError(err)
|
|
|
|
db, err := shared.OpenDB()
|
|
|
|
shared.CheckFatalError(err)
|
|
|
|
query := strings.Join(os.Args[2:], " ")
|
|
|
|
data, err := shared.Search(db, query, userSecret, 25)
|
|
|
|
shared.CheckFatalError(err)
|
2022-01-09 06:59:28 +01:00
|
|
|
shared.DisplayResults(data)
|
|
|
|
}
|
|
|
|
|
|
|
|
func saveHistoryEntry() {
|
2022-01-09 20:00:53 +01:00
|
|
|
isEnabled, err := shared.IsEnabled()
|
|
|
|
shared.CheckFatalError(err)
|
|
|
|
if !isEnabled {
|
|
|
|
return
|
2022-01-09 06:59:28 +01:00
|
|
|
}
|
2022-01-09 20:00:53 +01:00
|
|
|
entry, err := shared.BuildHistoryEntry(os.Args)
|
|
|
|
shared.CheckFatalError(err)
|
2022-01-09 06:59:28 +01:00
|
|
|
err = shared.Persist(*entry)
|
2022-01-09 20:00:53 +01:00
|
|
|
shared.CheckFatalError(err)
|
2022-01-09 06:59:28 +01:00
|
|
|
}
|