refactor: remove disk shrink from frontend — user handles resizing manually if needed
This commit is contained in:
parent
446f3ec979
commit
550b2ff3a7
2 changed files with 5 additions and 49 deletions
|
|
@ -88,7 +88,6 @@
|
||||||
<td>Filename</td>
|
<td>Filename</td>
|
||||||
<td style="width:60px;">Format</td>
|
<td style="width:60px;">Format</td>
|
||||||
<td style="width:80px;">Size</td>
|
<td style="width:80px;">Size</td>
|
||||||
<td style="width:140px;">Resize</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="disks-tbody">
|
<tbody id="disks-tbody">
|
||||||
|
|
@ -98,17 +97,6 @@
|
||||||
<td>{{ d.filename }}</td>
|
<td>{{ d.filename }}</td>
|
||||||
<td>{{ d.format }}</td>
|
<td>{{ d.format }}</td>
|
||||||
<td>{{ d.size_gb }} GB</td>
|
<td>{{ d.size_gb }} GB</td>
|
||||||
<td>
|
|
||||||
<label style="display:flex;align-items:center;gap:0.3rem;font-size:0.72rem;white-space:nowrap;">
|
|
||||||
{% if ovf_path %}
|
|
||||||
<span class="pve-dim">handled by OVF</span>
|
|
||||||
{% else %}
|
|
||||||
<input type="checkbox" class="disk-shrink-cb" onchange="toggleShrink(this, {{ loop.index0 }})">
|
|
||||||
to <input type="number" class="pve-input disk-shrink-size" id="shrink-{{ loop.index0 }}"
|
|
||||||
value="{{ d.size_gb }}" disabled style="width:70px;padding:0.2rem 0.3rem;font-size:0.72rem;"> GB
|
|
||||||
{% endif %}
|
|
||||||
</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
@ -129,12 +117,6 @@ var _analysisId = '{{ analysis_id }}';
|
||||||
var _sessionId = '{{ session_id }}';
|
var _sessionId = '{{ session_id }}';
|
||||||
var _ovfPath = '{{ ovf_path or "" }}';
|
var _ovfPath = '{{ ovf_path or "" }}';
|
||||||
|
|
||||||
function toggleShrink(cb, idx) {
|
|
||||||
var inp = document.getElementById('shrink-' + idx);
|
|
||||||
if (cb.checked) { inp.removeAttribute('disabled'); inp.focus(); }
|
|
||||||
else { inp.setAttribute('disabled', ''); }
|
|
||||||
}
|
|
||||||
|
|
||||||
(function(){
|
(function(){
|
||||||
var ss = document.getElementById('config-storage');
|
var ss = document.getElementById('config-storage');
|
||||||
var sc = document.getElementById('config-storage-custom');
|
var sc = document.getElementById('config-storage-custom');
|
||||||
|
|
@ -179,27 +161,13 @@ async function submitConfig() {
|
||||||
};
|
};
|
||||||
if (_ovfPath) payload.ovf_path = _ovfPath;
|
if (_ovfPath) payload.ovf_path = _ovfPath;
|
||||||
|
|
||||||
var shrinkCbs = document.getElementsByClassName('disk-shrink-cb');
|
|
||||||
var diskFiles = [{% for d in disks %}{{ d|tojson }},{% endfor %}];
|
var diskFiles = [{% for d in disks %}{{ d|tojson }},{% endfor %}];
|
||||||
|
for (var i = 0; i < diskFiles.length; i++) {
|
||||||
if (shrinkCbs.length === 0 && diskFiles.length > 0) {
|
|
||||||
payload.boot_disk = { disk_type: 'image_file', source_filename: diskFiles[0].filename, format: diskFiles[0].format };
|
|
||||||
for (var k = 1; k < diskFiles.length; k++) {
|
|
||||||
payload.additional_disks.push({ disk_type: 'image_file', source_filename: diskFiles[k].filename, format: diskFiles[k].format });
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
for (var i = 0; i < shrinkCbs.length; i++) {
|
|
||||||
var d = diskFiles[i];
|
var d = diskFiles[i];
|
||||||
var spec = { disk_type: 'image_file', source_filename: d.filename, format: d.format };
|
var spec = { disk_type: 'image_file', source_filename: d.filename, format: d.format };
|
||||||
if (shrinkCbs[i].checked) {
|
|
||||||
var si = document.getElementById('shrink-' + i);
|
|
||||||
var sz = si ? parseInt(si.value) || null : null;
|
|
||||||
if (sz) spec.target_disk_size_gb = sz;
|
|
||||||
}
|
|
||||||
if (i === bootIdx) payload.boot_disk = spec;
|
if (i === bootIdx) payload.boot_disk = spec;
|
||||||
else payload.additional_disks.push(spec);
|
else payload.additional_disks.push(spec);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
var btn = document.getElementById('config-submit-btn');
|
var btn = document.getElementById('config-submit-btn');
|
||||||
var status = document.getElementById('config-submit-status');
|
var status = document.getElementById('config-submit-status');
|
||||||
|
|
|
||||||
|
|
@ -150,18 +150,6 @@ function showError(msg) {
|
||||||
if (el) el.innerHTML += '<div class="pve-alert pve-alert-error" style="margin-top:0.5rem;">' + msg + '</div>';
|
if (el) el.innerHTML += '<div class="pve-alert pve-alert-error" style="margin-top:0.5rem;">' + msg + '</div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
function toggleDiskResize() {
|
|
||||||
var cb = document.getElementById('enable-resize');
|
|
||||||
var inp = document.getElementById('target-disk-size');
|
|
||||||
if (!cb || !inp) return;
|
|
||||||
if (cb.checked) {
|
|
||||||
inp.removeAttribute('disabled');
|
|
||||||
inp.focus();
|
|
||||||
} else {
|
|
||||||
inp.setAttribute('disabled', '');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }
|
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }
|
||||||
|
|
||||||
async function startSession(e) {
|
async function startSession(e) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue