github.com/levb/mattermost-server@v5.3.1+incompatible/model/team_member.go (about)

     1  // Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
     2  // See License.txt for license information.
     3  
     4  package model
     5  
     6  import (
     7  	"encoding/json"
     8  	"io"
     9  	"net/http"
    10  	"strings"
    11  )
    12  
    13  type TeamMember struct {
    14  	TeamId        string `json:"team_id"`
    15  	UserId        string `json:"user_id"`
    16  	Roles         string `json:"roles"`
    17  	DeleteAt      int64  `json:"delete_at"`
    18  	SchemeUser    bool   `json:"scheme_user"`
    19  	SchemeAdmin   bool   `json:"scheme_admin"`
    20  	ExplicitRoles string `json:"explicit_roles"`
    21  }
    22  
    23  type TeamUnread struct {
    24  	TeamId       string `json:"team_id"`
    25  	MsgCount     int64  `json:"msg_count"`
    26  	MentionCount int64  `json:"mention_count"`
    27  }
    28  
    29  func (o *TeamMember) ToJson() string {
    30  	b, _ := json.Marshal(o)
    31  	return string(b)
    32  }
    33  
    34  func (o *TeamUnread) ToJson() string {
    35  	b, _ := json.Marshal(o)
    36  	return string(b)
    37  }
    38  
    39  func TeamMemberFromJson(data io.Reader) *TeamMember {
    40  	var o *TeamMember
    41  	json.NewDecoder(data).Decode(&o)
    42  	return o
    43  }
    44  
    45  func TeamUnreadFromJson(data io.Reader) *TeamUnread {
    46  	var o *TeamUnread
    47  	json.NewDecoder(data).Decode(&o)
    48  	return o
    49  }
    50  
    51  func TeamMembersToJson(o []*TeamMember) string {
    52  	if b, err := json.Marshal(o); err != nil {
    53  		return "[]"
    54  	} else {
    55  		return string(b)
    56  	}
    57  }
    58  
    59  func TeamMembersFromJson(data io.Reader) []*TeamMember {
    60  	var o []*TeamMember
    61  	json.NewDecoder(data).Decode(&o)
    62  	return o
    63  }
    64  
    65  func TeamsUnreadToJson(o []*TeamUnread) string {
    66  	if b, err := json.Marshal(o); err != nil {
    67  		return "[]"
    68  	} else {
    69  		return string(b)
    70  	}
    71  }
    72  
    73  func TeamsUnreadFromJson(data io.Reader) []*TeamUnread {
    74  	var o []*TeamUnread
    75  	json.NewDecoder(data).Decode(&o)
    76  	return o
    77  }
    78  
    79  func (o *TeamMember) IsValid() *AppError {
    80  
    81  	if len(o.TeamId) != 26 {
    82  		return NewAppError("TeamMember.IsValid", "model.team_member.is_valid.team_id.app_error", nil, "", http.StatusBadRequest)
    83  	}
    84  
    85  	if len(o.UserId) != 26 {
    86  		return NewAppError("TeamMember.IsValid", "model.team_member.is_valid.user_id.app_error", nil, "", http.StatusBadRequest)
    87  	}
    88  
    89  	return nil
    90  }
    91  
    92  func (o *TeamMember) PreUpdate() {
    93  }
    94  
    95  func (o *TeamMember) GetRoles() []string {
    96  	return strings.Fields(o.Roles)
    97  }