chartboard/app/Views/datasource/show.php
2026-03-30 09:51:33 +05:30

57 lines
2.1 KiB
PHP

<?= $this->extend('layouts/main') ?>
<?= $this->section('content') ?>
<header class="cb-page-header cb-page-header--center">
<div>
<h1 class="cb-page-title">Data Source Proof</h1>
<p class="cb-page-subtitle mb-0">Connection details and proof data for this source.</p>
</div>
<div class="d-flex flex-wrap gap-2 justify-content-end">
<button
type="button"
class="btn btn-outline-primary"
data-proof-refresh-btn
data-proof-url="<?= base_url('datasource/view/' . (int) $dataSource['id'] . '/proof') ?>"
>
Refresh Proof
</button>
<a href="<?= base_url('datasource') ?>" class="btn cb-settings-back">Back</a>
</div>
</header>
<div class="cb-page-body">
<div class="card border-0 shadow-sm mb-3">
<div class="card-body">
<div class="row g-3">
<div class="col-md-4">
<div class="small text-muted">Name</div>
<div class="fw-semibold"><?= esc($dataSource['name']) ?></div>
</div>
<div class="col-md-4">
<div class="small text-muted">Type</div>
<div class="text-capitalize"><?= esc(str_replace('_', ' ', (string) $dataSource['type'])) ?></div>
</div>
<div class="col-md-4">
<div class="small text-muted">Status</div>
<?php
$status = (string) ($dataSource['status'] ?? 'untested');
$statusClass = match ($status) {
'connected' => 'bg-success-subtle text-success',
'failed' => 'bg-danger-subtle text-danger',
default => 'bg-secondary-subtle text-secondary',
};
?>
<span class="badge rounded-pill <?= esc($statusClass) ?>"><?= esc(ucfirst($status)) ?></span>
</div>
</div>
</div>
</div>
<div class="card border-0 shadow-sm">
<div class="card-body" data-proof-content>
<?= $this->include('datasource/_proof_content') ?>
</div>
</div>
</div>
<?= $this->endSection() ?>