Update
This commit is contained in:
+24
-5
@@ -75,7 +75,7 @@ class AdminWindow(QDialog):
|
||||
| Qt.WindowType.WindowTitleHint
|
||||
| Qt.WindowType.WindowCloseButtonHint
|
||||
)
|
||||
self.setFixedSize(700, 560)
|
||||
self.setFixedSize(700, 600)
|
||||
self._build_ui()
|
||||
self._load_values()
|
||||
|
||||
@@ -340,11 +340,11 @@ class AdminWindow(QDialog):
|
||||
self._row(form, "", btn_gen_secret)
|
||||
lay.addWidget(grp)
|
||||
|
||||
grp2 = QGroupBox("QR Code — Scanner avec Google Authenticator / Aegis")
|
||||
grp2 = QGroupBox("QR Code — Scanner avec Bitwarden")
|
||||
v2 = QVBoxLayout(grp2)
|
||||
self._qr_label = QLabel("(générez un secret pour afficher le QR Code)")
|
||||
self._qr_label.setAlignment(Qt.AlignmentFlag.AlignCenter)
|
||||
self._qr_label.setFixedHeight(180)
|
||||
self._qr_label.setFixedHeight(230)
|
||||
v2.addWidget(self._qr_label)
|
||||
self._mfa_uri_label = QLabel("")
|
||||
self._mfa_uri_label.setWordWrap(True)
|
||||
@@ -736,6 +736,8 @@ class AdminWindow(QDialog):
|
||||
# Actions
|
||||
# ------------------------------------------------------------------ #
|
||||
def _import_conf(self):
|
||||
from PyQt6.QtWidgets import QInputDialog
|
||||
import os as _os
|
||||
path, _ = QFileDialog.getOpenFileName(
|
||||
self, "Importer un fichier WireGuard",
|
||||
"", "WireGuard Config (*.conf);;Tous les fichiers (*)"
|
||||
@@ -746,6 +748,19 @@ class AdminWindow(QDialog):
|
||||
if not values:
|
||||
QMessageBox.warning(self, "Erreur", "Impossible de lire ce fichier .conf")
|
||||
return
|
||||
|
||||
# Demander le nom du profil (défaut = nom du fichier sans extension)
|
||||
default_name = _os.path.splitext(_os.path.basename(path))[0]
|
||||
name, ok = QInputDialog.getText(
|
||||
self, "Nom du profil",
|
||||
"Nom du nouveau profil :",
|
||||
text=default_name,
|
||||
)
|
||||
if not ok or not name.strip():
|
||||
return
|
||||
name = name.strip()
|
||||
|
||||
# Appliquer les valeurs dans les champs
|
||||
mapping = {
|
||||
"server_endpoint": self._srv_endpoint,
|
||||
"server_public_key": self._srv_pubkey,
|
||||
@@ -762,10 +777,14 @@ class AdminWindow(QDialog):
|
||||
self._srv_port.setValue(int(values["server_port"]))
|
||||
if "keepalive" in values:
|
||||
self._keepalive.setValue(int(values["keepalive"]))
|
||||
|
||||
# Sauvegarder en tant que nouveau profil
|
||||
self._save_values()
|
||||
self._cfg.save_profile(name)
|
||||
self._refresh_profile_list()
|
||||
QMessageBox.information(
|
||||
self, "Import réussi",
|
||||
f"Configuration importée depuis :\n{path}"
|
||||
f"Profil « {name} » créé depuis :\n{path}"
|
||||
)
|
||||
|
||||
def _export_conf(self):
|
||||
@@ -810,7 +829,7 @@ class AdminWindow(QDialog):
|
||||
return
|
||||
pixmap = mfa_core.generate_qr_pixmap(secret)
|
||||
self._qr_label.setPixmap(
|
||||
pixmap.scaled(160, 160, Qt.AspectRatioMode.KeepAspectRatio,
|
||||
pixmap.scaled(210, 210, Qt.AspectRatioMode.KeepAspectRatio,
|
||||
Qt.TransformationMode.SmoothTransformation)
|
||||
)
|
||||
self._mfa_uri_label.setText(mfa_core.get_provisioning_uri(secret))
|
||||
|
||||
Reference in New Issue
Block a user