Less naive cookie processing

Remove some unnecessary whitespace
This commit is contained in:
Sage Vaillancourt 2021-07-31 22:27:51 -04:00
parent 7cb9591acf
commit e52a0e9d28
2 changed files with 14 additions and 48 deletions

View File

@ -1,12 +1,12 @@
{% macro render_field(field, extra="") %}
<dt>{{ field.label }}
<dd {{extra}}>{{ field(**kwargs)|safe }}
{% if field.errors %}
<dt>{{ field.label }}
<dd {{extra}}>{{ field(**kwargs)|safe }}
{% if field.errors %}
<ul class=errors>
{% for error in field.errors %}
<li>{{ error }}</li>
{% endfor %}
</ul>
{% endif %}
</dd>
{% endif %}
</dd>
{% endmacro %}

View File

@ -5,46 +5,18 @@
{{ url_for('static', filename='styles_min.css') }}">
<meta name="viewport" content="user-scalable=no">
<script type="text/javascript">
function getCookie(cname) {
let name = cname + "=";
let decodedCookie = decodeURIComponent(document.cookie);
let ca = decodedCookie.split(';');
for(let i = 0; i <ca.length; i++) {
let c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function init() {
{% if errors %}
window.scrollTo(0, document.body.scrollHeight);
{% endif %}
if (window.location.search.includes("reset=true")) {
window.history.pushState({},document.title,window.location.pathname);
return;
}
cookies = [
'username',
'company',
'jobandpronoun',
'skilltypes',
'myskills',
'closingtext',
'body',
]
for(let i = 0; i < cookies.length; i++) {
c = getCookie(cookies[i]);
if (c) {
document.getElementById(cookies[i]).value=c
}
}
decodeURIComponent(document.cookie).split(';').forEach(s => {
[id, v] = s.trim().split('=')
document.getElementById(id).value = v
})
}
window.onload = init;
</script>
@ -52,7 +24,6 @@
<body>
<h1>UnderCover</h1>
<h2>The secret cover letter generator</h2>
{% from "_formhelpers.html" import render_field %}
<form method=post>
<dl>
@ -64,15 +35,12 @@
{{ render_field(form.body, 'class=bigtext') }}
{{ render_field(form.closingtext) }}
</dl>
{% if errors %}
<div id=errors>
<h3>Your letter has errors.</h3>
<p>There is likely a typo in one of your variables (the {\blabla} bits).
<br>Make sure each is spelled correctly, and has the correct brackets on either
side</p>
<p class=errors>
{% for error in errors %}
{{ error }}<br>
@ -80,7 +48,6 @@
</p>
</div>
{% endif %}
<input class=submit type=submit value="Submit"
{% if errors %}
onclick="var e = document.getElementById('errors'); e.parentNode.removeChild(e);"
@ -88,5 +55,4 @@
>
</form>
</body>
</html>