Added Image metadata and made spice lvl editable
Also added db support
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
package db
|
||||
|
||||
import (
|
||||
"Advertisement_Panel/config"
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
_ "github.com/lib/pq"
|
||||
)
|
||||
|
||||
type ImagesEntry struct {
|
||||
ID int `json:"id"`
|
||||
Path string `json:"path"`
|
||||
SpiceLevel int `json:"spice_level"`
|
||||
}
|
||||
|
||||
var DB *sql.DB
|
||||
|
||||
func Init() {
|
||||
log.Println("Initializing database connection...")
|
||||
connStr := fmt.Sprintf("host=%s port=%s user=%s "+
|
||||
"password=%s dbname=%s sslmode=disable",
|
||||
config.Cfg.DB.Host, config.Cfg.DB.Port, config.Cfg.DB.Username, config.Cfg.DB.Password, config.Cfg.DB.Db)
|
||||
log.Println(connStr)
|
||||
var err error
|
||||
|
||||
DB, err = sql.Open("postgres", connStr)
|
||||
|
||||
if err != nil {
|
||||
log.Println("Error connecting to the database: ", err)
|
||||
}
|
||||
}
|
||||
|
||||
func GetImageMetadata() []ImagesEntry {
|
||||
rows, err := DB.Query("SELECT id, path, spice_level FROM images")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
defer rows.Close()
|
||||
|
||||
var data []ImagesEntry
|
||||
|
||||
for rows.Next() {
|
||||
var id int
|
||||
var path string
|
||||
var spiceLevel int
|
||||
if err := rows.Scan(&id, &path, &spiceLevel); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
data = append(data, ImagesEntry{ID: id, Path: path, SpiceLevel: spiceLevel})
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
return data
|
||||
}
|
||||
Reference in New Issue
Block a user