mirror of
https://github.com/retspen/webvirtcloud
synced 2026-11-09 11:46:49 +00:00
Twenty tables had no .table-responsive wrapper, so on a phone the user list, compute list, VM lists, network and network filter pages scrolled sideways as a whole. Each table now scrolls inside its box, as the other ten already did. The page test walks the network page too, and checks that every table on every page has the wrapper. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
72 lines
3.4 KiB
HTML
72 lines
3.4 KiB
HTML
{% extends "base.html" %}
|
|
{% load i18n %}
|
|
{% load static %}
|
|
{% load common_tags %}
|
|
{% load bootstrap_icons %}
|
|
{% block title %}{% trans "Computes" %}{% endblock %}
|
|
{% block content %}
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
{% include 'create_comp_block.html' %}
|
|
{% include 'search_block.html' %}
|
|
<h3 class="page-header">{% trans "Computes" %}</h3>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
{% if not computes %}
|
|
<div class="col-lg-12">
|
|
<div class="alert alert-warning shadow-sm">
|
|
{% bs_icon 'exclamation-triangle'%} <strong>{% trans "Warning" %}:</strong> {% trans "You don't have any computes" %}
|
|
</div>
|
|
</div>
|
|
{% else %}
|
|
<div class="col-lg-12">
|
|
<div class="table-responsive">
|
|
<table class="table table-striped table-hover sortable-theme-bootstrap" data-sortable>
|
|
<thead>
|
|
<tr>
|
|
<th span="col" class="col-sm-3">{% trans "Name" %}</th>
|
|
<th span="col" class="col-sm-2">{% trans "Status" %}</th>
|
|
<th span="col" class="col-sm-5">{% trans "Details" %}</th>
|
|
<th span="col" class="col-sm-2 text-center">{% trans "Actions" %}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="searchable">
|
|
{% for compute in computes %}
|
|
<tr>
|
|
<td class="col-sm-3">
|
|
{{ compute.name }}
|
|
</td>
|
|
<td class="col-sm-2">
|
|
{% if compute.status is True %}{% trans "Connected" %}{% else %}{% trans "Not Connected" %}
|
|
<br><small class="text-danger">{{ compute.connection_error }}</small>
|
|
{% endif %}
|
|
</td>
|
|
<td class="col-sm-5">
|
|
{{ compute.details|default:"" }}
|
|
</td>
|
|
<td class="col-sm-2">
|
|
<div class="float-end btn-group">
|
|
{% if compute.status is True %}
|
|
<a class="btn btn-success" title="{%trans "Overview" %}" href="{% url 'overview' compute.id %}">{% bs_icon 'eye-fill' %}</a>
|
|
{% else %}
|
|
<a class="btn btn-light" title="{%trans "Overview" %}">{% bs_icon 'eye' %}</a>
|
|
{% endif %}
|
|
<a class="btn btn-primary" title="{%trans "Edit" %}" href="{% url 'compute_update' compute.id %}">{% bs_icon 'pencil-fill' %}</a>
|
|
<a class="btn btn-danger" title="{%trans "Delete" %}" href="{% url 'compute_delete' compute.id %}">{% bs_icon 'x-circle-fill' %}</a>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% endblock content %}
|
|
|
|
{% block script %}
|
|
<script src="{% static 'js/sortable.min.js' %}"></script>
|
|
<script src="{% static 'js/filter-table.js' %}"></script>
|
|
{% endblock script %}
|