diff --git a/cmd/webapi/main.go b/cmd/webapi/main.go index 490fec3..fec865c 100644 --- a/cmd/webapi/main.go +++ b/cmd/webapi/main.go @@ -120,6 +120,14 @@ func run() error { logger.WithError(err).Error("error creating the API server instance") return fmt.Errorf("creating the API server instance: %w", err) } + + // Create the directories if they don't exist + if err := os.MkdirAll(cfg.Data.Path, 0755); err != nil { + logger.WithError(err).Error("error creating data directory") + return fmt.Errorf("creating data directory: %w", err) + } + + router := apirouter.Handler() router, err = registerWebUI(router) diff --git a/service/database/database.go b/service/database/database.go index 0aeb9ad..dedae81 100644 --- a/service/database/database.go +++ b/service/database/database.go @@ -98,8 +98,9 @@ func New(db *sql.DB) (AppDatabase, error) { // Check if tables exist. If not, the database is empty, and we need to create the structure var tableName string //todo: check for all the tables, not just users - err := db.QueryRow(`SELECT name FROM sqlite_master WHERE type='table' AND name='users';`).Scan(&tableName) - if errors.Is(err, sql.ErrNoRows) { + err := db.QueryRow(`SELECT uid from users LIMIT 1;`).Scan(&tableName) + if err != nil { + //fmt.Println("database is empty, creating structure") sqlStmt := `CREATE TABLE "users" ( "uid" TEXT NOT NULL, "name" TEXT NOT NULL UNIQUE, diff --git a/webui/node_modules/.vite/deps/_metadata.json b/webui/node_modules/.vite/deps/_metadata.json index 6f206d3..1aabce9 100644 --- a/webui/node_modules/.vite/deps/_metadata.json +++ b/webui/node_modules/.vite/deps/_metadata.json @@ -1,23 +1,23 @@ { - "hash": "0c3e4771", - "browserHash": "01248067", + "hash": "80447977", + "browserHash": "b98131b5", "optimized": { "axios": { "src": "../../axios/index.js", "file": "axios.js", - "fileHash": "d8d02cf0", + "fileHash": "6b5eae63", "needsInterop": true }, "vue": { "src": "../../vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "f8034b26", + "fileHash": "de50261f", "needsInterop": false }, "vue-router": { "src": "../../vue-router/dist/vue-router.mjs", "file": "vue-router.js", - "fileHash": "b4ca170f", + "fileHash": "4cad12d6", "needsInterop": false } },