diff --git a/webui/assets/script.js b/webui/assets/script.js index fa25768..3aa66d5 100644 --- a/webui/assets/script.js +++ b/webui/assets/script.js @@ -5,8 +5,34 @@ document.addEventListener("DOMContentLoaded", function () { initModeHandler(); loadWorkspaces(); checkScanStatus(); + loadVersion(); }); +// Load Git Version Info +async function loadVersion() { + const versionDisplay = document.getElementById("version-display"); + if (!versionDisplay) return; + + try { + const response = await fetch("version.php"); + const data = await response.json(); + + if (data.commit) { + versionDisplay.innerHTML = ` + + ${data.branch || 'main'} + + + #${data.commit} + + ${data.age} + `; + } + } catch (error) { + console.error("Failed to load version:", error); + } +} + // Tab Navigation function initTabs() { const tabs = document.querySelectorAll(".tab"); diff --git a/webui/index.php b/webui/index.php index 5847925..cbbdf69 100644 --- a/webui/index.php +++ b/webui/index.php @@ -24,11 +24,16 @@ -
- - - - +
+
+ + + + +
+
+ +
diff --git a/webui/version.php b/webui/version.php new file mode 100644 index 0000000..75c27c2 --- /dev/null +++ b/webui/version.php @@ -0,0 +1,55 @@ +/dev/null")); +$fullHash = trim(shell_exec("cd $gitDir && git rev-parse HEAD 2>/dev/null")); + +// Get commit date +$commitDate = trim(shell_exec("cd $gitDir && git log -1 --format=%ci 2>/dev/null")); +$commitTimestamp = strtotime($commitDate); + +// Calculate age +$age = ''; +if ($commitTimestamp) { + $diff = time() - $commitTimestamp; + + if ($diff < 60) { + $age = $diff . ' seconds ago'; + } elseif ($diff < 3600) { + $mins = floor($diff / 60); + $age = $mins . ' minute' . ($mins > 1 ? 's' : '') . ' ago'; + } elseif ($diff < 86400) { + $hours = floor($diff / 3600); + $age = $hours . ' hour' . ($hours > 1 ? 's' : '') . ' ago'; + } elseif ($diff < 604800) { + $days = floor($diff / 86400); + $age = $days . ' day' . ($days > 1 ? 's' : '') . ' ago'; + } elseif ($diff < 2592000) { + $weeks = floor($diff / 604800); + $age = $weeks . ' week' . ($weeks > 1 ? 's' : '') . ' ago'; + } else { + $months = floor($diff / 2592000); + $age = $months . ' month' . ($months > 1 ? 's' : '') . ' ago'; + } +} + +// Get branch +$branch = trim(shell_exec("cd $gitDir && git rev-parse --abbrev-ref HEAD 2>/dev/null")); + +echo json_encode([ + 'commit' => $commitHash, + 'fullCommit' => $fullHash, + 'branch' => $branch, + 'date' => $commitDate, + 'age' => $age, + 'timestamp' => $commitTimestamp +]);