forked from xziino/ff14-mitigator
177 lines
6.6 KiB
PHP
177 lines
6.6 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="de">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>FFLogs Report Viewer</title>
|
|
<link rel="stylesheet" href="css/base.css">
|
|
<link rel="stylesheet" href="css/layout.css">
|
|
<link rel="stylesheet" href="css/components.css">
|
|
<link rel="stylesheet" href="css/analysis.css">
|
|
<link rel="stylesheet" href="css/planner.css">
|
|
</head>
|
|
<body>
|
|
|
|
<?php if (!$authenticated): ?>
|
|
<?php require __DIR__ . '/login.php'; ?>
|
|
<?php else: ?>
|
|
<div id="app">
|
|
<?php require __DIR__ . '/topbar.php'; ?>
|
|
<main id="main">
|
|
<?php if ($errorText): ?>
|
|
<div class="error section-gap"><?= htmlspecialchars($errorText) ?></div>
|
|
<?php endif; ?>
|
|
|
|
<div id="tab-report" class="tab-content">
|
|
<?php require __DIR__ . '/tab-report.php'; ?>
|
|
</div>
|
|
|
|
<div id="tab-analysis" class="tab-content" style="display:none">
|
|
<?php require __DIR__ . '/tab-analysis.php'; ?>
|
|
</div>
|
|
|
|
<div id="tab-planner" class="tab-content" style="display:none">
|
|
<?php require __DIR__ . '/tab-planner.php'; ?>
|
|
</div>
|
|
</main>
|
|
</div>
|
|
<!-- Planner Import Modal -->
|
|
<div id="planner-import-modal" class="modal-overlay" style="display:none">
|
|
<div class="modal-box">
|
|
<div class="modal-title">In Planer exportieren</div>
|
|
|
|
<div class="modal-section">
|
|
<div class="modal-label">Was importieren?</div>
|
|
<label class="modal-radio-label">
|
|
<input type="radio" name="import-what" value="with-mitigations" checked>
|
|
<span>Mechaniken + Mitigation</span>
|
|
</label>
|
|
<label class="modal-radio-label">
|
|
<input type="radio" name="import-what" value="mechanics">
|
|
<span>Nur Mechaniken</span>
|
|
</label>
|
|
</div>
|
|
|
|
<div class="modal-section">
|
|
<div class="modal-label">Wohin?</div>
|
|
<label class="modal-radio-label">
|
|
<input type="radio" name="import-where" value="new" checked>
|
|
<span>Neuer Plan</span>
|
|
</label>
|
|
<div id="import-new-section" class="modal-subsection">
|
|
<input type="text" id="import-plan-name" placeholder="Plan-Name…">
|
|
</div>
|
|
<label class="modal-radio-label" id="import-merge-label">
|
|
<input type="radio" name="import-where" value="merge">
|
|
<span>In bestehenden Plan mergen</span>
|
|
</label>
|
|
<div id="import-merge-section" class="modal-subsection" style="display:none">
|
|
<select id="import-plan-select">
|
|
<option value="">— Plan auswählen —</option>
|
|
</select>
|
|
<div class="modal-hint">Neue Mechaniken werden hinzugefügt, bestehende Assignments bleiben erhalten.</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="modal-actions">
|
|
<button id="import-confirm-btn" class="btn btn-gold">Importieren</button>
|
|
<button id="import-cancel-btn" class="btn">Abbrechen</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Planner Compare Modal -->
|
|
<div id="planner-compare-modal" class="modal-overlay" style="display:none">
|
|
<div class="modal-box planner-compare-modal-box">
|
|
<div class="compare-modal-header">
|
|
<div>
|
|
<div class="modal-title">Plan mit FFLogs vergleichen</div>
|
|
<div class="compare-modal-subtitle">Schnellcheck für live Logs: fehlende, frühe, späte und extra Mitigations.</div>
|
|
</div>
|
|
<div class="compare-modal-header-actions">
|
|
<label class="compare-show-ok-toggle" id="compare-show-ok-wrap" style="display:none">
|
|
<input type="checkbox" id="compare-show-ok">
|
|
<span>OK anzeigen</span>
|
|
</label>
|
|
<button id="compare-run-btn" class="btn btn-gold" style="display:none">Vergleichen</button>
|
|
<button id="compare-refresh-btn" class="btn" style="display:none">Refresh live log</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="compare-modal-body">
|
|
<div class="compare-setup-grid">
|
|
<div class="modal-section">
|
|
<div class="modal-label">Report-Code</div>
|
|
<div class="name-import-input-row">
|
|
<input type="text" id="compare-report-input" placeholder="Report-Code oder URL…">
|
|
<button id="compare-load-btn" class="btn btn-sm">Fights laden</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="modal-section" id="compare-fight-section" style="display:none">
|
|
<div class="modal-label">Fight</div>
|
|
<select id="compare-fight-select">
|
|
<option value="">— Fight auswählen —</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="compare-result" class="planner-compare-result" style="display:none"></div>
|
|
</div>
|
|
|
|
<div class="modal-actions compare-modal-footer">
|
|
<button id="compare-cancel-btn" class="btn">Schließen</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Name Import Modal (Planner) -->
|
|
<div id="planner-name-import-modal" class="modal-overlay" style="display:none">
|
|
<div class="modal-box">
|
|
<div class="modal-title">Namen importieren</div>
|
|
|
|
<div class="modal-section">
|
|
<div class="modal-label">Report-Code</div>
|
|
<div class="name-import-input-row">
|
|
<input type="text" id="name-import-report-input" placeholder="Report-Code oder URL…">
|
|
<button id="name-import-load-btn" class="btn btn-sm">Laden</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="modal-section" id="name-import-fight-section" style="display:none">
|
|
<div class="modal-label">Fight</div>
|
|
<select id="name-import-fight-select">
|
|
<option value="">— Fight auswählen —</option>
|
|
</select>
|
|
</div>
|
|
|
|
<div id="name-import-preview" class="name-import-preview" style="display:none"></div>
|
|
|
|
<div class="modal-actions" style="margin-top:16px">
|
|
<button id="name-import-confirm-btn" class="btn btn-gold" style="display:none">Übernehmen</button>
|
|
<button id="name-import-cancel-btn" class="btn">Abbrechen</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Ability Assignment Modal -->
|
|
<div id="planner-ability-modal" class="modal-overlay" style="display:none">
|
|
<div class="modal-box ability-modal-box">
|
|
<div class="modal-title" id="ability-modal-title">Mitigations</div>
|
|
<div id="ability-modal-content"></div>
|
|
<div class="modal-actions" style="margin-top:16px">
|
|
<button id="ability-modal-close" class="btn">Schließen</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="js/app.js"></script>
|
|
<script src="js/tabs.js"></script>
|
|
<script src="js/ffxiv-data.js"></script>
|
|
<script src="js/analysis.js"></script>
|
|
<script src="js/planner.js"></script>
|
|
<?php endif; ?>
|
|
|
|
</body>
|
|
</html>
|