scss:
html, body {
font-family: sans-serif;
text-align: center;
}
form {
margin: auto;
max-width: 40em;
fieldset {
max-width: 20em;
margin: 2em auto;
label {
display: block;
}
}
button {
display: block;
width: 10em;
margin: auto;
}
}
.error {
color: red;
max-width: 40em;
margin: 1em auto;
}
h1 Activate New Account
- if error
p.error
' Your bank declined the transaction.
' Often this happens when a person's credit card is a US card
' that does not support international transactions, as JMP is
' not based in the USA, though we do support transactions in USD.
p.error
' If you were trying a prepaid card, you may wish to use
a href="https://privacy.com/" Privacy.com
| instead, as they do support international transactions.
form method="post" action=""
#braintree
| Unfortunately, our credit card processor requires JavaScript.
fieldset
legend Pay for 5 months of service
label
' $14.95 USD
input type="radio" name="plan_name" value="usd_beta_unlimited-v20210223" required="required"
label
' $17.95 CAD
input type="radio" name="plan_name" value="cad_beta_unlimited-v20210223" required="required"
input type="hidden" name="customer_id" value=customer_id
input type="hidden" name="braintree_nonce"
script src="https://js.braintreegateway.com/web/dropin/1.26.0/js/dropin.min.js"
javascript:
document.querySelector("#braintree").innerHTML = "";
var button = document.createElement("button");
button.innerHTML = "Pay Now";
document.querySelector("form").appendChild(button);
braintree.dropin.create({
authorization: #{{token.to_json}},
container: "#braintree",
vaultManager: false
}, function (createErr, instance) {
if(createErr) console.log(createErr);
document.querySelector("form").addEventListener("submit", function(e) {
e.preventDefault();
instance.requestPaymentMethod(function(err, payload) {
if(err) {
console.log(err);
instance._mainView.showSheetError();
} else {
e.target.braintree_nonce.value = payload.nonce;
e.target.submit();
}
});
});
});