MCPcopy Create free account
hub / github.com/BuddySirJava/SSH-Studio / _collect_field_errors

Method _collect_field_errors

src/ui/host_editor.py:1423–1471  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1421 return current_raw_clean != original_raw_clean
1422
1423 def _collect_field_errors(self) -> dict:
1424 errors: dict[str, str] = {}
1425 self._clear_field_errors()
1426
1427 patterns_text = self.patterns_entry.get_text().strip()
1428 if not patterns_text:
1429 errors["patterns"] = _("Host name (patterns) is required.")
1430
1431 port_value = self.port_entry.get_value()
1432 if port_value and not (1 <= port_value <= 65535):
1433 errors["port"] = _("Port must be between 1 and 65535.")
1434
1435 if "patterns" in errors:
1436 self.patterns_error_label.set_text(errors["patterns"])
1437 self.patterns_error_label.set_visible(True)
1438 self.patterns_entry.add_css_class("entry-error")
1439 else:
1440 self.patterns_entry.remove_css_class("entry-error")
1441 if "port" in errors:
1442 self.port_error_label.set_text(errors["port"])
1443 self.port_error_label.set_visible(True)
1444 else:
1445 self.port_error_label.set_visible(False)
1446
1447 interval_value = self.serveralive_interval_entry.get_value()
1448 if interval_value and interval_value < 0:
1449 errors["sai"] = _("ServerAliveInterval must be >= 0.")
1450
1451 count_value = self.serveralive_count_entry.get_value()
1452 if count_value and count_value < 1:
1453 errors["sacm"] = _("ServerAliveCountMax must be >= 1.")
1454
1455
1456 try:
1457 if self.connect_timeout_entry:
1458 ct_text = self.connect_timeout_entry.get_text().strip()
1459 if ct_text:
1460 ct_val = int(ct_text)
1461 if ct_val < 1:
1462 errors["ct"] = _("ConnectTimeout must be >= 1.")
1463 except ValueError:
1464 errors["ct"] = _("ConnectTimeout must be numeric.")
1465 if "ct" in errors and self.connect_timeout_entry:
1466 self.connect_timeout_entry.add_css_class("entry-error")
1467 else:
1468 if self.connect_timeout_entry:
1469 self.connect_timeout_entry.remove_css_class("entry-error")
1470
1471 return errors
1472
1473 def _clear_field_errors(self):
1474 if hasattr(self, "patterns_error_label"):

Callers 3

_on_save_clickedMethod · 0.95

Calls 1

_clear_field_errorsMethod · 0.95

Tested by

no test coverage detected