Files
RustProxy/src/admin/web/vhosts/protocol.js
T
2026-10-13 21:29:57 +02:00

21 lines
1.1 KiB
JavaScript

function attachOriginProtocolDetails(main, protocol, url) {
const transportInfo = el("small", undefined, "fine vh-wide vh-origin-protocol-info");
const compatibility = el("small", undefined, "fine vh-wide vh-origin-protocol-warning");
compatibility.dataset.i18n = "vhProtocolCompatibilityWarning";
compatibility.textContent = t("vhProtocolCompatibilityWarning");
main.append(transportInfo, compatibility);
const explainProtocol = () => {
const https = /^https:\/\//i.test(url.value.trim());
const name = protocol.value === "http1" ? "vhProtocolHttp1Details" :
protocol.value === "auto" ? (https ? "vhProtocolAutoHttpsDetails" : "vhProtocolAutoHttpDetails") :
protocol.value === "http2" ? (https ? "vhProtocolLegacyHttp2HttpsDetails" : "vhProtocolLegacyHttp2HttpDetails") :
(https ? "vhProtocolH2HttpsDetails" : "vhProtocolH2HttpDetails");
transportInfo.dataset.i18n = name;
transportInfo.textContent = t(name);
compatibility.hidden = protocol.value !== "http2" || !https;
};
protocol.addEventListener("change", explainProtocol);
url.addEventListener("input", explainProtocol);
explainProtocol();
}