feat: complete T-530 cmhub URL normalization
This commit is contained in:
@@ -71,7 +71,7 @@ class SettingsTab(QWidget):
|
||||
self.backend_combo.setVisible(False)
|
||||
self.cmhub_base_url_edit = QLineEdit()
|
||||
self.cmhub_base_url_edit.setObjectName("cmhubBaseUrlEdit")
|
||||
self.cmhub_base_url_edit.setPlaceholderText("https://<cmhub>")
|
||||
self.cmhub_base_url_edit.setPlaceholderText("https://host(不要带 /api 或 /api/v1)")
|
||||
self.cmhub_api_key_edit = QLineEdit()
|
||||
self.cmhub_api_key_edit.setObjectName("cmhubApiKeyEdit")
|
||||
self.cmhub_api_key_edit.setEchoMode(QLineEdit.Password)
|
||||
@@ -93,6 +93,9 @@ class SettingsTab(QWidget):
|
||||
self.cmhub_result_label = QLabel("")
|
||||
self.cmhub_result_label.setObjectName("cmhubResultLabel")
|
||||
self.cmhub_result_label.setWordWrap(True)
|
||||
self.cmhub_base_url_hint_label = QLabel("Base URL 只填网关根,如 https://host;不要带 /api 或 /api/v1。")
|
||||
self.cmhub_base_url_hint_label.setObjectName("cmhubBaseUrlHintLabel")
|
||||
self.cmhub_base_url_hint_label.setWordWrap(True)
|
||||
self.cmhub_key_hint_label = QLabel("API Key 仅在 cmhub 网页端创建时显示一次;复制到此处后会本地明文保存并打码显示。")
|
||||
self.cmhub_key_hint_label.setObjectName("cmhubKeyHintLabel")
|
||||
self.cmhub_key_hint_label.setWordWrap(True)
|
||||
@@ -302,6 +305,7 @@ class SettingsTab(QWidget):
|
||||
cmhub_panel_layout.setContentsMargins(0, 0, 0, 0)
|
||||
cmhub_panel_layout.setSpacing(8)
|
||||
cmhub_panel_layout.addLayout(cmhub_form)
|
||||
cmhub_panel_layout.addWidget(self.cmhub_base_url_hint_label)
|
||||
cmhub_panel_layout.addWidget(self.cmhub_key_hint_label)
|
||||
cmhub_panel_layout.addLayout(cmhub_action_layout)
|
||||
cmhub_panel_layout.addWidget(self.cmhub_result_label)
|
||||
@@ -673,7 +677,7 @@ class SettingsTab(QWidget):
|
||||
def _cmhub_settings_values(self, backend):
|
||||
current = appconfig.cmhub_config(self.config)
|
||||
values = {
|
||||
"base_url": self.cmhub_base_url_edit.text().strip(),
|
||||
"base_url": appconfig.normalize_cmhub_base_url(self.cmhub_base_url_edit.text()),
|
||||
"title_alias": self.cmhub_title_alias_combo.currentData() or "",
|
||||
"image_alias": self.cmhub_image_alias_combo.currentData() or "",
|
||||
"connect_timeout": self.cmhub_connect_timeout_spin.value(),
|
||||
@@ -700,7 +704,7 @@ class SettingsTab(QWidget):
|
||||
ai_cfg = appconfig.ai_config(self.config)
|
||||
self._set_combo_by_data(self.backend_combo, "cmhub")
|
||||
cmhub_cfg = appconfig.cmhub_config(self.config)
|
||||
self.cmhub_base_url_edit.setText(cmhub_cfg.get("base_url", ""))
|
||||
self.cmhub_base_url_edit.setText(appconfig.normalize_cmhub_base_url(cmhub_cfg.get("base_url", "")))
|
||||
self._loaded_cmhub_api_key = appconfig.get_cmhub_api_key(path=self.cmhub_config_path)
|
||||
self.cmhub_api_key_edit.setText(self._loaded_cmhub_api_key)
|
||||
self.cmhub_connect_timeout_spin.setValue(
|
||||
@@ -937,7 +941,9 @@ class SettingsTab(QWidget):
|
||||
if self.cmhub_thread is not None:
|
||||
self._set_status("cmhub 检测正在进行...")
|
||||
return
|
||||
base_url = self.cmhub_base_url_edit.text().strip()
|
||||
base_url = appconfig.normalize_cmhub_base_url(self.cmhub_base_url_edit.text())
|
||||
if base_url != self.cmhub_base_url_edit.text().strip():
|
||||
self.cmhub_base_url_edit.setText(base_url)
|
||||
api_key = self.cmhub_api_key_edit.text()
|
||||
missing = []
|
||||
if not base_url:
|
||||
|
||||
Reference in New Issue
Block a user