Hidden buttons on mobile with toggle to show descriptions
This commit is contained in:
+22
-5
@@ -12,21 +12,22 @@
|
|||||||
<body class="bg-gray-900 text-gray-100 min-h-screen flex flex-col">
|
<body class="bg-gray-900 text-gray-100 min-h-screen flex flex-col">
|
||||||
{% include 'header.html' %}
|
{% include 'header.html' %}
|
||||||
<div class="flex-1 flex items-center justify-center mx-4">
|
<div class="flex-1 flex items-center justify-center mx-4">
|
||||||
<div class="container py-8 max-w-3/4 pt-20">
|
<div class="container py-8 w-full sm:max-w-3/4 pt-20">
|
||||||
<div class="flex items-center mb-6 relative">
|
<div class="flex items-center mb-6 relative">
|
||||||
<a href="javascript:window.history.back()" class="absolute left-0 bg-gradient-to-r from-gray-500 to-gray-600 hover:from-gray-600 hover:to-gray-500 text-white flex items-center justify-center rounded-full w-11 h-11"><i class="fas fa-arrow-left"></i></a>
|
<a href="javascript:window.history.back()" class="hidden sm:flex absolute left-0 bg-gradient-to-r from-gray-500 to-gray-600 hover:from-gray-600 hover:to-gray-500 text-white items-center justify-center rounded-full w-11 h-11"><i class="fas fa-arrow-left"></i></a>
|
||||||
<h1 class="text-3xl font-bold text-center w-full">{{ subnet.name }} ({{ subnet.cidr }})</h1>
|
<h1 class="text-3xl font-bold text-center w-full">{{ subnet.name }} ({{ subnet.cidr }})</h1>
|
||||||
<button type="button" id="export-csv" class="absolute right-0 bg-gradient-to-r from-gray-500 to-gray-600 hover:from-gray-600 hover:to-gray-500 text-white flex items-center justify-center rounded-full w-11 h-11 export-csv-btn" title="Export as CSV" data-subnet-id="{{ subnet.id }}">
|
<button type="button" id="export-csv" class="hidden sm:flex absolute right-0 bg-gradient-to-r from-gray-500 to-gray-600 hover:from-gray-600 hover:to-gray-500 text-white items-center justify-center rounded-full w-11 h-11 export-csv-btn" title="Export as CSV" data-subnet-id="{{ subnet.id }}">
|
||||||
<i class="fas fa-file-csv fa-lg"></i>
|
<i class="fas fa-file-csv fa-lg"></i>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
<button id="toggle-desc" class="sm:hidden bg-gradient-to-r from-gray-500 to-gray-600 hover:from-gray-600 hover:to-gray-500 text-white px-4 py-2 rounded-lg mb-4 w-full">Show Descriptions</button>
|
||||||
<form action="" method="POST">
|
<form action="" method="POST">
|
||||||
<table class="table-auto w-full mb-6">
|
<table class="table-auto w-full mb-6">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="text-center text-gray-400">IP Address</th>
|
<th class="text-center text-gray-400">IP Address</th>
|
||||||
<th class="text-center text-gray-400">Hostname</th>
|
<th class="text-center text-gray-400">Hostname</th>
|
||||||
<th class="text-center text-gray-400">Description</th>
|
<th class="text-center text-gray-400 hidden sm:table-cell" id="desc-col-header">Description</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody class="divide-y divide-gray-700">
|
<tbody class="divide-y divide-gray-700">
|
||||||
@@ -42,7 +43,7 @@
|
|||||||
{{ '' }}
|
{{ '' }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td class="text-white text-left align-top">
|
<td class="text-white text-left align-top hidden sm:table-cell desc-col">
|
||||||
<textarea readonly rows="1" class="bg-gray-800 text-gray-100 border border-gray-600 rounded w-full resize-y cursor-pointer p-2">{{ ip[4].split('\n')[0] if ip[4] else '' }}</textarea>
|
<textarea readonly rows="1" class="bg-gray-800 text-gray-100 border border-gray-600 rounded w-full resize-y cursor-pointer p-2">{{ ip[4].split('\n')[0] if ip[4] else '' }}</textarea>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -53,5 +54,21 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script src="/static/js/export_csv.js"></script>
|
<script src="/static/js/export_csv.js"></script>
|
||||||
|
<script>
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
const toggleBtn = document.getElementById('toggle-desc');
|
||||||
|
const descCols = document.querySelectorAll('.desc-col');
|
||||||
|
const descHeader = document.getElementById('desc-col-header');
|
||||||
|
let shown = false;
|
||||||
|
if (toggleBtn) {
|
||||||
|
toggleBtn.addEventListener('click', function() {
|
||||||
|
shown = !shown;
|
||||||
|
descCols.forEach(col => col.classList.toggle('hidden', !shown));
|
||||||
|
if (descHeader) descHeader.classList.toggle('hidden', !shown);
|
||||||
|
toggleBtn.textContent = shown ? 'Hide Descriptions' : 'Show Descriptions';
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
Reference in New Issue
Block a user