This commit is contained in:
@@ -2,9 +2,6 @@ package models
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
"sort"
|
||||
"strconv"
|
||||
|
||||
ps "github.com/shirou/gopsutil/v3/process"
|
||||
)
|
||||
@@ -59,50 +56,3 @@ func GetProcesses() ([]Process, error) {
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (t *HtopTable) Sort(r *http.Request) {
|
||||
sortBy := r.URL.Query().Get("sort")
|
||||
order := r.URL.Query().Get("order")
|
||||
|
||||
if order == "desc" {
|
||||
t.CurrentOrder = "desc"
|
||||
} else {
|
||||
t.CurrentOrder = "asc"
|
||||
}
|
||||
|
||||
t.CurrentSort = sortBy
|
||||
|
||||
sort.Slice(t.Processes, func(i, j int) bool {
|
||||
switch sortBy {
|
||||
case "pid":
|
||||
pidI, _ := strconv.Atoi(t.Processes[i].PID)
|
||||
pidJ, _ := strconv.Atoi(t.Processes[j].PID)
|
||||
if t.CurrentOrder == "desc" {
|
||||
return pidI > pidJ
|
||||
}
|
||||
return pidI < pidJ
|
||||
case "user":
|
||||
if t.CurrentOrder == "desc" {
|
||||
return t.Processes[i].User > t.Processes[j].User
|
||||
}
|
||||
return t.Processes[i].User < t.Processes[j].User
|
||||
case "cmd":
|
||||
if t.CurrentOrder == "desc" {
|
||||
return t.Processes[i].Cmd > t.Processes[j].Cmd
|
||||
}
|
||||
return t.Processes[i].Cmd < t.Processes[j].Cmd
|
||||
case "cpu":
|
||||
if t.CurrentOrder == "desc" {
|
||||
return t.Processes[i].CPU > t.Processes[j].CPU
|
||||
}
|
||||
return t.Processes[i].CPU < t.Processes[j].CPU
|
||||
case "memory":
|
||||
if t.CurrentOrder == "desc" {
|
||||
return t.Processes[i].Memory > t.Processes[j].Memory
|
||||
}
|
||||
return t.Processes[i].Memory < t.Processes[j].Memory
|
||||
default:
|
||||
return true
|
||||
}
|
||||
})
|
||||
}
|
||||
|
Reference in New Issue
Block a user