mirror of
https://github.com/P-Aimon-Pen/ROFMAD
synced 2026-06-21 13:45:02 +00:00
77 lines
3.6 KiB
HTML
77 lines
3.6 KiB
HTML
{% for host in hosts %}
|
|
<tr class="host-row {% if host.analyzed %}analyzed-host{% endif %}" data-ip="{{ host.ip }}">
|
|
<td><a href="/hosts/{{ host.ip }}" class="host-link">{{ host.ip }}</a></td>
|
|
<td>
|
|
{% if !host.hostname.is_empty() %}{{ host.hostname }}{% endif %}
|
|
{% if !host.ad_domain.is_empty() %}<small class="ad-domain">({{ host.ad_domain }})</small>{% endif %}
|
|
{% if host.hostname.is_empty() && host.ad_domain.is_empty() %}<span class="no-data">-</span>{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if host.ports_count > 0 %}
|
|
<span class="port-count">{{ host.ports_count }} ports</span>
|
|
{% else %}
|
|
<span class="no-data">No ports</span>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if host.tags_with_source.len() > 0 %}
|
|
<div class="tags">
|
|
{% for tag in host.tags_with_source %}
|
|
{% if loop.index0 % 3 == 0 %}<div class="tag-row">{% endif %}
|
|
<span class="tag tag-{{ tag.source }}">{{ tag.name }}</span>
|
|
{% if loop.index0 % 3 == 2 || loop.last %}</div>{% endif %}
|
|
{% endfor %}
|
|
</div>
|
|
{% else %}
|
|
<span class="no-data">No tags</span>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if host.http_services_count > 0 %}
|
|
<span class="service-count">{{ host.http_services_count }}</span>
|
|
{% else %}
|
|
<span class="no-data">-</span>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
<div class="status-indicators">
|
|
<span class="status-indicator {% if host.ports_count > 0 %}complete{% else %}incomplete{% endif %}" title="Port Discovery">P</span>
|
|
<span class="status-indicator {% if host.service_scan_complete %}complete{% else %}incomplete{% endif %}" title="Service Detection">S</span>
|
|
<span class="status-indicator {% if host.http_discovery_complete %}complete{% else %}incomplete{% endif %}" title="HTTP Services">H</span>
|
|
<span class="status-indicator {% if host.screenshots_complete %}complete{% else %}incomplete{% endif %}" title="Screenshots">SC</span>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<div class="analysis-status-container">
|
|
{% if host.analyzed %}
|
|
<div class="analysis-complete" onclick="toggleAnalysisStatus('{{ host.ip }}', false)">
|
|
<span class="analysis-text">Analyzed (undo)</span>
|
|
</div>
|
|
{% else if host.full_scan_complete && host.service_scan_complete && host.http_discovery_complete && host.screenshots_complete %}
|
|
<div class="analysis-pending" onclick="toggleAnalysisStatus('{{ host.ip }}', true)">
|
|
<span class="analysis-text">Mark Analyzed</span>
|
|
</div>
|
|
{% else %}
|
|
<div class="analysis-not-ready">
|
|
<span class="analysis-text">In Progress</span>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<div class="interesting-status-container">
|
|
{% if host.interesting %}
|
|
<div class="interesting-marked" onclick="toggleInterestingStatus('{{ host.ip }}', false)">
|
|
<span class="interesting-text">Bookmarked</span>
|
|
</div>
|
|
{% else %}
|
|
<div class="interesting-unmarked" onclick="toggleInterestingStatus('{{ host.ip }}', true)">
|
|
<span class="interesting-text">Bookmark</span>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</td>
|
|
<td><a href="/hosts/{{ host.ip }}" class="btn btn-primary">Details</a></td>
|
|
</tr>
|
|
{% endfor %}
|