| 2190 | stats = [ |
| 2191 | ("Vulns found", str(getattr(sd, 'vulnnbr', 0))), |
| 2192 | ("Attacks avail", str(getattr(sd, 'attacksnbr', 0))), |
| 2193 | ("Hosts scanned", str(getattr(sd, 'targetnbr', 0))), |
| 2194 | ("No scan files", ""), |
| 2195 | ] |
| 2196 | self._draw_stat_rows(draw, y, stats) |
| 2197 | |
| 2198 | def _render_discovered_page(self, image, draw): |
| 2199 | """Render Page 4: Discovered - real credentials, loot, and attack data.""" |
| 2200 | self._draw_page_frame(draw, "DISCOVERED") |
| 2201 | h = getattr(self, 'render_h', self.shared_data.height) |
| 2202 | sy = getattr(self, 'render_sy', self.scale_factor_y) |
| 2203 | top_y = int(28 * sy) |
| 2204 | bottom_y = h - int(18 * sy) |
| 2205 | |