diff options
author | Corey Hulen <corey@hulen.com> | 2016-01-22 17:00:09 -0600 |
---|---|---|
committer | Corey Hulen <corey@hulen.com> | 2016-01-22 17:00:09 -0600 |
commit | 1a0b12313bd0af1724df2fc6260ef284acfc5f93 (patch) | |
tree | af8cd83e5beba2426251532e42ba059c59af59b9 /store/sql_user_store.go | |
parent | d352c5b64dddfb8e46b18edbd7352c41495078a1 (diff) | |
parent | 60a73ebabba6798d2b45fa8c8ac0f2bfa6144689 (diff) | |
download | chat-1a0b12313bd0af1724df2fc6260ef284acfc5f93.tar.gz chat-1a0b12313bd0af1724df2fc6260ef284acfc5f93.tar.bz2 chat-1a0b12313bd0af1724df2fc6260ef284acfc5f93.zip |
Merge pull request #1956 from mattermost/plt-1779
PLT-1779 Add system-wide statistics page
Diffstat (limited to 'store/sql_user_store.go')
-rw-r--r-- | store/sql_user_store.go | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/store/sql_user_store.go b/store/sql_user_store.go index 0f73f73c3..efd8b7f33 100644 --- a/store/sql_user_store.go +++ b/store/sql_user_store.go @@ -600,3 +600,30 @@ func (us SqlUserStore) PermanentDelete(userId string) StoreChannel { return storeChannel } + +func (us SqlUserStore) AnalyticsUniqueUserCount(teamId string) StoreChannel { + + storeChannel := make(StoreChannel) + + go func() { + result := StoreResult{} + + query := "SELECT COUNT(DISTINCT Email) FROM Users" + + if len(teamId) > 0 { + query += " WHERE TeamId = :TeamId" + } + + v, err := us.GetReplica().SelectInt(query, map[string]interface{}{"TeamId": teamId}) + if err != nil { + result.Err = model.NewAppError("SqlUserStore.AnalyticsUniqueUserCount", "We couldn't get the unique user count", err.Error()) + } else { + result.Data = v + } + + storeChannel <- result + close(storeChannel) + }() + + return storeChannel +} |