add endpoint for channel unread messages count

This commit is contained in:
2026-05-09 22:25:24 +02:00
parent 6e3e27e63d
commit c50ca3f78e
2 changed files with 25 additions and 0 deletions
+24
View File
@@ -2,6 +2,7 @@ package httpRequest
import (
"encoding/json"
"fmt"
"maps"
"net/http"
"slices"
@@ -345,3 +346,26 @@ func HandleGetHubs(response http.ResponseWriter, request *http.Request) {
response.WriteHeader(http.StatusOK)
response.Write(converted)
}
func HandleGetChannelUnreadMessagesCount(response http.ResponseWriter, request *http.Request) {
if !validCheckWithResponseOnFail(response, request, normal) {
return
}
ctx := request.Context()
user, err := getUserByToken(ctx, request.Header.Get("token"))
if err != nil {
http.Error(response, "invalid token", http.StatusUnauthorized)
return
}
targetId, err := convertions.StringToUuid(request.URL.Query().Get("target_id"))
if err != nil {
http.Error(response, "invalid targetid", http.StatusBadRequest)
return
}
response.WriteHeader(http.StatusOK)
user.Mu.Lock()
response.Write([]byte(fmt.Sprintf("%d", user.ChannelUnreadMessage[targetId])))
user.ChannelUnreadMessage[targetId] = 0
user.Mu.Unlock()
}