From c82e88d015adafb3f617e9d3b81e29415173316e Mon Sep 17 00:00:00 2001
From: Jeff Carr <jcarr@wit.com>
Date: Sun, 7 Jan 2024 14:19:57 -0600
Subject: [PATCH] provider automatically updates

Signed-off-by: Jeff Carr <jcarr@wit.com>
---
 gui.go  | 22 ----------------------
 main.go | 11 +++++++++++
 2 files changed, 11 insertions(+), 22 deletions(-)

diff --git a/gui.go b/gui.go
index 4adb38e..46c42ce 100644
--- a/gui.go
+++ b/gui.go
@@ -40,7 +40,6 @@ func debugTab(title string) {
 
 	g2.NewButton("dig A & AAAA DNS records (updateDNS())", func () {
 		log.Log(CHANGE, "updateDNS() going to run:")
-		updateDNS()
 	})
 
 	g2 = me.debug.Box().NewGroup("debugging options")
@@ -197,24 +196,3 @@ func statusGrid(n *gui.Node) {
 	n.NewGroup("NOTES")
 
 }
-
-// run everything because something has changed
-func updateDNS() {
-	log.Log(CHANGE, "updateDNS() START")
-	me.digStatus.Update()
-	me.statusDNS.Update()
-
-	if me.digStatus.Ready() {
-		if me.digStatus.IPv6() {
-			me.statusIPv6.Set("WORKING")
-		} else {
-			me.statusIPv6.Set("Need VPN")
-		}
-	}
-
-	// lookup the NS records for your domain
-	// if your host is test.wit.com, find the NS resource records for wit.com
-	lookupNS(me.statusOS.GetDomainName())
-
-	log.Log(CHANGE, "updateDNS() END")
-}
diff --git a/main.go b/main.go
index b5d6dd2..8dfa852 100644
--- a/main.go
+++ b/main.go
@@ -85,9 +85,20 @@ func main() {
 	// checks if your DNS records are still broken
 	// if everything is working, then it just ignores
 	// things until the timeout happens
+
+	lastProvider := "unknown"
 	go myTicker(10 * time.Second, "DNSloop", func() {
 		log.Log(CHANGE, "me.statusDNS.Update() START")
 		me.statusDNS.Update()
+
+		provider := me.statusDNS.GetDNSapi()
+		if provider != lastProvider {
+			log.Log(CHANGE, "Your DNS API provider appears to have changed to", provider)
+			lastProvider = provider
+		}
+		if provider == "cloudflare" {
+			me.DnsAPIstatus.Set("WORKING")
+		}
 	})
 
 	// probes the OS network settings