func()

in user-center-slack/slack_user_center.go [71:95]


func (uc *UserCenter) UserStatus(externalID string) (userStatus plugin.UserStatus) {
	if len(externalID) == 0 {
		return plugin.UserStatusAvailable
	}

	var err error
	userDetailInfo := uc.SlackClient.UserInfoMapping[externalID]
	if userDetailInfo == nil {
		userDetailInfo, err = uc.SlackClient.GetUserDetailInfo(externalID)
		if err != nil {
			log.Errorf("get user detail info failed: %v", err)
		}
	}
	if userDetailInfo == nil {
		return plugin.UserStatusDeleted
	}
	switch userDetailInfo.Status {
	case 1:
		return plugin.UserStatusAvailable
	case 2:
		return plugin.UserStatusSuspended
	default:
		return plugin.UserStatusDeleted
	}
}