summaryrefslogtreecommitdiff
path: root/internal/data/users.sql.go
diff options
context:
space:
mode:
authorKyren223 <Kyren223@proton.me>2024-11-27 22:41:14 +0200
committerKyren223 <Kyren223@proton.me>2024-11-27 22:41:14 +0200
commitc3f8131caf597dc028c08c8dd9f2f65a213e580d (patch)
tree0907927ab413cba3c431699ed2d220be1ffefb66 /internal/data/users.sql.go
parent4a0d94e4893cd77a0bb498b355d3e1b3cbeed2df (diff)
Added networks info on initial server-client connection
Diffstat (limited to 'internal/data/users.sql.go')
-rw-r--r--internal/data/users.sql.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/internal/data/users.sql.go b/internal/data/users.sql.go
index 33eab3f..562ab35 100644
--- a/internal/data/users.sql.go
+++ b/internal/data/users.sql.go
@@ -109,6 +109,43 @@ func (q *Queries) GetUserByPublicKey(ctx context.Context, publicKey ed25519.Publ
return i, err
}
+const getUserNetworks = `-- name: GetUserNetworks :many
+SELECT networks.id, networks.owner_id, networks.name, networks.icon, networks.bg_hex_color, networks.fg_hex_color, networks.is_public FROM networks
+JOIN users_networks ON networks.id = users_networks.network_id
+WHERE users_networks.user_id = ?
+`
+
+func (q *Queries) GetUserNetworks(ctx context.Context, userID snowflake.ID) ([]Network, error) {
+ rows, err := q.db.QueryContext(ctx, getUserNetworks, userID)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Network
+ for rows.Next() {
+ var i Network
+ if err := rows.Scan(
+ &i.ID,
+ &i.OwnerID,
+ &i.Name,
+ &i.Icon,
+ &i.BgHexColor,
+ &i.FgHexColor,
+ &i.IsPublic,
+ ); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const setUserDescription = `-- name: SetUserDescription :one
UPDATE users SET
description = ?