summaryrefslogtreecommitdiff
path: root/shrine/services/stats.go
diff options
context:
space:
mode:
Diffstat (limited to 'shrine/services/stats.go')
-rw-r--r--shrine/services/stats.go14
1 files changed, 12 insertions, 2 deletions
diff --git a/shrine/services/stats.go b/shrine/services/stats.go
index 2e31c02..aa2eaab 100644
--- a/shrine/services/stats.go
+++ b/shrine/services/stats.go
@@ -1,15 +1,25 @@
package services
import (
+ "shrine/models"
"shrine/repositories"
"shrine/types/user"
)
-func GetStats() user.StatsResponse {
- return user.StatsResponse{
+func GetStats(citizen *models.User) user.StatsResponse {
+ response := user.StatsResponse{
Citizens: repositories.CountCitizens(),
Online: repositories.CountOnline(),
NewestCitizens: buildCitizenSummaries(repositories.NewestCitizens(5)),
OnlineCitizens: buildCitizenSummaries(repositories.OnlineCitizens(10)),
}
+
+ if citizen != nil {
+ response.UnreadLetters = repositories.CountUnreadLetters(citizen.ID)
+ if citizen.IsStaff() {
+ response.PendingDistricts = repositories.CountPendingDistrictSites()
+ }
+ }
+
+ return response
} \ No newline at end of file