Filter out syndicates where the user is both the owner and a member in syndicate veiw.

This commit is contained in:
2025-04-04 11:19:45 +01:00
parent f6350b1d7f
commit 8b02a3137d

View File

@@ -56,10 +56,23 @@ func ListSyndicatesHandler(db *sql.DB) http.HandlerFunc {
managed := storage.GetSyndicatesByOwner(db, userID) managed := storage.GetSyndicatesByOwner(db, userID)
member := storage.GetSyndicatesByMember(db, userID) member := storage.GetSyndicatesByMember(db, userID)
// Filter out syndicates where the user is both the owner and a member
managedMap := make(map[int]bool)
for _, s := range managed {
managedMap[s.ID] = true
}
var filteredJoined []models.Syndicate
for _, s := range member {
if !managedMap[s.ID] {
filteredJoined = append(filteredJoined, s)
}
}
data := BuildTemplateData(db, w, r) data := BuildTemplateData(db, w, r)
context := helpers.TemplateContext(w, r, data) context := helpers.TemplateContext(w, r, data)
context["ManagedSyndicates"] = managed context["ManagedSyndicates"] = managed
context["JoinedSyndicates"] = member context["JoinedSyndicates"] = filteredJoined
tmpl := helpers.LoadTemplateFiles("syndicates.html", "templates/syndicate/index.html") tmpl := helpers.LoadTemplateFiles("syndicates.html", "templates/syndicate/index.html")
tmpl.ExecuteTemplate(w, "layout", context) tmpl.ExecuteTemplate(w, "layout", context)