package htop import ( "html/template" "net/http" "os" "processSupervisor/htop/models" "strconv" ) func KillHandler(w http.ResponseWriter, r *http.Request) { pidStr := r.URL.Query().Get("pid") pid, err := strconv.Atoi(pidStr) if err != nil { http.Error(w, "Invalid PID", http.StatusBadRequest) return } proc, err := os.FindProcess(pid) if err != nil { http.Error(w, "Process not found", http.StatusNotFound) return } err = proc.Kill() if err != nil { http.Error(w, "Failed to kill process", http.StatusInternalServerError) return } // Return updated table partial (same as HTMX request) processes, err := models.GetProcesses() if err != nil { http.Error(w, "Failed to get processes", http.StatusInternalServerError) return } tmpl := template.Must(template.ParseFiles("templates/table.html")) tmpl.Execute(w, processes) }