diff --git a/templates/pages/repo.html b/templates/pages/repo.html
index 669754b..daefca7 100644
--- a/templates/pages/repo.html
+++ b/templates/pages/repo.html
@@ -169,6 +169,7 @@
if (refsResp.ok) {
currentRefs = await refsResp.json();
populateRefSelects(currentRefs);
+ updateButtonLinks();
}
// Init graph with click-to-select
@@ -305,6 +306,8 @@
showTab('diff');
loadDiff();
}
+
+ updateButtonLinks();
}
// Ensure a select has an option with given value
@@ -331,12 +334,25 @@
if (baseHash || headHash) {
GitGraph.setSelection(baseHash || null, headHash || null);
}
+ updateButtonLinks();
};
baseSelect.addEventListener('change', sync);
headSelect.addEventListener('change', sync);
}
+ function updateButtonLinks() {
+ const base = document.getElementById('select-base').value;
+ const head = document.getElementById('select-head').value;
+ const params = new URLSearchParams();
+ if (base) params.set('base', base);
+ if (head) params.set('head', head);
+ const qs = params.toString();
+ const suffix = qs ? '?' + qs : '';
+ document.getElementById('btn-generate').href = `/repo/${repoId}/generate${suffix}`;
+ document.getElementById('btn-review').href = `/repo/${repoId}/review${suffix}`;
+ }
+
function showTab(tab) {
document.getElementById('panel-graph').classList.toggle('hidden', tab !== 'graph');
document.getElementById('panel-diff').classList.toggle('hidden', tab !== 'diff');