Skip to content

Commit

Permalink
fix some minor bugs
Browse files Browse the repository at this point in the history
  • Loading branch information
Dragon2fly committed Nov 6, 2015
1 parent e3e62d3 commit 85fb2bd
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 13 deletions.
2 changes: 2 additions & 0 deletions ui_elements.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,10 @@ def item_callback(self, Button, data=None):
port = self.port.edit_text
if not country:
self.country.set_edit_text('all')
country = 'all'
if not port:
self.port.set_edit_text('all')
port = 'all'
self._emit("close")
elif port != 'all' and not 0 <= int(port) <= 65535:
self.port.set_edit_text('Invalid number!')
Expand Down
2 changes: 1 addition & 1 deletion vpn_indicator.py
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ def status(self, _, messages=[0]):
summary = 'VPN tunnel established'
body = '''
%s \t %s
Ping: \t\t\t%s \tSpeed : \t%s MB/s
Ping: \t\t\t%s \tSpeed : \t%s Mbps
Up time:\t\t%s \tSeason: \t%s
Log: \t\t\t%s
Score: \t\t\t%s
Expand Down
31 changes: 19 additions & 12 deletions vpnproxy_tui.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,9 @@
# Define some mirrors of vpngate.net
mirrors = ['http://www.vpngate.net',
'http://103.253.112.16:49882',
'http://158.ip-37-187-34.eu:58272',
]
'http://hannan.postech.ac.kr:6395',
'http://115.160.46.181:38061',
'http://hornet.knu.ac.kr:36171']

# TODO: add user manual to this and can be access by h, help. It may never be done, reads the README file instead

Expand Down Expand Up @@ -210,29 +211,35 @@ def get_data(self):
else:
proxies = {}

self.vpndict.clear()
i = 0
success = 0
while i < len(mirrors):
try:
self.messages['debug'].appendleft(' using gate: ' + mirrors[i])
gate = mirrors[i] + '/api/iphone/'
vpn_data = requests.get(gate, proxies=proxies, timeout=3).text.replace('\r', '')
vpn_data = requests.get(gate, proxies=proxies, timeout=2).text.replace('\r', '')

if 'vpn_servers' not in vpn_data:
raise requests.exceptions.RequestException
self.messages['debug'].appendleft(' Gate ' + mirrors[i] + ' does not have expected data!')
else:
servers = [line.split(',') for line in vpn_data.split('\n')]
self.vpndict.update({s[0]: Server(s) for s in servers[2:] if len(s) > 1})
self.messages['debug'].appendleft(' Fetching servers completed')
success += 1

servers = [line.split(',') for line in vpn_data.split('\n')]
self.vpndict = {s[0]: Server(s) for s in servers[2:] if len(s) > 1}
self.messages['debug'].appendleft(' Fetching servers completed')
repr(self.vpndict.items()[1][1])
break
if success == 1: break
i += 1

except requests.exceptions.RequestException as e:
self.messages['debug'].appendleft(str(e))
self.messages['debug'].appendleft(' Connection to gate ' + mirrors[i] + ' failed')
i += 1
else:
self.messages['debug'].appendleft(' Failed to get VPN servers data\n Check your network setting and proxy')
sys.exit(1)
if not success:
self.messages['debug'].appendleft(' Failed to get VPN servers data\n '
'Check your network setting and proxy')
sys.exit(1)

def refresh_data(self):
# fetch data from vpngate.net
Expand Down Expand Up @@ -591,7 +598,7 @@ def update_GUI(self):
# Page number
total = str(len(data_list) // self.ser_no + 1)
page_no = str(self.index / self.ser_no + 1)
while page_no > total:
while int(page_no) > int(total):
self.index -= self.ser_no
page_no = str(self.index / self.ser_no + 1)
self.pages.set_text([('command', u'\u2191\u2193 page: '), page_no + '/' + total])
Expand Down

0 comments on commit 85fb2bd

Please sign in to comment.