Support open_browser disable even if it's started with start.py
This commit is contained in:
parent
68eb9a37ca
commit
656f48b354
3 changed files with 28 additions and 15 deletions
|
@ -385,10 +385,17 @@ class Config(object):
|
||||||
for key, val in config.items(section):
|
for key, val in config.items(section):
|
||||||
if section != "global": # If not global prefix key with section
|
if section != "global": # If not global prefix key with section
|
||||||
key = section + "_" + key
|
key = section + "_" + key
|
||||||
|
|
||||||
|
to_end = key == "open_browser" # Prefer config value over argument
|
||||||
|
argv_extend = ["--%s" % key]
|
||||||
if val:
|
if val:
|
||||||
for line in val.strip().split("\n"): # Allow multi-line values
|
for line in val.strip().split("\n"): # Allow multi-line values
|
||||||
argv.insert(1, line)
|
argv_extend.append(line)
|
||||||
argv.insert(1, "--%s" % key)
|
|
||||||
|
if to_end:
|
||||||
|
argv = argv[:-2] + argv_extend + argv[-2:]
|
||||||
|
else:
|
||||||
|
argv = argv[:1] + argv_extend + argv[1:]
|
||||||
return argv
|
return argv
|
||||||
|
|
||||||
# Expose arguments as class attributes
|
# Expose arguments as class attributes
|
||||||
|
|
|
@ -137,15 +137,18 @@ class UiServer:
|
||||||
self.log.info("Web interface: http://%s:%s/" % (config.ui_ip, config.ui_port))
|
self.log.info("Web interface: http://%s:%s/" % (config.ui_ip, config.ui_port))
|
||||||
self.log.info("--------------------------------------")
|
self.log.info("--------------------------------------")
|
||||||
|
|
||||||
if config.open_browser:
|
if config.open_browser and config.open_browser != "False":
|
||||||
logging.info("Opening browser: %s...", config.open_browser)
|
logging.info("Opening browser: %s...", config.open_browser)
|
||||||
import webbrowser
|
import webbrowser
|
||||||
|
try:
|
||||||
if config.open_browser == "default_browser":
|
if config.open_browser == "default_browser":
|
||||||
browser = webbrowser.get()
|
browser = webbrowser.get()
|
||||||
else:
|
else:
|
||||||
browser = webbrowser.get(config.open_browser)
|
browser = webbrowser.get(config.open_browser)
|
||||||
url = "http://%s:%s/%s" % (config.ui_ip if config.ui_ip != "*" else "127.0.0.1", config.ui_port, config.homepage)
|
url = "http://%s:%s/%s" % (config.ui_ip if config.ui_ip != "*" else "127.0.0.1", config.ui_port, config.homepage)
|
||||||
gevent.spawn_later(0.3, browser.open, url, new=2)
|
gevent.spawn_later(0.3, browser.open, url, new=2)
|
||||||
|
except Exception as err:
|
||||||
|
print "Error starting browser: %s" % err
|
||||||
|
|
||||||
self.server = WSGIServer((self.ip, self.port), handler, handler_class=UiWSGIHandler, log=self.log)
|
self.server = WSGIServer((self.ip, self.port), handler, handler_class=UiWSGIHandler, log=self.log)
|
||||||
self.server.sockets = {}
|
self.server.sockets = {}
|
||||||
|
|
|
@ -59,14 +59,17 @@ if config.action == "main":
|
||||||
lock.write("%s" % os.getpid())
|
lock.write("%s" % os.getpid())
|
||||||
except IOError as err:
|
except IOError as err:
|
||||||
print "Can't open lock file, your ZeroNet client is probably already running, exiting... (%s)" % err
|
print "Can't open lock file, your ZeroNet client is probably already running, exiting... (%s)" % err
|
||||||
if config.open_browser:
|
if config.open_browser and config.open_browser != "False":
|
||||||
print "Opening browser: %s...", config.open_browser
|
print "Opening browser: %s...", config.open_browser
|
||||||
import webbrowser
|
import webbrowser
|
||||||
|
try:
|
||||||
if config.open_browser == "default_browser":
|
if config.open_browser == "default_browser":
|
||||||
browser = webbrowser.get()
|
browser = webbrowser.get()
|
||||||
else:
|
else:
|
||||||
browser = webbrowser.get(config.open_browser)
|
browser = webbrowser.get(config.open_browser)
|
||||||
browser.open("http://%s:%s/%s" % (config.ui_ip if config.ui_ip != "*" else "127.0.0.1", config.ui_port, config.homepage), new=2)
|
browser.open("http://%s:%s/%s" % (config.ui_ip if config.ui_ip != "*" else "127.0.0.1", config.ui_port, config.homepage), new=2)
|
||||||
|
except Exception as err:
|
||||||
|
print "Error starting browser: %s" % err
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
if os.path.isfile("%s/debug.log" % config.log_dir): # Simple logrotate
|
if os.path.isfile("%s/debug.log" % config.log_dir): # Simple logrotate
|
||||||
|
|
Loading…
Reference in a new issue