github.com/haalcala/mattermost-server-change-repo/v5@v5.33.2/model/team_member.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package model 5 6 import ( 7 "encoding/json" 8 "fmt" 9 "io" 10 "net/http" 11 "strings" 12 ) 13 14 const ( 15 USERNAME = "Username" 16 ) 17 18 //msgp:tuple TeamMember 19 // This struct's serializer methods are auto-generated. If a new field is added/removed, 20 // please run make gen-serialized. 21 type TeamMember struct { 22 TeamId string `json:"team_id"` 23 UserId string `json:"user_id"` 24 Roles string `json:"roles"` 25 DeleteAt int64 `json:"delete_at"` 26 SchemeGuest bool `json:"scheme_guest"` 27 SchemeUser bool `json:"scheme_user"` 28 SchemeAdmin bool `json:"scheme_admin"` 29 ExplicitRoles string `json:"explicit_roles"` 30 } 31 32 //msgp:ignore TeamUnread 33 type TeamUnread struct { 34 TeamId string `json:"team_id"` 35 MsgCount int64 `json:"msg_count"` 36 MentionCount int64 `json:"mention_count"` 37 } 38 39 //msgp:ignore TeamMemberForExport 40 type TeamMemberForExport struct { 41 TeamMember 42 TeamName string 43 } 44 45 //msgp:ignore TeamMemberWithError 46 type TeamMemberWithError struct { 47 UserId string `json:"user_id"` 48 Member *TeamMember `json:"member"` 49 Error *AppError `json:"error"` 50 } 51 52 //msgp:ignore EmailInviteWithError 53 type EmailInviteWithError struct { 54 Email string `json:"email"` 55 Error *AppError `json:"error"` 56 } 57 58 //msgp:ignore TeamMembersGetOptions 59 type TeamMembersGetOptions struct { 60 // Sort the team members. Accepts "Username", but defaults to "Id". 61 Sort string 62 63 // If true, exclude team members whose corresponding user is deleted. 64 ExcludeDeletedUsers bool 65 66 // Restrict to search in a list of teams and channels 67 ViewRestrictions *ViewUsersRestrictions 68 } 69 70 func (o *TeamMember) ToJson() string { 71 b, _ := json.Marshal(o) 72 return string(b) 73 } 74 75 func (o *TeamUnread) ToJson() string { 76 b, _ := json.Marshal(o) 77 return string(b) 78 } 79 80 func TeamMemberFromJson(data io.Reader) *TeamMember { 81 var o *TeamMember 82 json.NewDecoder(data).Decode(&o) 83 return o 84 } 85 86 func TeamUnreadFromJson(data io.Reader) *TeamUnread { 87 var o *TeamUnread 88 json.NewDecoder(data).Decode(&o) 89 return o 90 } 91 92 func EmailInviteWithErrorFromJson(data io.Reader) []*EmailInviteWithError { 93 var o []*EmailInviteWithError 94 json.NewDecoder(data).Decode(&o) 95 return o 96 } 97 98 func EmailInviteWithErrorToEmails(o []*EmailInviteWithError) []string { 99 var ret []string 100 for _, o := range o { 101 if o.Error == nil { 102 ret = append(ret, o.Email) 103 } 104 } 105 return ret 106 } 107 108 func EmailInviteWithErrorToJson(o []*EmailInviteWithError) string { 109 b, err := json.Marshal(o) 110 if err != nil { 111 return "[]" 112 } 113 return string(b) 114 } 115 116 func EmailInviteWithErrorToString(o *EmailInviteWithError) string { 117 return fmt.Sprintf("%s:%s", o.Email, o.Error.Error()) 118 } 119 120 func TeamMembersWithErrorToTeamMembers(o []*TeamMemberWithError) []*TeamMember { 121 var ret []*TeamMember 122 for _, o := range o { 123 if o.Error == nil { 124 ret = append(ret, o.Member) 125 } 126 } 127 return ret 128 } 129 130 func TeamMembersWithErrorToJson(o []*TeamMemberWithError) string { 131 b, err := json.Marshal(o) 132 if err != nil { 133 return "[]" 134 } 135 return string(b) 136 } 137 138 func TeamMemberWithErrorToString(o *TeamMemberWithError) string { 139 return fmt.Sprintf("%s:%s", o.UserId, o.Error.Error()) 140 } 141 142 func TeamMembersWithErrorFromJson(data io.Reader) []*TeamMemberWithError { 143 var o []*TeamMemberWithError 144 json.NewDecoder(data).Decode(&o) 145 return o 146 } 147 148 func TeamMembersToJson(o []*TeamMember) string { 149 b, err := json.Marshal(o) 150 if err != nil { 151 return "[]" 152 } 153 return string(b) 154 } 155 156 func TeamMembersFromJson(data io.Reader) []*TeamMember { 157 var o []*TeamMember 158 json.NewDecoder(data).Decode(&o) 159 return o 160 } 161 162 func TeamsUnreadToJson(o []*TeamUnread) string { 163 b, err := json.Marshal(o) 164 if err != nil { 165 return "[]" 166 } 167 return string(b) 168 } 169 170 func TeamsUnreadFromJson(data io.Reader) []*TeamUnread { 171 var o []*TeamUnread 172 json.NewDecoder(data).Decode(&o) 173 return o 174 } 175 176 func (o *TeamMember) IsValid() *AppError { 177 178 if !IsValidId(o.TeamId) { 179 return NewAppError("TeamMember.IsValid", "model.team_member.is_valid.team_id.app_error", nil, "", http.StatusBadRequest) 180 } 181 182 if !IsValidId(o.UserId) { 183 return NewAppError("TeamMember.IsValid", "model.team_member.is_valid.user_id.app_error", nil, "", http.StatusBadRequest) 184 } 185 186 return nil 187 } 188 189 func (o *TeamMember) PreUpdate() { 190 } 191 192 func (o *TeamMember) GetRoles() []string { 193 return strings.Fields(o.Roles) 194 }