92 lines
3.3 KiB
HTML
Executable File
92 lines
3.3 KiB
HTML
Executable File
|
|
<!-- traders.html -->
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<title>ESCAPE FROM TARKOV COMPANION — Trader Resets</title>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<!-- Site stylesheet -->
|
|
<link rel="stylesheet" href="styles.css" />
|
|
</head>
|
|
<body>
|
|
<header class="topbar">
|
|
<a href="index.html" class="logo">ESCAPE FROM TARKOV COMPANION</a>
|
|
|
|
<!-- HAMBURGER BUTTON -->
|
|
<button class="nav-toggle" type="button" aria-controls="primary-nav" aria-expanded="false"
|
|
aria-label="Toggle navigation">
|
|
<span class="nav-toggle__bar" aria-hidden="true"></span>
|
|
<span class="nav-toggle__bar" aria-hidden="true"></span>
|
|
<span class="nav-toggle__bar" aria-hidden="true"></span>
|
|
</button>
|
|
|
|
<nav class="main-nav" id="primary-nav" aria-label="Primary navigation">
|
|
<ul>
|
|
<li><a href="index.html">Home</a></li>
|
|
<li><a href="goons.html">Goons</a></li>
|
|
<li><a href="maps.html">Maps</a></li>
|
|
<li><a href="quests.html">Quests</a></li>
|
|
<li><a href="ammo.html">Ammo</a></li>
|
|
<li><a href="traders.html">Traders</a></li>
|
|
<li><a href="pricewatch.html" aria-current="page">Price Watch</a></li>
|
|
<li><a href="crafts.html">Craft Calculator</a></li>
|
|
<li><a href="https://tarkovgunsmith.com/ballistics_simulator" target="_blank" rel="noopener">Ballistics Simulator</a></li>
|
|
<li><a href="https://tarkov-market.com/" target="_blank" rel="noopener">Flea Market</a></li>
|
|
<li><a href="https://escapefromtarkov.fandom.com/wiki/Escape_from_Tarkov_Wiki" target="_blank"
|
|
rel="noopener">Wiki</a></li>
|
|
</ul>
|
|
</nav>
|
|
</header>
|
|
|
|
<main class="content">
|
|
<section id="Home" aria-labelledby="home-title">
|
|
<h1 id="home-title" class="page-title" align="center">Trader Inventory Resets</h1>
|
|
|
|
<!-- Toolbar: only the controls live here -->
|
|
<div class="trader-toolbar toolbar-flex">
|
|
<button id="refreshBtn" type="button" class="btn">Refresh now</button>
|
|
|
|
<!-- PvP / PvE toggle -->
|
|
<label class="mode-toggle" title="Switch between PvP (regular) and PvE data">
|
|
<input id="modeToggle" type="checkbox" />
|
|
<span>Use PvE data</span>
|
|
</label>
|
|
|
|
<span class="spacer"></span>
|
|
</div>
|
|
|
|
<!-- Single unified "data last updated" bubble (from JSON Last-Modified) -->
|
|
<div class="update-bar">
|
|
<span id="dataUpdated" class="badge update-pill">Data last updated: —</span>
|
|
</div>
|
|
|
|
<!-- Trader cards -->
|
|
<div id="traderGrid" class="trader-grid grid-root" role="list"></div>
|
|
|
|
<p class="small-muted">
|
|
<!--Data is cached locally and refreshed by cron every ~5 minutes.-->
|
|
</p>
|
|
|
|
<noscript>
|
|
<p class="error">JavaScript is required to load trader reset times.</p>
|
|
</noscript>
|
|
</section>
|
|
</main>
|
|
|
|
<!-- App logic -->
|
|
<script src="trader-resets.js?v=2.2.0"></script>
|
|
|
|
<!-- HAMBURGER MENU SCRIPT -->
|
|
<script>
|
|
const btn = document.querySelector('.nav-toggle');
|
|
const nav = document.getElementById('primary-nav');
|
|
btn.addEventListener('click', () => {
|
|
const open = btn.getAttribute('aria-expanded') === 'true';
|
|
btn.setAttribute('aria-expanded', !open);
|
|
nav.classList.toggle('is-open', !open);
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|