diff --git a/mail-bridge-installed b/mail-bridge-installed new file mode 100755 index 0000000..cdb76a0 Binary files /dev/null and b/mail-bridge-installed differ diff --git a/main.go b/main.go index 01d1c08..aa58329 100644 --- a/main.go +++ b/main.go @@ -302,17 +302,22 @@ func handleMessages(w http.ResponseWriter, r *http.Request) { // Filter by source if specified sourceFilter := r.URL.Query().Get("source") - if sourceFilter != "" { - var filtered []UnifiedMessage - for _, msg := range messages { - if msg.Source == sourceFilter { - filtered = append(filtered, msg) - } + showAll := r.URL.Query().Get("all") == "true" + + var filtered []UnifiedMessage + for _, msg := range messages { + if sourceFilter != "" && msg.Source != sourceFilter { + continue } - messages = filtered + // By default, exclude actioned messages (archived/deleted/etc.) + // Use ?all=true to include everything + if !showAll && orch.HasAction(msg.ID) { + continue + } + filtered = append(filtered, msg) } - json.NewEncoder(w).Encode(messages) + json.NewEncoder(w).Encode(filtered) } func handleMessagesNew(w http.ResponseWriter, r *http.Request) {