package contactcheck import ( "strings" "time" ) // HoneypotField is the form field bots should leave blank (hidden from users). const HoneypotField = "website" // MinFormFillDuration is the minimum time between showing the form and submit. const MinFormFillDuration = 5 * time.Second // SpamHoneypot reports whether the honeypot was filled (likely spam). func SpamHoneypot(value string) bool { return strings.TrimSpace(value) != "" } // FormFilledTooFast reports whether the form was submitted before seenUnix. // Missing timing data (seenUnix <= 0) is allowed — honeypot and rate limits still apply. func FormFilledTooFast(seenUnix int64, now time.Time) bool { if seenUnix <= 0 { return false } return now.Sub(time.Unix(seenUnix, 0)) < MinFormFillDuration }