summaryrefslogtreecommitdiff
path: root/assets/index.html
blob: f85b7337b8c8e060366d949fb400e2a6e86a9ee6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>websweeper</title>
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <link rel="stylesheet" type="text/css" href="./s.css">
  </head>
  <body>
    <div class="cent">
      <div id="rlist"></div>
      <span id="rspace"></span>
    </div>
    <script>
      let rlist = document.getElementById('rlist');
      fetch('rlist').then(r => r.json()).then(info => {
        let rooms = info[0];
        let pcounts = info[1];
        Object.keys(rooms).forEach(x => {
          let roominfo = JSON.parse(rooms[x]);
          let pc = Number(pcounts[x]);
          let bc = roominfo.board_conf;
          let a = document.createElement('a');
          let h1 = document.createElement('h1');
          let ptxt = (pc > 0)? ((pc > 1)? `${pc} players`: `${pc} player`) : "no players";
          h1.appendChild(document.createTextNode(`> ${roominfo.name}${ptxt}`));
          let h4 = document.createElement('h4');
          h4.appendChild(document.createTextNode(`${bc.w} by ${bc.h} with ${bc.mine_ratio[0]} in every ${bc.mine_ratio[1]} tiles mined`));
          a.append(h1);
          a.append(h4);
          a.href = 'room/' + x;
          rlist.append(a);
          rlist.append(document.createElement('br'));
        });
      });
      fetch("rspace").then(resp => resp.text()).then(roomspace => {
          let roomspacenum = Number(roomspace);
          let e = document.getElementById('rspace');
          let t = document.createTextNode("room slots filled, if a room empties of active players it can be replaced by a new one");
          if (roomspacenum == 1) {
            e.appendChild(document.createTextNode(`there is one available room slot`));
          } else if (roomspacenum > 1) {
                  e.appendChild(document.createTextNode(`there are ${roomspacenum} available room slots`));
          }
      })
    </script>
    <form method="post" action="r" class="cent">
      <fieldset>
        <legend>-={ Create a new room }=-</legend>
        <label>room name<input name="rname" type="text" autofocus></label><br>
        <label>board dimensions<br>
          <input name="rwidth" type="number" value="30" required>
          x
          <input name="rheight" type="number" value="20" required><br>
          where<input name="rration" type="number" value="1" required>
          in every<input name="rratiod" type="number" value="8" required>
          tiles are mines
        </label><br>
        <label>public, ie. shown in the lobby <input name="raccess" type="checkbox" checked></label><br>
        <label>safe first move (if possible)<input name="ralwayssafe1move" type="checkbox" checked></label><br>
        <label>player limit<input name="rlimit" type="number" value="32"></label><br>
        <button>create</button>
      </fieldset>
      <form>
  </body>
</html>