crow setup
This commit is contained in:
@@ -1,82 +0,0 @@
|
||||
{% extends "bases/base.html" %}
|
||||
|
||||
{% block title %}404 - Not Found{% endblock %}
|
||||
{% block description %}The page you are looking for does not exist.{% endblock %}
|
||||
|
||||
{% block head %}
|
||||
<link rel="stylesheet" href="/static/css/404.css">
|
||||
<link rel="stylesheet" href="/static/css/cap.css">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<section>
|
||||
<h1>404</h1>
|
||||
<p>
|
||||
It seems like the thing you are looking for is not here :[
|
||||
<br><br>
|
||||
<span class="pcOnly">
|
||||
while you're here, why not play some snake?
|
||||
</span>
|
||||
<span class="mobileOnly">
|
||||
You can't play snake on mobile, sorry :(
|
||||
</span>
|
||||
</p>
|
||||
<div class="pcOnly" id="snakeContainer">
|
||||
<canvas id="snakeCanvas"></canvas>
|
||||
</div>
|
||||
</section>
|
||||
<section class="pcOnly flex-row">
|
||||
<section class="min-width">
|
||||
<h2>Submit score</h2>
|
||||
<form action="/snake/submit" method="POST" id="snakeForm">
|
||||
<input type="text" id="name" name="name" maxlength=15 minlength=3 placeholder="Your name" required>
|
||||
<cap-widget id="captcha" data-cap-api-endpoint="https://cap.alfieking.dev/{{ cap_key }}/"></cap-widget>
|
||||
<input type="hidden" id="score" name="score" value="0">
|
||||
<input type="hidden" id="game_token" name="game_token" value="{{ token}}">
|
||||
<button type="submit" id="submit">Submit</button>
|
||||
</form>
|
||||
</section>
|
||||
<section class="max-width" id="snakeLeaderboardSection">
|
||||
<h2>Leaderboard</h2>
|
||||
<ul id="snakeLeaderboard">
|
||||
{% for score in scores %}
|
||||
<li>
|
||||
<span>{{ score.position }}</span>
|
||||
<span>{{ score.name }}</span>
|
||||
<span>{{ score.score }}</span>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section class="max-width mobileOnly" id="snakeLeaderboardSection">
|
||||
<h2>Leaderboard</h2>
|
||||
<ul id="snakeLeaderboard">
|
||||
{% for score in scores %}
|
||||
<li>
|
||||
<span>{{ score.position }}</span>
|
||||
<span>{{ score.name }}</span>
|
||||
<span>{{ score.score }}</span>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</section>
|
||||
{% if error %}
|
||||
<dialog id="errorDialog">
|
||||
<h2>Error</h2>
|
||||
<p>{{ error }}</p>
|
||||
<button onclick="errorDialog.close()">Close</button>
|
||||
</dialog>
|
||||
<script>
|
||||
const errorDialog = document.getElementById('errorDialog');
|
||||
if (errorDialog) {
|
||||
errorDialog.showModal();
|
||||
}
|
||||
</script>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
{% block scripts %}
|
||||
<script src="/static/js/snake.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/@cap.js/widget"></script>
|
||||
{% endblock %}
|
Reference in New Issue
Block a user