summaryrefslogtreecommitdiff
path: root/database/dns.go
blob: 17487b736a25d304bf916ff8291a3ca295df0126 (plain)
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
package database

import (
	"database/sql"
	_ "github.com/mattn/go-sqlite3"
	"log"
	"time"
)

type DNSRecord struct {
	ID        string
	UserID    string
	Name      string
	Type      string
	Content   string
	TTL       int
	CreatedAt time.Time
}

func GetUserDNSRecords(db *sql.DB, userID string) ([]DNSRecord, error) {
	log.Println("getting dns records for user", userID)

	rows, err := db.Query("SELECT * FROM dns_records WHERE user_id = ?", userID)
	if err != nil {
		return nil, err
	}
	defer rows.Close()

	var records []DNSRecord
	for rows.Next() {
		var record DNSRecord
		err := rows.Scan(&record.ID, &record.UserID, &record.Name, &record.Type, &record.Content, &record.TTL, &record.CreatedAt)
		if err != nil {
			return nil, err
		}
		records = append(records, record)
	}

	return records, nil
}