uff
This commit is contained in:
10
views/default.twig
Normal file
10
views/default.twig
Normal file
@ -0,0 +1,10 @@
|
||||
{% extends layout.twig %}
|
||||
|
||||
{% block title %}Willkommen auf fwtrash.de!{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<p>Wir sind stolz darauf, Ihnen eine Vielzahl von nützlichen Tools und Ressourcen für das Onlinespiel Freewar zur Verfügung zu stellen. Unser Ziel ist es, Ihnen das Spielen von Freewar zu erleichtern und Ihnen zu helfen, das Beste aus dem Spiel herauszuholen.</p>
|
||||
<p>Auf unserer Webseite finden Sie alles, von praktischen Rechnern und Simulatoren bis hin zu umfassenden Anleitungen und Strategieguides. Wir sind ständig bemüht, unser Angebot zu erweitern und zu verbessern, um Ihnen die bestmögliche Unterstützung zu bieten.</p>
|
||||
<p>Schauen Sie sich um und entdecken Sie alles, was fwtrash.de zu bieten hat. Wir hoffen, dass Sie viel Freude beim Stöbern und Nutzen unserer Tools haben werden.</p>
|
||||
<strong>Viel Spaß beim Erkunden und Happy Gaming!</strong>
|
||||
{% endblock %}
|
40
views/doppelklinge.twig
Normal file
40
views/doppelklinge.twig
Normal file
@ -0,0 +1,40 @@
|
||||
{% extends layout.twig %}
|
||||
|
||||
{% block title %}irgendwas mit Doppelklinge{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<form action="/doppelklinge" method="post">
|
||||
<p>Gesamten Mainframe von Position X: 80 Y: 126 einfügen (strg-a, strg-c):</p>
|
||||
<textarea name="progress" rows="4" cols="60">{{ $progress }}</textarea>
|
||||
<br />
|
||||
<input type="submit" value="abschnalzen" />
|
||||
</form>
|
||||
|
||||
{% if(isset($list)): %}
|
||||
<hr />
|
||||
<table class="table table-sm table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Aufgabe</th>
|
||||
<th>Fortschritt</th>
|
||||
<th>Ziel</th>
|
||||
<th>übrig</th>
|
||||
<th>Prozent</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for($i = 0; $i < count($list); $i++): %}
|
||||
<tr style="background-color: {{ $i >= 5 ? 'red' : 'white' }}">
|
||||
<td>{{ $list[$i]->task }}</td>
|
||||
<td>{{ number_format($list[$i]->act, 0, '', '.') }}</td>
|
||||
<td>{{ number_format($list[$i]->max, 0, '', '.') }}</td>
|
||||
<td>{{ number_format($list[$i]->left, 0, '', '.') }}</td>
|
||||
<td>{{ $list[$i]->percent }}</td>
|
||||
</tr>
|
||||
{% endfor; %}
|
||||
</tbody>
|
||||
</table>
|
||||
<p>insgesamt {{ $percent }}% erledigt (ø {{ $avg }}%).</p>
|
||||
<p>Stand: {{ $dt }}</p>
|
||||
{% endif; %}
|
||||
{% endblock %}
|
29
views/knochen.twig
Normal file
29
views/knochen.twig
Normal file
@ -0,0 +1,29 @@
|
||||
{% extends layout.twig %}
|
||||
|
||||
{% block title %}KnochenDB{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<p>von <a href="https://welt11.freewar.de/freewar/internal/fight.php?action=watchuser&act_user_id=6895" target="_blank">Phloks</a></p>
|
||||
|
||||
{% foreach($data['knochen'] as $key => $arr): %}
|
||||
<h2 class="h4">{{ $data['types'][$key] }}:</h2>
|
||||
{% foreach($arr as $row): %}
|
||||
<div class="NavFrame">
|
||||
<div class="NavHead">{{ $row->title }}</div>
|
||||
<div class="NavContent">
|
||||
<p><img class="img-fluid" src="/img/knochen/{{ $row->solution }}" alt="{{ $row->solution }}"></p>
|
||||
<div class="NavFrame">
|
||||
<div class="NavHead">Anfangsstellung</div>
|
||||
<div class="NavContent">
|
||||
{% if($row->origin): %}
|
||||
<p><img class="img-fluid" src="/img/knochen/{{ $row->origin }}" alt="{{ $row->origin }}"></p>
|
||||
{% else: %}
|
||||
<p>Nicht verfügbar</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endforeach %}
|
||||
{% endforeach %}
|
||||
{% endblock %}
|
53
views/layout.twig
Normal file
53
views/layout.twig
Normal file
@ -0,0 +1,53 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<base href="https://fwtrash.de/">
|
||||
<title>{% yield title %}</title>
|
||||
<link rel="stylesheet" type="text/css" href="./css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="./css/style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0 shadow">
|
||||
<a class="navbar-brand col-md-3 col-lg-2 me-0 px-3 fs-6" href="./">
|
||||
<img src="./img/logo-big.png" style="height: 38px"> fwtrash.de
|
||||
</a>
|
||||
<button class="navbar-toggler position-absolute d-md-none collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#sidebarMenu" aria-controls="sidebarMenu" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="navbar-nav">
|
||||
<div class="nav-item text-nowrap"> </div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<nav id="sidebarMenu" class="col-md-3 col-lg-2 d-md-block bg-light sidebar collapse">
|
||||
<div class="position-sticky pt-3 sidebar-sticky">
|
||||
<ul class="nav flex-column">
|
||||
<li class="nav-item"><a class="nav-link{% if(empty($page)): %} active{% endif; %}" href="/">Home</a></li>
|
||||
<li class="nav-item"><a class="nav-link{% if($page == 'doppelklinge'): %} active{% endif; %}" href="/doppelklinge">Doppelklinge</a></li>
|
||||
<li class="nav-item"><a class="nav-link{% if($page == 'vermessung'): %} active{% endif; %}" href="/vermessung">Vermessungen</a></li>
|
||||
<li class="nav-item"><a class="nav-link{% if($page == 'knochen'): %} active{% endif; %}" href="/knochen">KnochenDB</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main class="col-md-9 ms-sm-auto col-lg-10 px-md-4">
|
||||
<h1 class="h2">{% yield title %}</h1>
|
||||
<hr>
|
||||
{% yield content %}
|
||||
<br>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<div class="container text-end">
|
||||
Made with <span style="color: #b92201;">♥</span> by DALL·E and ChatGPT • Generated in {{ $generated }}s
|
||||
</div>
|
||||
</footer>
|
||||
<script src="./js/bootstrap-native.min.js" async></script>
|
||||
</body>
|
||||
</html>
|
120
views/vermessung.twig
Normal file
120
views/vermessung.twig
Normal file
@ -0,0 +1,120 @@
|
||||
{% extends layout.twig %}
|
||||
|
||||
{% block title %}irgendwas mit Vermessungen{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<form action="/vermessung" method="post">
|
||||
<p>Gesamtes Clanprotokoll einfügen (strg-a, strg-c):</p>
|
||||
<textarea name="protocol" rows="4" cols="60">{{ $protocol }}</textarea>
|
||||
<br />
|
||||
<input type="submit" value="abschnalzen" />
|
||||
</form>
|
||||
|
||||
{% if(isset($newest)): %}
|
||||
<hr />
|
||||
<span id="wao">wao, {{ number_format($newest['gm'], 0, '', '.') }} Goldmünzen durch {{ count($newest['list']) }} Vermessungen erwirtschaftet!</span>
|
||||
<select id="dtswitch">
|
||||
{% foreach($vms as $vm): %}
|
||||
<option>{{ $vm['dtact'] }}</option>
|
||||
{% endforeach; %}
|
||||
</select>
|
||||
<hr />
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row justify-content-md-center">
|
||||
<div class="col-sm-4">
|
||||
<div class="card">
|
||||
<h5 class="card-header">Topliste:</h5>
|
||||
<div class="card-body">
|
||||
<table class="table table-sm table-striped" style="width: 100%">
|
||||
<thead>
|
||||
<th>#</th>
|
||||
<th>Spieler</th>
|
||||
<th>Vermessungen</th>
|
||||
<th>Gold</th>
|
||||
</thead>
|
||||
<tbody id="toplist">
|
||||
{% $i = 0; %}
|
||||
{% foreach($newest['user'] as $name => $player): %}
|
||||
<tr>
|
||||
<td>{{ ++$i }}</td>
|
||||
<td>{{ $name }}</td>
|
||||
<td>{{ $player['count'] }}</td>
|
||||
<td>{{ number_format($player['gold'], 0, '', '.') }}</td>
|
||||
</tr>
|
||||
{% endforeach; %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="card">
|
||||
<h5 class="card-header">berücksichtigte Messungen:</h5>
|
||||
<div class="card-body">
|
||||
<table class="table table-sm table-striped" style="width: 100%">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Datum</th>
|
||||
<th>Summe</th>
|
||||
<th>à</th>
|
||||
<th>Amtsteher</th>
|
||||
<th>Läufer</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="vmlist">
|
||||
{% foreach($newest['list'] as $tmp): %}
|
||||
<tr>
|
||||
<td style="vertical-align: top">{{ $tmp['datum'] }}</td>
|
||||
<td style="vertical-align: top">{{ number_format($tmp['gold'], 0, '', '.') }} gm</td>
|
||||
<td style="vertical-align: top">{{ number_format($tmp['a'], 0, '', '.') }} gm</td>
|
||||
<td style="vertical-align: top">{{ $tmp['amt'] }}</td>
|
||||
<td style="vertical-align: top">{{ implode(', ', $tmp['laeufer']) }}</td>
|
||||
</tr>
|
||||
{% endforeach; %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>const vms = {{ json_encode($vms) }};
|
||||
(() => {
|
||||
const toplist = document.querySelector('#toplist');
|
||||
const vmlist = document.querySelector('#vmlist');
|
||||
const wao = document.querySelector('#wao');
|
||||
const dtswitch = document.querySelector('#dtswitch');
|
||||
|
||||
dtswitch.addEventListener('change', e => {
|
||||
const vm = vms[dtswitch.value];
|
||||
|
||||
toplist.innerHTML = '';
|
||||
vmlist.innerHTML = '';
|
||||
|
||||
let gm = 0;
|
||||
let cvm = 0;
|
||||
let i = 1;
|
||||
|
||||
for(let [ name, player ] of Object.entries(vm.user)) {
|
||||
console.log(player);
|
||||
// fill toplist
|
||||
const tr = document.createElement('tr');
|
||||
tr.innerHTML = `<td>${i}</td><td>${name}</td><td>${player.count}</td><td>${player.gold.toLocaleString('de-DE')}</td>`;
|
||||
toplist.insertAdjacentElement('beforeend', tr);
|
||||
i++;
|
||||
}
|
||||
|
||||
for(let entry of vm.list) {
|
||||
// fill vmlist
|
||||
const tr = document.createElement('tr');
|
||||
tr.innerHTML = `<td>${entry.datum}</td><td>${entry.gold.toLocaleString('de-DE')} gm</td><td>${entry.a.toLocaleString('de-DE')} gm</td><td>${entry.amt}</td><td>${entry.laeufer.join(', ')}</td>`;
|
||||
vmlist.insertAdjacentElement('beforeend', tr);
|
||||
}
|
||||
|
||||
wao.innerHTML = `wao, ${vm.gm.toLocaleString('de-DE')} Goldmünzen durch ${vm.list.length} Vermessungen erwirtschaftet!`;
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{% endif; %}
|
||||
{% endblock %}
|
Reference in New Issue
Block a user