| 14049 | |
| 14050 | /* --- Mobile card layout (shown < md) --- */ |
| 14051 | function networkCardHTML(net) { |
| 14052 | const ssid = escapeHtml(net.ssid || 'Unknown'); |
| 14053 | const bssid = escapeHtml(net.bssid || 'Unknown'); |
| 14054 | const lastSeen = net.last_seen ? formatTimestamp(net.last_seen) : 'Unknown'; |
| 14055 | return ` |
| 14056 | <div class="bg-slate-800 bg-opacity-60 rounded-lg p-4"> |
| 14057 | <div class="flex items-start justify-between gap-2 mb-2"> |
| 14058 | <span class="text-white font-semibold text-sm break-all">${ssid}</span> |
| 14059 | <span class="text-xs text-gray-400 whitespace-nowrap">${lastSeen}</span> |
| 14060 | </div> |
| 14061 | <div class="text-xs text-gray-400 font-mono mb-2">${bssid}</div> |
| 14062 | <div class="flex flex-wrap gap-1 mb-1">${_pwnBadgesHTML(net)}</div> |
| 14063 | <div class="text-xs mt-1">${_pwnGpsHTML(net)}</div> |
| 14064 | ${_pwnFilesHTML(net.files)} |