Example #1
0
// @router /whitelist/add/ [get]
func (c *WhitelistController) Add() {
	channel := c.GetString("channel")
	isMatch, err := regexp.Match(TgPattern, []byte(channel))
	if err != nil {
		//err
		c.Ctx.WriteString(err.Error())
		return
	}
	if !isMatch {
		//ErrIllegalChannel
		c.Ctx.WriteString(ErrIllegalChannel.Error())
		return
	}
	size := c.GetString("size")
	isMatch, err = regexp.Match(SizePattern, []byte(size))
	if err != nil {
		//err
		c.Ctx.WriteString(err.Error())
		return
	}
	if !isMatch {
		//ErrIllegalSize
		c.Ctx.WriteString(ErrIllegalSize.Error())
		return
	}

	var conf models.Config = models.Config{
		ChannelCode: channel,
		Key:         "sizes",
	}
	err = conf.AddSize(size)
	if err != nil {
		//err
		c.Ctx.WriteString(conf.Value)
		c.Ctx.WriteString(err.Error())
		return
	}
	c.Ctx.WriteString(conf.Value)
}