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):
|
||||
if section != "global": # If not global prefix key with section
|
||||
key = section + "_" + key
|
||||
|
||||
to_end = key == "open_browser" # Prefer config value over argument
|
||||
argv_extend = ["--%s" % key]
|
||||
if val:
|
||||
for line in val.strip().split("\n"): # Allow multi-line values
|
||||
argv.insert(1, line)
|
||||
argv.insert(1, "--%s" % key)
|
||||
argv_extend.append(line)
|
||||
|
||||
if to_end:
|
||||
argv = argv[:-2] + argv_extend + argv[-2:]
|
||||
else:
|
||||
argv = argv[:1] + argv_extend + argv[1:]
|
||||
return argv
|
||||
|
||||
# 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("--------------------------------------")
|
||||
|
||||
if config.open_browser:
|
||||
if config.open_browser and config.open_browser != "False":
|
||||
logging.info("Opening browser: %s...", config.open_browser)
|
||||
import webbrowser
|
||||
try:
|
||||
if config.open_browser == "default_browser":
|
||||
browser = webbrowser.get()
|
||||
else:
|
||||
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)
|
||||
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.sockets = {}
|
||||
|
|
|
@ -59,14 +59,17 @@ if config.action == "main":
|
|||
lock.write("%s" % os.getpid())
|
||||
except IOError as 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
|
||||
import webbrowser
|
||||
try:
|
||||
if config.open_browser == "default_browser":
|
||||
browser = webbrowser.get()
|
||||
else:
|
||||
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)
|
||||
except Exception as err:
|
||||
print "Error starting browser: %s" % err
|
||||
sys.exit()
|
||||
|
||||
if os.path.isfile("%s/debug.log" % config.log_dir): # Simple logrotate
|
||||
|
|
Loading…
Reference in a new issue