aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/core/request.go
diff options
context:
space:
mode:
Diffstat (limited to 'server/core/request.go')
-rw-r--r--server/core/request.go19
1 files changed, 19 insertions, 0 deletions
diff --git a/server/core/request.go b/server/core/request.go
index 4a2acc3..540b2ac 100644
--- a/server/core/request.go
+++ b/server/core/request.go
@@ -51,6 +51,18 @@ func (r *Request) Cookie(name string) string {
return cookie.Value
}
+// FormValue returns a form value as integer.
+func (r *Request) FormValue(param string) string {
+ return r.request.FormValue(param)
+}
+
+// FormIntegerValue returns a form value as integer.
+func (r *Request) FormIntegerValue(param string) int64 {
+ value := r.request.FormValue(param)
+ integer, _ := strconv.Atoi(value)
+ return int64(integer)
+}
+
// IntegerParam returns an URL parameter as integer.
func (r *Request) IntegerParam(param string) (int64, error) {
vars := mux.Vars(r.request)
@@ -105,6 +117,13 @@ func (r *Request) QueryIntegerParam(param string, defaultValue int) int {
return val
}
+// HasQueryParam checks if the query string contains the given parameter.
+func (r *Request) HasQueryParam(param string) bool {
+ values := r.request.URL.Query()
+ _, ok := values[param]
+ return ok
+}
+
// NewRequest returns a new Request struct.
func NewRequest(w http.ResponseWriter, r *http.Request) *Request {
return &Request{writer: w, request: r}