- Now the cache isn't cleared and fetched from zero each update, but only when there's missing information for a day - Fixed a bug that prevented new users from saving changes in the config NOTE: Turns out that HomeAssistant's API only returns data for the last 10 days. Looks like we will have to improve the caching system to work around this.
This commit is contained in:
parent
e9125b783c
commit
52ba0ea4c1
4 changed files with 156 additions and 55 deletions
31
config.go
31
config.go
|
@ -64,6 +64,21 @@ func formatURL(url string) (string, error) {
|
|||
|
||||
func loadConfig() (config Config, err error, isFirstRun bool) {
|
||||
|
||||
db, err := sql.Open("sqlite3", "./database.db")
|
||||
if err != nil {
|
||||
return Config{}, err, false
|
||||
}
|
||||
|
||||
_, err = db.Exec(`CREATE TABLE IF NOT EXISTS "cache" (
|
||||
"time" NUMERIC NOT NULL,
|
||||
"green_energy_percentage" REAL NOT NULL,
|
||||
"energy_consumption" REAL NOT NULL,
|
||||
PRIMARY KEY("time")
|
||||
);`)
|
||||
if err != nil {
|
||||
return Config{}, err, false
|
||||
}
|
||||
|
||||
var defaultConfig = Config{}
|
||||
defaultConfig.Dashboard.Theme = "default"
|
||||
defaultConfig.Dashboard.Name = "EcoDash"
|
||||
|
@ -76,6 +91,7 @@ func loadConfig() (config Config, err error, isFirstRun bool) {
|
|||
NewTab: true,
|
||||
Primary: true,
|
||||
})
|
||||
defaultConfig.db = db
|
||||
|
||||
data, err := os.ReadFile("config.json")
|
||||
if err != nil {
|
||||
|
@ -96,23 +112,8 @@ func loadConfig() (config Config, err error, isFirstRun bool) {
|
|||
if err != nil {
|
||||
return Config{}, err, false
|
||||
}
|
||||
|
||||
db, err := sql.Open("sqlite3", "./database.db")
|
||||
if err != nil {
|
||||
return Config{}, err, false
|
||||
}
|
||||
conf.db = db
|
||||
|
||||
_, err = db.Exec(`CREATE TABLE IF NOT EXISTS "cache" (
|
||||
"time" NUMERIC NOT NULL,
|
||||
"green_energy_percentage" REAL NOT NULL,
|
||||
"energy_consumption" REAL NOT NULL,
|
||||
PRIMARY KEY("time")
|
||||
);`)
|
||||
if err != nil {
|
||||
return Config{}, err, false
|
||||
}
|
||||
|
||||
return conf, nil, false
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue