73 lines
2.1 KiB
HTML
73 lines
2.1 KiB
HTML
{% extends 'layouts/message.html' %}
|
|
|
|
{% block head_scripts %}
|
|
<script type="text/javascript">
|
|
var appendField = function(form, key, value) {
|
|
var input = document.createElement('input');
|
|
input.setAttribute('name', key);
|
|
input.setAttribute('value', value);
|
|
input.setAttribute('style', 'display:none');
|
|
form.appendChild(input);
|
|
}
|
|
|
|
var success = function(response) {
|
|
var form = document.querySelector('#passthrough');
|
|
|
|
//handles the case where user has a button named 'submit'
|
|
document.createElement('form').submit.call(form);
|
|
};
|
|
|
|
var onloadCallback = function() {
|
|
var form = document.querySelector('#passthrough');
|
|
var data = {{ data|tojson|safe }};
|
|
var keys = {{ sorted_keys|tojson|safe }};
|
|
for (var i = 0; i < keys.length; i++) {
|
|
var key = keys[i]
|
|
if (data.hasOwnProperty(key)) {
|
|
appendField(form, key, data[key])
|
|
delete data[key];
|
|
}
|
|
}
|
|
for (var key in data) {
|
|
if (data.hasOwnProperty(key)) {
|
|
appendField(form, key, data[key])
|
|
}
|
|
}
|
|
|
|
grecaptcha.render('recaptcha', {
|
|
'sitekey' : {{ config.RECAPTCHA_KEY|tojson|safe }},
|
|
'callback' : success,
|
|
'size': window.innerWidth < 400 ? 'compact' : 'normal'
|
|
});
|
|
};
|
|
</script>
|
|
{% endblock head_scripts %}
|
|
|
|
{% block base %}
|
|
<div class="container narrow card">
|
|
<div class="container" id="header">
|
|
<div class="col-1-1 header success">
|
|
<i class="ion ion-email"></i>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="container">
|
|
<div class="col-1-1">
|
|
<h1>Almost there</h1>
|
|
<p>Please help us fight spam by following the directions below:</p>
|
|
|
|
<form action="{{ action }}" method="POST" id="passthrough">
|
|
<div id="recaptcha" style="text-align:center; display:inline-block"></div>
|
|
</form>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock base %}
|
|
|
|
{% block tail_scripts %}
|
|
<script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit"
|
|
async defer>
|
|
</script>
|
|
{% endblock tail_scripts %}
|