mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Fix #1730026 [Clicking Test server should open the server with secure connection when SSL files are available](https://bugs.launchpad.net/calibre/+bug/1730026)
This commit is contained in:
parent
c0e83a4ff1
commit
ddcbe31727
@ -181,6 +181,7 @@ class AdvancedTab(QWidget):
|
|||||||
self.l = l = QFormLayout(self)
|
self.l = l = QFormLayout(self)
|
||||||
l.setFieldGrowthPolicy(l.AllNonFixedFieldsGrow)
|
l.setFieldGrowthPolicy(l.AllNonFixedFieldsGrow)
|
||||||
self.widgets = []
|
self.widgets = []
|
||||||
|
self.widget_map = {}
|
||||||
self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
|
self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
|
||||||
for name in sorted(options, key=lambda n: options[n].shortdoc.lower()):
|
for name in sorted(options, key=lambda n: options[n].shortdoc.lower()):
|
||||||
if name in ('auth', 'port', 'allow_socket_preallocation', 'userdb'):
|
if name in ('auth', 'port', 'allow_socket_preallocation', 'userdb'):
|
||||||
@ -201,6 +202,7 @@ class AdvancedTab(QWidget):
|
|||||||
w = w(name, l)
|
w = w(name, l)
|
||||||
setattr(self, 'opt_' + name, w)
|
setattr(self, 'opt_' + name, w)
|
||||||
self.widgets.append(w)
|
self.widgets.append(w)
|
||||||
|
self.widget_map[name] = w
|
||||||
|
|
||||||
def genesis(self):
|
def genesis(self):
|
||||||
opts = server_config()
|
opts = server_config()
|
||||||
@ -212,10 +214,16 @@ class AdvancedTab(QWidget):
|
|||||||
for w in self.widgets:
|
for w in self.widgets:
|
||||||
w.set(w.default_val)
|
w.set(w.default_val)
|
||||||
|
|
||||||
|
def get(self, name):
|
||||||
|
return self.widget_map[name].get()
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def settings(self):
|
def settings(self):
|
||||||
return {w.name: w.get() for w in self.widgets}
|
return {w.name: w.get() for w in self.widgets}
|
||||||
|
|
||||||
|
@property
|
||||||
|
def has_ssl(self):
|
||||||
|
return bool(self.get('ssl_certfile')) and bool(self.get('ssl_keyfile'))
|
||||||
|
|
||||||
# }}}
|
# }}}
|
||||||
|
|
||||||
@ -1011,10 +1019,14 @@ class ConfigWidget(ConfigWidgetBase):
|
|||||||
self.stopping_msg.accept()
|
self.stopping_msg.accept()
|
||||||
|
|
||||||
def test_server(self):
|
def test_server(self):
|
||||||
prefix = self.advanced_tab.opt_url_prefix.text().strip()
|
prefix = self.advanced_tab.get('url_prefix') or ''
|
||||||
open_url(
|
protocol = 'https' if self.advanced_tab.has_ssl else 'http'
|
||||||
QUrl('http://127.0.0.1:' + str(self.main_tab.opt_port.value()) + prefix)
|
lo = self.advanced_tab.get('listen_on') or '0.0.0.0'
|
||||||
)
|
lo = {'0.0.0.0': '127.0.0.1', '::':'::1'}.get(lo)
|
||||||
|
url = '{protocol}://{interface}:{port}{prefix}'.format(
|
||||||
|
protocol=protocol, interface=lo,
|
||||||
|
port=self.main_tab.opt_port.value(), prefix=prefix)
|
||||||
|
open_url(QUrl(url))
|
||||||
|
|
||||||
def view_server_logs(self):
|
def view_server_logs(self):
|
||||||
from calibre.srv.embedded import log_paths
|
from calibre.srv.embedded import log_paths
|
||||||
|
Loading…
x
Reference in New Issue
Block a user