diff --git a/calendar.html b/calendar.html index 99e26e4..162cae7 100644 --- a/calendar.html +++ b/calendar.html @@ -42,10 +42,10 @@

📅 Moon Rise and Set Calendar

{{ range .Rows }} {{.Date}} - {{.Moon.Rise}} - {{.Moon.Set}} - {{.Sun.Rise}} - {{.Sun.Set}} + {{if .Moon.AlwaysAbove}}Always above{{else if .Moon.AlwaysBelow}}Always below{{else}}{{.Moon.Rise}}{{end}} + {{if .Moon.AlwaysAbove}}Always above{{else if .Moon.AlwaysBelow}}Always below{{else}}{{.Moon.Set}}{{end}} + {{if .Sun.AlwaysAbove}}Always above{{else if .Sun.AlwaysBelow}}Always below{{else}}{{.Sun.Rise}}{{end}} + {{if .Sun.AlwaysAbove}}Always above{{else if .Sun.AlwaysBelow}}Always below{{else}}{{.Sun.Set}}{{end}} {{ end }} diff --git a/go.mod b/go.mod index 45d1d14..10b958c 100644 --- a/go.mod +++ b/go.mod @@ -1,5 +1,5 @@ module moon -go 1.21 +go 1.24.7 -require github.com/exploded/riseset v1.0.0 +require github.com/exploded/riseset v1.0.1-0.20260220080739-24891d86367a diff --git a/go.sum b/go.sum index bfad37f..b870990 100644 --- a/go.sum +++ b/go.sum @@ -1,2 +1,4 @@ github.com/exploded/riseset v1.0.0 h1:qdXzKgiEieF8hJSvmONRYcX4QalBMkFnUf1xuW6YIxM= github.com/exploded/riseset v1.0.0/go.mod h1:VjRq5iJAosiDcmN6cIemg4Koh/g/MirLmI9djQoiuYs= +github.com/exploded/riseset v1.0.1-0.20260220080739-24891d86367a h1:9zXloV9qOl/7d9DUghsbK2l0w1xM0ebmEjMWk8KCS4Y= +github.com/exploded/riseset v1.0.1-0.20260220080739-24891d86367a/go.mod h1:iSOrtnvmvgDPXhfjH+isdiLP0aTLSlIExl2z6Tulizg= diff --git a/moon.go b/moon.go index 8e30c58..513d6aa 100644 --- a/moon.go +++ b/moon.go @@ -214,8 +214,8 @@ func calendar(w http.ResponseWriter, r *http.Request) { for i := 0; i < 10; i++ { newdate = newdate.AddDate(0, 0, 1) arow.Date = newdate.Format("02-01-2006") - arow.Moon = riseset.Riseset(1, newdate, Lon, Lat, Zon) - arow.Sun = riseset.Riseset(2, newdate, Lon, Lat, Zon) + arow.Moon = riseset.Riseset(riseset.Moon, newdate, Lon, Lat, Zon) + arow.Sun = riseset.Riseset(riseset.Sun, newdate, Lon, Lat, Zon) Passme.Rows = append(Passme.Rows, arow) } @@ -299,7 +299,7 @@ func gettimes(w http.ResponseWriter, r *http.Request) { var newdate time.Time zondur = time.Hour * time.Duration(zon) newdate = time.Now().Add(zondur) - mydata = riseset.Riseset(1, newdate, lon, lat, zon) + mydata = riseset.Riseset(riseset.Moon, newdate, lon, lat, zon) } json.NewEncoder(w).Encode(mydata) } diff --git a/static/script.js b/static/script.js index e8fb78c..bbf7ca3 100644 --- a/static/script.js +++ b/static/script.js @@ -293,12 +293,20 @@ const getTimes = function () { $.getJSON(`gettimes?lon=${mylon}&lat=${mylat}&zon=${zon}`) .done((json) => { - if (json.Rise && json.Set) { + if (json.Rise === "error" || json.Set === "error") { + showErrorMessage('Unable to calculate moon times for this location.'); + } else if (json.AlwaysAbove) { + updateInputField("Rise", "Always above horizon"); + updateInputField("Set", "Always above horizon"); + clearErrorMessage(); + } else if (json.AlwaysBelow) { + updateInputField("Rise", "Always below horizon"); + updateInputField("Set", "Always below horizon"); + clearErrorMessage(); + } else if (json.Rise && json.Set) { updateInputField("Rise", json.Rise); updateInputField("Set", json.Set); clearErrorMessage(); - } else if (json.Rise === "error" || json.Set === "error") { - showErrorMessage('Unable to calculate moon times for this location.'); } }) .fail((jqXHR, textStatus, errorThrown) => {