aboutsummaryrefslogtreecommitdiff
path: root/index.php
blob: ceb9d29553a3e52c0560b04b23845140496e07d5 (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
67
68
69
70
71
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de">
<head>
  <title>Punktestand</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="author" content="Florian Fischer" />

  <!-- Lade den CSS Code, der das Aussehen der Seite definiert -->
  <link rel="stylesheet" href="index.css"/>`

  <!-- Lade die Daten für den Jahrgang und das Schuljahr aus der Datenbank -->
  <?php 
    $QUERIES = array();
    parse_str($_SERVER['QUERY_STRING'], $QUERIES);

    // TODO: Berechne das aktuelle Schuljahr
    function aktuelles_schuljahr() {
      return "2526";
    }

    $SCHULJAHR = $QUERIES['schuljahr'] ?? aktuelles_schuljahr();
    $JAHRGANG = $QUERIES['jahrgang'];
    // TODO: Behandle fehlenden jahrgangs URL query Parameter

    // Lade die lokale Konfigurationsdatei, die die globale Variable $CONFIG definiert
    require_once('config.php');

    // Lade die Funktion, um die Daten aus der Datenbank zu lesen
    require('lade_daten.php');

    // Lade alle Daten aus der Datenbank mit der in lade_daten.php definierten
    // Funktion lade_daten($config, $schuljahr, $jahrgang)
    $daten = lade_daten($CONFIG, $SCHULJAHR, $JAHRGANG);

    // Bereite die Klassen und Event Daten für Javascript vor
    $daten_json = json_encode($daten);

    // Schreibe den Javascript Code mit unseren Daten in die Webseite
    echo "<script>";
    echo "const daten = $daten_json;";
    echo "</script>";
  ?>

  <!-- Lade die benötigten Javascript Dateien -->
  <script src="js/chart.umd.js"></script>
  <script src="js/index.js"></script>
</head>

<body>
  <h1>Punktestand Jahrgangsstufe <?php echo "$JAHRGANG $SCHULJAHR";?></h1>

  <!-- Container für den Inhalt des Punktestands -->
  <div id="content">
    <!-- Fortschrittsanzeige für das Zeichnen des Diagramms -->
    <progress id="zeichnen" aria-label="Zeichnen" style="display: none;"></progress>
    <!-- Container des Diagramms -->
    <div id="zeichenort", aria-busy="true" aria-describedby="zeichnen">
      <!-- Das HTML Element das zum Zeichnen des Diagramms verwendet wird -->
      <canvas id="zeichenflaeche"></canvas>
    </div>

    <!-- Liste aller Ergeignisse -->
    <div class="ereignisse-wrapper">
      <h2>Ereignisse</h2>
      <ul id="ereignisse">
      </ul>
    </div>
  </div>
</body>
</html>