diff --git a/controller.go b/controller.go index 0750daf4..79f3349b 100644 --- a/controller.go +++ b/controller.go @@ -413,91 +413,68 @@ func (c *Controller) GetStrings(key string, def ...[]string) []string { // GetInt returns input as an int or the default value while it's present and input is blank func (c *Controller) GetInt(key string, def ...int) (int, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - return strconv.Atoi(strv) - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - return strconv.Atoi(strv) } + return strconv.Atoi(strv) } // GetInt8 return input as an int8 or the default value while it's present and input is blank func (c *Controller) GetInt8(key string, def ...int8) (int8, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - i64, err := strconv.ParseInt(strv, 10, 8) - i8 := int8(i64) - return i8, err - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - i64, err := strconv.ParseInt(strv, 10, 8) - i8 := int8(i64) - return i8, err } + i64, err := strconv.ParseInt(strv, 10, 8) + return int8(i64), err } // GetInt16 returns input as an int16 or the default value while it's present and input is blank func (c *Controller) GetInt16(key string, def ...int16) (int16, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - i64, err := strconv.ParseInt(strv, 10, 16) - i16 := int16(i64) - return i16, err - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - i64, err := strconv.ParseInt(strv, 10, 16) - i16 := int16(i64) - return i16, err } + i64, err := strconv.ParseInt(strv, 10, 16) + return int16(i64), err } // GetInt32 returns input as an int32 or the default value while it's present and input is blank func (c *Controller) GetInt32(key string, def ...int32) (int32, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - i64, err := strconv.ParseInt(c.Ctx.Input.Query(key), 10, 32) - i32 := int32(i64) - return i32, err - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - i64, err := strconv.ParseInt(c.Ctx.Input.Query(key), 10, 32) - i32 := int32(i64) - return i32, err } + i64, err := strconv.ParseInt(strv, 10, 32) + return int32(i64), err } // GetInt64 returns input value as int64 or the default value while it's present and input is blank. func (c *Controller) GetInt64(key string, def ...int64) (int64, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - return strconv.ParseInt(strv, 10, 64) - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - return strconv.ParseInt(strv, 10, 64) } + return strconv.ParseInt(strv, 10, 64) } // GetBool returns input value as bool or the default value while it's present and input is blank. func (c *Controller) GetBool(key string, def ...bool) (bool, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - return strconv.ParseBool(strv) - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - return strconv.ParseBool(strv) } + return strconv.ParseBool(strv) } // GetFloat returns input value as float64 or the default value while it's present and input is blank. func (c *Controller) GetFloat(key string, def ...float64) (float64, error) { - if strv := c.Ctx.Input.Query(key); strv != "" { - return strconv.ParseFloat(strv, 64) - } else if len(def) > 0 { + strv := c.Ctx.Input.Query(key) + if len(strv) == 0 && len(def) > 0 { return def[0], nil - } else { - return strconv.ParseFloat(strv, 64) } + return strconv.ParseFloat(strv, 64) } // GetFile returns the file data in file upload field named as key.