From 65ccd4c99de661ffd5d5b9d36ff8be091c85fdf3 Mon Sep 17 00:00:00 2001
From: Steve Richter <steve@nerdbra.in>
Date: Fri, 4 Jun 2021 23:37:01 -0400
Subject: [PATCH] Parse ParamBool case-insensitively (#1151)

---
 utils/request_helpers.go      | 2 +-
 utils/request_helpers_test.go | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/utils/request_helpers.go b/utils/request_helpers.go
index 75a38c586..74210c32d 100644
--- a/utils/request_helpers.go
+++ b/utils/request_helpers.go
@@ -84,7 +84,7 @@ func ParamInts(r *http.Request, param string) []int {
 }
 
 func ParamBool(r *http.Request, param string, def bool) bool {
-	p := ParamString(r, param)
+	p := strings.ToLower(ParamString(r, param))
 	if p == "" {
 		return def
 	}
diff --git a/utils/request_helpers_test.go b/utils/request_helpers_test.go
index 48c6e49c9..e6d46e4a1 100644
--- a/utils/request_helpers_test.go
+++ b/utils/request_helpers_test.go
@@ -147,7 +147,7 @@ var _ = Describe("Request Helpers", func() {
 	Describe("ParamBool", func() {
 		Context("value is true", func() {
 			BeforeEach(func() {
-				r = httptest.NewRequest("GET", "/ping?b=true&c=on&d=1", nil)
+				r = httptest.NewRequest("GET", "/ping?b=true&c=on&d=1&e=True", nil)
 			})
 
 			It("parses 'true'", func() {
@@ -161,6 +161,10 @@ var _ = Describe("Request Helpers", func() {
 			It("parses '1'", func() {
 				Expect(ParamBool(r, "d", false)).To(BeTrue())
 			})
+
+			It("parses 'True'", func() {
+				Expect(ParamBool(r, "e", false)).To(BeTrue())
+			})
 		})
 
 		Context("value is false", func() {