summaryrefslogtreecommitdiffstats
path: root/api4/context.go
diff options
context:
space:
mode:
authorRuzette Tanyag <ruzette@users.noreply.github.com>2017-02-14 10:28:08 -0500
committerHarrison Healey <harrisonmhealey@gmail.com>2017-02-14 10:28:08 -0500
commit28aa7cdbf2357bda51ba740fd4d7af48b36b96b4 (patch)
tree0a7daa93b5fa594b113f905506ed6ee6940e789b /api4/context.go
parent9dabd10da975a47155641351bbf61b6fb203b4ca (diff)
downloadchat-28aa7cdbf2357bda51ba740fd4d7af48b36b96b4.tar.gz
chat-28aa7cdbf2357bda51ba740fd4d7af48b36b96b4.tar.bz2
chat-28aa7cdbf2357bda51ba740fd4d7af48b36b96b4.zip
Implement GET channels endpoints for APIv4 (#5363)
* implement get channels endpoints and updated drivers and unittests * removed channel deletion on tear down, removed manage permission on get channels endpoints, and updated utils to add constant channel length * added constants for user, team and channel length, updated context to use the model functions * make sure team name length should be less than the minimum length and revert underscore to team name validity * changed post test condition from notfound to unauthorized
Diffstat (limited to 'api4/context.go')
-rw-r--r--api4/context.go36
1 files changed, 28 insertions, 8 deletions
diff --git a/api4/context.go b/api4/context.go
index 06523152f..6a844795f 100644
--- a/api4/context.go
+++ b/api4/context.go
@@ -364,12 +364,8 @@ func (c *Context) RequireUsername() *Context {
return c
}
- if len(c.Params.Username) < 3 {
- c.SetInvalidUrlParam("username")
- }
-
- if len(c.Params.Username) > 22 {
- c.SetInvalidUrlParam("username")
+ if !model.IsValidUsername(c.Params.Username) {
+ c.SetInvalidParam("username")
}
return c
@@ -386,16 +382,40 @@ func (c *Context) RequirePostId() *Context {
return c
}
+func (c *Context) RequireTeamName() *Context {
+ if c.Err != nil {
+ return c
+ }
+
+ if !model.IsValidTeamName(c.Params.TeamName){
+ c.SetInvalidUrlParam("team_name")
+ }
+
+ return c
+}
+
+func (c *Context) RequireChannelName() *Context {
+ if c.Err != nil {
+ return c
+ }
+
+ if !model.IsValidChannelIdentifier(c.Params.ChannelName) {
+ c.SetInvalidUrlParam("channel_name")
+ }
+
+ return c
+}
+
func (c *Context) RequireEmail() *Context {
if c.Err != nil {
return c
}
- pos := strings.Index(c.Params.Email, "@")
- if pos < 0 {
+ if !model.IsValidEmail(c.Params.Email) {
c.SetInvalidUrlParam("email")
}
return c
}
+