package model

import (
	"context"
	"fmt"
	"time"
)

func (s *sqlModel) UpdatePGPKey(ctx context.Context, key *PeerPGPKey) error {
	q := `
		INSERT INTO peer_pgp_keys
			(peer_id, fingerprint, time_created)
		SELECT
			peers.id, :fingerprint, :time_created
		FROM peers
		WHERE peers.asn = :asn
		ON CONFLICT (peer_id)
		DO UPDATE SET
			fingerprint = :fingerprint,
			time_created = :time_created
	`
	data := &sqlPeerPGPKey{
		Fingerprint: key.Fingerprint,
		ASN:         fmt.Sprintf("%d", key.PeerASN),
		TimeCreated: time.Now().UnixNano(),
	}
	if _, err := s.db.NamedExecContext(ctx, q, data); err != nil {
		return fmt.Errorf("INSERT peer_pgp_keys: %v", err)
	}
	return nil
}
