2021-05-08 00:59:42 +00:00
|
|
|
package protonvpn
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"sort"
|
|
|
|
|
|
|
|
|
|
"github.com/qdm12/gluetun/internal/models"
|
|
|
|
|
)
|
|
|
|
|
|
2022-04-16 22:25:36 +02:00
|
|
|
func sortServers(servers []models.Server) {
|
2021-05-08 00:59:42 +00:00
|
|
|
sort.Slice(servers, func(i, j int) bool {
|
|
|
|
|
a, b := servers[i], servers[j]
|
|
|
|
|
if a.Country == b.Country { //nolint:nestif
|
|
|
|
|
if a.Region == b.Region {
|
|
|
|
|
if a.City == b.City {
|
2022-04-16 22:25:36 +02:00
|
|
|
if a.ServerName == b.ServerName {
|
2021-05-08 00:59:42 +00:00
|
|
|
return a.Hostname < b.Hostname
|
|
|
|
|
}
|
2022-04-16 22:25:36 +02:00
|
|
|
return a.ServerName < b.ServerName
|
2021-05-08 00:59:42 +00:00
|
|
|
}
|
|
|
|
|
return a.City < b.City
|
|
|
|
|
}
|
|
|
|
|
return a.Region < b.Region
|
|
|
|
|
}
|
|
|
|
|
return a.Country < b.Country
|
|
|
|
|
})
|
|
|
|
|
}
|