assdasd
This commit is contained in:
@@ -142,33 +142,39 @@
|
|||||||
const time = card.querySelector('[data-update-time]');
|
const time = card.querySelector('[data-update-time]');
|
||||||
if (upd) {
|
if (upd) {
|
||||||
upd.classList.remove('badge-warn', 'badge-ok', 'badge-error');
|
upd.classList.remove('badge-warn', 'badge-ok', 'badge-error');
|
||||||
if (data.updates && typeof data.updates.count === 'number') {
|
if (data.updates && data.updates.error) {
|
||||||
|
upd.textContent = 'Updates: Fehler';
|
||||||
|
upd.classList.add('badge-error');
|
||||||
|
upd.setAttribute('title', data.updates.error);
|
||||||
|
} else if (data.updates && typeof data.updates.count === 'number') {
|
||||||
upd.textContent = `Updates: ${data.updates.count}`;
|
upd.textContent = `Updates: ${data.updates.count}`;
|
||||||
upd.classList.toggle('badge-warn', data.updates.count > 0);
|
upd.classList.toggle('badge-warn', data.updates.count > 0);
|
||||||
upd.classList.toggle('badge-ok', data.updates.count === 0);
|
upd.classList.toggle('badge-ok', data.updates.count === 0);
|
||||||
if (data.updates.preview) {
|
if (data.updates.preview || data.updates.raw) {
|
||||||
upd.setAttribute('title', data.updates.preview);
|
upd.setAttribute('title', data.updates.preview || data.updates.raw);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
upd.textContent = 'Updates: Fehler';
|
upd.textContent = 'Updates: –';
|
||||||
upd.classList.add('badge-error');
|
if (data.updates && (data.updates.preview || data.updates.raw)) {
|
||||||
if (data.updates && data.updates.error) {
|
upd.setAttribute('title', data.updates.preview || data.updates.raw);
|
||||||
upd.setAttribute('title', data.updates.error);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (upg) {
|
if (upg) {
|
||||||
upg.classList.remove('badge-warn', 'badge-ok', 'badge-error');
|
upg.classList.remove('badge-warn', 'badge-ok', 'badge-error');
|
||||||
if (data.os && typeof data.os.available === 'boolean') {
|
if (data.os && data.os.error) {
|
||||||
|
upg.textContent = 'OS: Fehler';
|
||||||
|
upg.classList.add('badge-error');
|
||||||
|
upg.setAttribute('title', data.os.error);
|
||||||
|
} else if (data.os && typeof data.os.available === 'boolean') {
|
||||||
upg.textContent = data.os.available ? 'OS: Upgrade verfügbar' : 'OS: OK';
|
upg.textContent = data.os.available ? 'OS: Upgrade verfügbar' : 'OS: OK';
|
||||||
upg.classList.toggle('badge-warn', data.os.available);
|
upg.classList.toggle('badge-warn', data.os.available);
|
||||||
upg.classList.toggle('badge-ok', !data.os.available);
|
upg.classList.toggle('badge-ok', !data.os.available);
|
||||||
if (data.os.raw) upg.setAttribute('title', data.os.raw);
|
if (data.os.raw) upg.setAttribute('title', data.os.raw);
|
||||||
} else {
|
} else {
|
||||||
upg.textContent = 'OS: Fehler';
|
upg.textContent = 'OS: –';
|
||||||
upg.classList.add('badge-error');
|
if (data.os && data.os.raw) {
|
||||||
if (data.os && data.os.error) {
|
upg.setAttribute('title', data.os.raw);
|
||||||
upg.setAttribute('title', data.os.error);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -234,7 +240,11 @@
|
|||||||
payload.updates.error = updateError;
|
payload.updates.error = updateError;
|
||||||
} else if (updateCount !== undefined && updateCount !== '') {
|
} else if (updateCount !== undefined && updateCount !== '') {
|
||||||
payload.updates.count = Number(updateCount);
|
payload.updates.count = Number(updateCount);
|
||||||
payload.updates.preview = '';
|
payload.updates.preview = card.dataset.updatePreview || '';
|
||||||
|
payload.updates.raw = card.dataset.updatePreview || '';
|
||||||
|
} else {
|
||||||
|
payload.updates.preview = card.dataset.updatePreview || '';
|
||||||
|
payload.updates.raw = card.dataset.updatePreview || '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (upgradeError) {
|
if (upgradeError) {
|
||||||
@@ -242,6 +252,8 @@
|
|||||||
} else if (upgradeAvailable !== undefined && upgradeAvailable !== '') {
|
} else if (upgradeAvailable !== undefined && upgradeAvailable !== '') {
|
||||||
payload.os.available = upgradeAvailable === '1' || upgradeAvailable === 'true';
|
payload.os.available = upgradeAvailable === '1' || upgradeAvailable === 'true';
|
||||||
payload.os.raw = upgradeRaw;
|
payload.os.raw = upgradeRaw;
|
||||||
|
} else {
|
||||||
|
payload.os.raw = upgradeRaw;
|
||||||
}
|
}
|
||||||
|
|
||||||
setUpdateUi(card, payload);
|
setUpdateUi(card, payload);
|
||||||
|
|||||||
@@ -64,6 +64,10 @@ SH;
|
|||||||
$updateCount = (int)$m[1];
|
$updateCount = (int)$m[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$updatePreview = trim($updOutStr);
|
||||||
|
if (strlen($updatePreview) > 1200) {
|
||||||
|
$updatePreview = substr($updatePreview, 0, 1200);
|
||||||
|
}
|
||||||
|
|
||||||
[$upgExit, $upgOut, $upgErr] = runSshCommandCapture($host, $upgradeCmd, $strictHostKey, 25);
|
[$upgExit, $upgOut, $upgErr] = runSshCommandCapture($host, $upgradeCmd, $strictHostKey, 25);
|
||||||
$upgOutStr = (string)$upgOut;
|
$upgOutStr = (string)$upgOut;
|
||||||
@@ -108,6 +112,7 @@ SH;
|
|||||||
'updates' => [
|
'updates' => [
|
||||||
'count' => $updateCount,
|
'count' => $updateCount,
|
||||||
'preview' => $updatePreview,
|
'preview' => $updatePreview,
|
||||||
|
'raw' => $updatePreview,
|
||||||
'error' => $updExit === 0 && !$updateErr ? '' : trim($updErrStr ?: $updOutStr),
|
'error' => $updExit === 0 && !$updateErr ? '' : trim($updErrStr ?: $updOutStr),
|
||||||
],
|
],
|
||||||
'os' => [
|
'os' => [
|
||||||
@@ -362,6 +367,7 @@ function hostAuthOk(array $host, bool $strictHostKey): bool
|
|||||||
data-update-checked="<?= e((string)($h['update_checked_at'] ?? '')) ?>"
|
data-update-checked="<?= e((string)($h['update_checked_at'] ?? '')) ?>"
|
||||||
data-update-count="<?= e((string)($h['update_count'] ?? '')) ?>"
|
data-update-count="<?= e((string)($h['update_count'] ?? '')) ?>"
|
||||||
data-update-error="<?= e((string)($h['update_error'] ?? '')) ?>"
|
data-update-error="<?= e((string)($h['update_error'] ?? '')) ?>"
|
||||||
|
data-update-preview="<?= e((string)($h['update_preview'] ?? '')) ?>"
|
||||||
data-upgrade-available="<?= e((string)($h['upgrade_available'] ?? '')) ?>"
|
data-upgrade-available="<?= e((string)($h['upgrade_available'] ?? '')) ?>"
|
||||||
data-upgrade-raw="<?= e((string)($h['upgrade_raw'] ?? '')) ?>"
|
data-upgrade-raw="<?= e((string)($h['upgrade_raw'] ?? '')) ?>"
|
||||||
data-upgrade-error="<?= e((string)($h['upgrade_error'] ?? '')) ?>">
|
data-upgrade-error="<?= e((string)($h['upgrade_error'] ?? '')) ?>">
|
||||||
|
|||||||
@@ -40,6 +40,10 @@ foreach ($hosts as $host) {
|
|||||||
$updateCount = (int)$m[1];
|
$updateCount = (int)$m[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$updatePreview = trim($updOutStr);
|
||||||
|
if (strlen($updatePreview) > 1200) {
|
||||||
|
$updatePreview = substr($updatePreview, 0, 1200);
|
||||||
|
}
|
||||||
|
|
||||||
[$upgExit, $upgOut, $upgErr] = runSshCommandCapture($host, $upgradeCmd, $strictHostKey, 25);
|
[$upgExit, $upgOut, $upgErr] = runSshCommandCapture($host, $upgradeCmd, $strictHostKey, 25);
|
||||||
$upgOutStr = (string)$upgOut;
|
$upgOutStr = (string)$upgOut;
|
||||||
|
|||||||
Reference in New Issue
Block a user