aboutsummaryrefslogtreecommitdiff
path: root/index.php
blob: 9729c1da8c4069116d23f50b05ec7c7a349ba4ef (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
72
73
74
75
76
77
78
79
80
81
82
83
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de">
<head>
  <!-- Willkommen im Quellcode dieser Seite! Wenn du verstehen willst wie die
       Seite funktioniert, findest du den Quellcode unter:
       https://git.muhq.space/schule/punktestand
  -->
  <title>Punktestand</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="author" content="Florian Fischer" />

  <!-- Setze ein leeres Bild als favicon -->
  <link rel="icon" href="data:,">

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

  <!-- Die Daten für den Jahrgang und das Schuljahr aus der Datenbank -->
  <?php 
    // Lade die Daten für den Jahrgang und das Schuljahr aus der Datenbank
    $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 und schreibe sie als Javbascript Variablen
    // in die Webseite mit der in lade_daten.php definierten Funktion.
    $daten = schreibe_json($CONFIG, $SCHULJAHR, $JAHRGANG);
  ?>

  <!-- Lade die benötigten Javascript Dateien -->
  <script src="js/chart.umd.js"></script>
  <script src="js/chartjs-plugin-annotation.min.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">
    <div id="graphen">
      <!-- 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>
      <!-- Container fuer alle Streak-Anzeigen -->
      <table id="streaks-tabelle" aria-label="Streak-Anzeiger jeder Klasse.">
        <tbody>
          <tr id="streaks">
          </tr>
        </tbody>
      </table>
    </div>

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