const paymentConfig = {
hostedForm: {
global: {
color: "#FF0000",
fontSize: "16px",
fontFamily: "Arial, sans-serif"
}
}
};
function handlePaymentMethodSelect(paymentMethod) {
const form = document.getElementById("form");
form.innerHTML = "";
if (paymentMethod.disabled.value) {
const disabledReason = paymentMethod.disabled.value;
form.innerHTML = `<p>This payment method is currently unavailable: ${disabledReason.code}</p>`;
return;
}
const partnerUI = paymentMethod.getPaymentElement(paymentConfig);
try {
partnerUI.appendTo(form);
} catch (error) {
if (error.code === 'METHOD_DISABLED') {
form.innerHTML = `<p>This payment method is currently unavailable.</p>`;
} else {
console.error('Failed to render payment method:', error);
}
}
}
function displayPaymentMethods(methods) {
const ul = document.getElementById("methods");
ul.innerHTML = "";
methods.forEach((pm) => {
const li = document.createElement("li");
li.textContent = `${pm.partner} - ${pm.method}`;
li.addEventListener("click", () => handlePaymentMethodSelect(pm));
ul.appendChild(li);
});
}