cleanup channel settings page backend

This commit is contained in:
Peter Stuifzand 2021-07-31 16:23:56 +02:00
parent 61e4a84848
commit dcc9bfa889
Signed by: peter
GPG Key ID: 374322D56E5209E8

View File

@ -362,21 +362,31 @@ func (h *mainHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
var page settingsPage var page settingsPage
page.Session = sess page.Session = sess
currentChannel := r.URL.Query().Get("uid") currentChannelUID := r.URL.Query().Get("uid")
page.Channels, err = h.Backend.ChannelsGetList() page.Channels, err = h.Backend.ChannelsGetList()
page.Feeds, err = h.Backend.FollowGetList(currentChannel) page.Feeds, err = h.Backend.FollowGetList(currentChannelUID)
var selectedChannel microsub.Channel
found := false
for _, v := range page.Channels { for _, v := range page.Channels {
if v.UID == currentChannel { if v.UID == currentChannelUID {
page.CurrentChannel = v selectedChannel = v
if setting, e := h.Backend.Settings[v.UID]; e { found = true
break
}
}
if found {
page.CurrentChannel = selectedChannel
if setting, e := h.Backend.Settings[selectedChannel.UID]; e {
page.CurrentSetting = setting page.CurrentSetting = setting
} else { } else {
page.CurrentSetting = channelSetting{} page.CurrentSetting = channelSetting{}
} }
// FIXME: similar code is found in timeline.go // FIXME: similar code is found in timeline.go
if page.CurrentSetting.ChannelType == "" { if page.CurrentSetting.ChannelType == "" {
if v.UID == "notifications" { if selectedChannel.UID == "notifications" {
page.CurrentSetting.ChannelType = "stream" page.CurrentSetting.ChannelType = "stream"
} else { } else {
page.CurrentSetting.ChannelType = "sorted-set" page.CurrentSetting.ChannelType = "sorted-set"
@ -397,8 +407,6 @@ func (h *mainHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
for _, v := range page.CurrentSetting.ExcludeType { for _, v := range page.CurrentSetting.ExcludeType {
page.ExcludedTypes[v] = true page.ExcludedTypes[v] = true
} }
break
}
} }
err = h.renderTemplate(w, "channel.html", page) err = h.renderTemplate(w, "channel.html", page)