Fix server filtering using merged server data
This commit is contained in:
@@ -20,8 +20,7 @@ func newCyberghost(servers []models.CyberghostServer) *cyberghost {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *cyberghost) filterServers(region, group string) (servers []models.CyberghostServer) {
|
func (c *cyberghost) filterServers(region, group string) (servers []models.CyberghostServer) {
|
||||||
allServers := constants.CyberghostServers()
|
for i, server := range c.servers {
|
||||||
for i, server := range allServers {
|
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
server.Region = ""
|
server.Region = ""
|
||||||
}
|
}
|
||||||
@@ -29,7 +28,7 @@ func (c *cyberghost) filterServers(region, group string) (servers []models.Cyber
|
|||||||
server.Group = ""
|
server.Group = ""
|
||||||
}
|
}
|
||||||
if strings.EqualFold(server.Region, region) && strings.EqualFold(server.Group, group) {
|
if strings.EqualFold(server.Region, region) && strings.EqualFold(server.Group, group) {
|
||||||
servers = append(servers, allServers[i])
|
servers = append(servers, c.servers[i])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return servers
|
return servers
|
||||||
|
|||||||
@@ -20,8 +20,7 @@ func newMullvad(servers []models.MullvadServer) *mullvad {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (m *mullvad) filterServers(country, city, isp string) (servers []models.MullvadServer) {
|
func (m *mullvad) filterServers(country, city, isp string) (servers []models.MullvadServer) {
|
||||||
allServers := constants.MullvadServers()
|
for i, server := range m.servers {
|
||||||
for i, server := range allServers {
|
|
||||||
if len(country) == 0 {
|
if len(country) == 0 {
|
||||||
server.Country = ""
|
server.Country = ""
|
||||||
}
|
}
|
||||||
@@ -34,7 +33,7 @@ func (m *mullvad) filterServers(country, city, isp string) (servers []models.Mul
|
|||||||
if strings.EqualFold(server.Country, country) &&
|
if strings.EqualFold(server.Country, country) &&
|
||||||
strings.EqualFold(server.City, city) &&
|
strings.EqualFold(server.City, city) &&
|
||||||
strings.EqualFold(server.ISP, isp) {
|
strings.EqualFold(server.ISP, isp) {
|
||||||
servers = append(servers, allServers[i])
|
servers = append(servers, m.servers[i])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return servers
|
return servers
|
||||||
|
|||||||
@@ -20,8 +20,7 @@ func newNordvpn(servers []models.NordvpnServer) *nordvpn {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (n *nordvpn) filterServers(region string, protocol models.NetworkProtocol, number uint16) (servers []models.NordvpnServer) {
|
func (n *nordvpn) filterServers(region string, protocol models.NetworkProtocol, number uint16) (servers []models.NordvpnServer) {
|
||||||
allServers := constants.NordvpnServers()
|
for i, server := range n.servers {
|
||||||
for i, server := range allServers {
|
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
server.Region = ""
|
server.Region = ""
|
||||||
}
|
}
|
||||||
@@ -35,7 +34,7 @@ func (n *nordvpn) filterServers(region string, protocol models.NetworkProtocol,
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if strings.EqualFold(server.Region, region) && server.Number == number {
|
if strings.EqualFold(server.Region, region) && server.Number == number {
|
||||||
servers = append(servers, allServers[i])
|
servers = append(servers, n.servers[i])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return servers
|
return servers
|
||||||
|
|||||||
@@ -27,9 +27,9 @@ func newPrivateInternetAccess(servers []models.PIAServer) *pia {
|
|||||||
|
|
||||||
func (p *pia) filterServers(region string) (servers []models.PIAServer) {
|
func (p *pia) filterServers(region string) (servers []models.PIAServer) {
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
return constants.PIAServers()
|
return p.servers
|
||||||
}
|
}
|
||||||
for _, server := range constants.PIAServers() {
|
for _, server := range p.servers {
|
||||||
if strings.EqualFold(server.Region, region) {
|
if strings.EqualFold(server.Region, region) {
|
||||||
return []models.PIAServer{server}
|
return []models.PIAServer{server}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,8 +20,7 @@ func newPurevpn(servers []models.PurevpnServer) *purevpn {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *purevpn) filterServers(region, country, city string) (servers []models.PurevpnServer) {
|
func (p *purevpn) filterServers(region, country, city string) (servers []models.PurevpnServer) {
|
||||||
allServers := constants.PurevpnServers()
|
for i, server := range p.servers {
|
||||||
for i, server := range allServers {
|
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
server.Region = ""
|
server.Region = ""
|
||||||
}
|
}
|
||||||
@@ -34,7 +33,7 @@ func (p *purevpn) filterServers(region, country, city string) (servers []models.
|
|||||||
if strings.EqualFold(server.Region, region) &&
|
if strings.EqualFold(server.Region, region) &&
|
||||||
strings.EqualFold(server.Country, country) &&
|
strings.EqualFold(server.Country, country) &&
|
||||||
strings.EqualFold(server.City, city) {
|
strings.EqualFold(server.City, city) {
|
||||||
servers = append(servers, allServers[i])
|
servers = append(servers, p.servers[i])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return servers
|
return servers
|
||||||
|
|||||||
@@ -21,9 +21,9 @@ func newSurfshark(servers []models.SurfsharkServer) *surfshark {
|
|||||||
|
|
||||||
func (s *surfshark) filterServers(region string) (servers []models.SurfsharkServer) {
|
func (s *surfshark) filterServers(region string) (servers []models.SurfsharkServer) {
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
return constants.SurfsharkServers()
|
return s.servers
|
||||||
}
|
}
|
||||||
for _, server := range constants.SurfsharkServers() {
|
for _, server := range s.servers {
|
||||||
if strings.EqualFold(server.Region, region) {
|
if strings.EqualFold(server.Region, region) {
|
||||||
return []models.SurfsharkServer{server}
|
return []models.SurfsharkServer{server}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,9 +21,9 @@ func newVyprvpn(servers []models.VyprvpnServer) *vyprvpn {
|
|||||||
|
|
||||||
func (v *vyprvpn) filterServers(region string) (servers []models.VyprvpnServer) {
|
func (v *vyprvpn) filterServers(region string) (servers []models.VyprvpnServer) {
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
return constants.VyprvpnServers()
|
return v.servers
|
||||||
}
|
}
|
||||||
for _, server := range constants.VyprvpnServers() {
|
for _, server := range v.servers {
|
||||||
if strings.EqualFold(server.Region, region) {
|
if strings.EqualFold(server.Region, region) {
|
||||||
return []models.VyprvpnServer{server}
|
return []models.VyprvpnServer{server}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,9 +21,9 @@ func newWindscribe(servers []models.WindscribeServer) *windscribe {
|
|||||||
|
|
||||||
func (w *windscribe) filterServers(region string) (servers []models.WindscribeServer) {
|
func (w *windscribe) filterServers(region string) (servers []models.WindscribeServer) {
|
||||||
if len(region) == 0 {
|
if len(region) == 0 {
|
||||||
return constants.WindscribeServers()
|
return w.servers
|
||||||
}
|
}
|
||||||
for _, server := range constants.WindscribeServers() {
|
for _, server := range w.servers {
|
||||||
if strings.EqualFold(server.Region, region) {
|
if strings.EqualFold(server.Region, region) {
|
||||||
return []models.WindscribeServer{server}
|
return []models.WindscribeServer{server}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user