Upload several Melee exports at once; let admins delete leagues
- The session import takes many files (every round's matches export plus the standings export) in one transaction; a bad file, a round repeated across files, or two standings exports rejects the whole batch. - Delete league (with its sessions and results; players are kept). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
985c85bcef
commit
0e14228b8f
3 files changed
+42
-15
No files matched your search
@@ -9,3 +9,4 @@
|
||||
<% if (admin) { %><form method="post" action="<%= base %>/admin/league/<%= lg.id %>/session"><input type="date" name="date" required> <button>New session</button></form><% } %>
|
||||
<h2>Deck performance <small>(match W-D-L)</small></h2>
|
||||
<table><tr><th>Deck</th><th>W-D-L</th></tr><% decks.forEach(([d, r]) => { %><tr><td><%= d %></td><td><%= r.join('-') %></td></tr><% }) %></table>
|
||||
<% if (admin) { %><form method="post" action="<%= base %>/admin/league/<%= lg.id %>/delete" data-confirm="Delete this league and all its sessions and results? Players are kept."><button>Delete league</button></form><% } %>
|
||||
+4
-3
@@ -23,10 +23,11 @@
|
||||
<p><small>If this session also has match rows, those are used for scoring instead.</small></p><% } %>
|
||||
<% if (admin) { %>
|
||||
<h2>Import Melee export</h2>
|
||||
<p>Upload a <b>matches</b> or <b>standings</b> export from Melee (JSON or CSV), or paste it. A matches export holds one round, so import each round in turn;
|
||||
re-importing a round replaces just that round. Decks you've entered are kept. If a session has matches, they are used for scoring.</p>
|
||||
<p>Upload the night's Melee exports (JSON or CSV): select every round's <b>matches</b> export and/or the <b>standings</b> export at once, or paste one.
|
||||
Re-importing a round replaces just that round; a standings export replaces the imported standings. Decks you've entered are kept.
|
||||
If anything in the batch is invalid, nothing is imported. If a session has matches, they are used for scoring.</p>
|
||||
<form method="post" enctype="multipart/form-data" action="<%= base %>/admin/session/<%= gs.id %>/import-melee">
|
||||
<input type="file" name="file" accept=".csv,.json,.txt"><br>
|
||||
<input type="file" name="files" accept=".csv,.json,.txt" multiple><br>
|
||||
<textarea name="data" rows="5" style="width:100%;font-family:monospace" placeholder="...or paste here"></textarea><br><button>Import</button></form>
|
||||
<h2>Import matches by hand</h2>
|
||||
<p>One match per line: <code>round, player1, deck1, player2, deck2, p1 wins, p2 wins, draws</code>. Leave player 2 blank for a bye.
|
||||
|
||||
Reference in new issue
Block a user