diff --git a/webseite/classes/TopicData.php b/webseite/classes/TopicData.php
index 0b27286..2411a71 100644
--- a/webseite/classes/TopicData.php
+++ b/webseite/classes/TopicData.php
@@ -118,10 +118,18 @@ class TopicData
} else {
$result->relatedTopics = array();
}
- if (isset($data->files)) {
- $result->files = $data->files;
- } else {
- $result->files = array();
+
+ $result->files = array();
+ $downloadDirectory = Config::getTopicDirectory($subjectId, $topicId) . "downloads/";
+ if(is_dir($downloadDirectory)) {
+ $fileNames = scandir($downloadDirectory);
+ foreach ($fileNames as $fileName) {
+ if ($fileName == "." || $fileName == "..") {
+ continue;
+ }
+
+ $result->files[] = $fileName;
+ }
}
$article = Util::readFileContent(Config::getTopicDirectory($subjectId, $topicId) . "article.html");
diff --git a/webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/exercise1.pdf b/webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/exercise1.pdf
rename to webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/properties.json b/webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/properties.json
index eb6817d..854795c 100644
--- a/webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/properties.json
+++ b/webseite/config/subjects/deutsch/topics/adverbiale-bestimmung/properties.json
@@ -4,8 +4,5 @@
"description": "Adverbiale Bestimmungen sind Satzteile, die zusätzliche Informationen über Umstände wie Zeit, Ort, Grund oder Art und Weise geben und dadurch die Handlung des Satzes genauer beschreiben.",
"relatedTopics": [
"wortarten", "vier-faelle"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/exercise1.pdf b/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/exercise1.pdf
rename to webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/exercise2.pdf b/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/downloads/exercise2.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/exercise2.pdf
rename to webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/downloads/exercise2.pdf
diff --git a/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/exercise3.pdf b/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/downloads/exercise3.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/exercise3.pdf
rename to webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/downloads/exercise3.pdf
diff --git a/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/properties.json b/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/properties.json
index 3372f25..a297d57 100644
--- a/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/properties.json
+++ b/webseite/config/subjects/deutsch/topics/geschichten-erzaehlen/properties.json
@@ -4,8 +4,5 @@
"description": "Das Thema \"Geschichten erzählen\" umfasst das kreative Gestalten und Vermitteln von Erlebnissen oder Fantasien durch eine spannende Handlung, interessante Charaktere und lebendige Beschreibungen, um die Zuhörer oder Leser zu fesseln.",
"relatedTopics": [
"satzglieder", "personalpronomen"
- ],
- "files": [
- "exercise1.pdf", "exercise2.pdf", "exercise3.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/deutsch/topics/personalpronomen/exercise1.pdf b/webseite/config/subjects/deutsch/topics/personalpronomen/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/personalpronomen/exercise1.pdf
rename to webseite/config/subjects/deutsch/topics/personalpronomen/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/deutsch/topics/personalpronomen/properties.json b/webseite/config/subjects/deutsch/topics/personalpronomen/properties.json
index eec49d2..4f1f61b 100644
--- a/webseite/config/subjects/deutsch/topics/personalpronomen/properties.json
+++ b/webseite/config/subjects/deutsch/topics/personalpronomen/properties.json
@@ -4,8 +4,5 @@
"description": "Personalpronomen sind Wörter, die anstelle von Personen oder Dingen verwendet werden, wie zum Beispiel \"ich\", \"du\", \"er\", \"sie\" oder \"es\", um Wiederholungen zu vermeiden und Sätze flüssiger zu gestalten.",
"relatedTopics": [
"wortarten", "geschichten-erzaehlen"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/deutsch/topics/satzglieder/exercise1.pdf b/webseite/config/subjects/deutsch/topics/satzglieder/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/satzglieder/exercise1.pdf
rename to webseite/config/subjects/deutsch/topics/satzglieder/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/deutsch/topics/satzglieder/properties.json b/webseite/config/subjects/deutsch/topics/satzglieder/properties.json
index 90a0dfa..5c690bc 100644
--- a/webseite/config/subjects/deutsch/topics/satzglieder/properties.json
+++ b/webseite/config/subjects/deutsch/topics/satzglieder/properties.json
@@ -4,8 +4,5 @@
"description": "Satzglieder sind die Bausteine eines Satzes, die jeweils eine bestimmte Funktion erfüllen, wie Subjekt, Prädikat, Objekt oder adverbiale Bestimmung, und sich gemeinsam verschieben lassen, ohne die grammatische Korrektheit des Satzes zu verändern.",
"relatedTopics": [
"wortarten", "vier-faelle"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/deutsch/topics/vier-faelle/exercise1.pdf b/webseite/config/subjects/deutsch/topics/vier-faelle/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/vier-faelle/exercise1.pdf
rename to webseite/config/subjects/deutsch/topics/vier-faelle/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/deutsch/topics/vier-faelle/exercise2.pdf b/webseite/config/subjects/deutsch/topics/vier-faelle/downloads/exercise2.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/vier-faelle/exercise2.pdf
rename to webseite/config/subjects/deutsch/topics/vier-faelle/downloads/exercise2.pdf
diff --git a/webseite/config/subjects/deutsch/topics/vier-faelle/properties.json b/webseite/config/subjects/deutsch/topics/vier-faelle/properties.json
index b76669a..5339b63 100644
--- a/webseite/config/subjects/deutsch/topics/vier-faelle/properties.json
+++ b/webseite/config/subjects/deutsch/topics/vier-faelle/properties.json
@@ -4,8 +4,5 @@
"description": "Die vier Fälle im Deutschen - Nominativ, Genitiv, Dativ und Akkusativ - beschreiben die verschiedenen grammatischen Funktionen eines Nomens oder Pronomens im Satz, wie Subjekt, Besitz, indirektes Objekt oder direktes Objekt.",
"relatedTopics": [
"satzglieder"
- ],
- "files": [
- "exercise1.pdf", "exercise2.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/deutsch/topics/wortarten/exercise1.pdf b/webseite/config/subjects/deutsch/topics/wortarten/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/deutsch/topics/wortarten/exercise1.pdf
rename to webseite/config/subjects/deutsch/topics/wortarten/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/deutsch/topics/wortarten/properties.json b/webseite/config/subjects/deutsch/topics/wortarten/properties.json
index 66f0c51..422354e 100644
--- a/webseite/config/subjects/deutsch/topics/wortarten/properties.json
+++ b/webseite/config/subjects/deutsch/topics/wortarten/properties.json
@@ -4,8 +4,5 @@
"description": "Wortarten sind Kategorien, in die Wörter anhand ihrer grammatischen Funktion und Bedeutung eingeteilt werden, wie zum Beispiel Nomen, Verben, Adjektive und Adverbien.",
"relatedTopics": [
"satzglieder", "adverbiale-bestimmung", "personalpronomen"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/englisch/topics/LoremIpsum/exercise1.pdf b/webseite/config/subjects/englisch/topics/LoremIpsum/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/englisch/topics/LoremIpsum/exercise1.pdf
rename to webseite/config/subjects/englisch/topics/LoremIpsum/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/englisch/topics/LoremIpsum/properties.json b/webseite/config/subjects/englisch/topics/LoremIpsum/properties.json
index df380f7..5caecd9 100644
--- a/webseite/config/subjects/englisch/topics/LoremIpsum/properties.json
+++ b/webseite/config/subjects/englisch/topics/LoremIpsum/properties.json
@@ -4,8 +4,5 @@
"description": "Lorem Ipsum",
"relatedTopics": [
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/mathe/topics/bruchrechnung/exercise1.pdf b/webseite/config/subjects/mathe/topics/bruchrechnung/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/bruchrechnung/exercise1.pdf
rename to webseite/config/subjects/mathe/topics/bruchrechnung/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/mathe/topics/bruchrechnung/exercise2.pdf b/webseite/config/subjects/mathe/topics/bruchrechnung/downloads/exercise2.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/bruchrechnung/exercise2.pdf
rename to webseite/config/subjects/mathe/topics/bruchrechnung/downloads/exercise2.pdf
diff --git a/webseite/config/subjects/mathe/topics/bruchrechnung/properties.json b/webseite/config/subjects/mathe/topics/bruchrechnung/properties.json
index 4b9c4b8..dd4e274 100644
--- a/webseite/config/subjects/mathe/topics/bruchrechnung/properties.json
+++ b/webseite/config/subjects/mathe/topics/bruchrechnung/properties.json
@@ -4,8 +4,5 @@
"description": "Die Bruchrechnung ist ein Teil der Mathematik, der das Rechnen mit Brüchen beinhaltet, also das Teilen eines Ganzen in gleich große Teile, und umfasst Operationen wie Addition, Subtraktion, Multiplikation und Division von Brüchen.",
"relatedTopics": [
"schriftliches-multiplizieren", "schriftliches-dividieren", "punkt-vor-strichrechnung", "rechnen-mit-klammern"
- ],
- "files": [
- "exercise1.pdf", "exercise2.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/exercise1.pdf b/webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/exercise1.pdf
rename to webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/properties.json b/webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/properties.json
index bcc3e3f..9a958cf 100644
--- a/webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/properties.json
+++ b/webseite/config/subjects/mathe/topics/punkt-vor-strichrechnung/properties.json
@@ -4,8 +4,5 @@
"description": "Die Regel \"Punkt vor Strichrechnung\" besagt, dass bei mathematischen Berechnungen Multiplikation und Division immer vor Addition und Subtraktion ausgeführt werden müssen, um das richtige Ergebnis zu erhalten.",
"relatedTopics": [
"rechnen-mit-klammern", "bruchrechnung"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/exercise1.pdf b/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/exercise1.pdf
rename to webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/exercise2.pdf b/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/downloads/exercise2.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/exercise2.pdf
rename to webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/downloads/exercise2.pdf
diff --git a/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/properties.json b/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/properties.json
index 010a643..b85e3ad 100644
--- a/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/properties.json
+++ b/webseite/config/subjects/mathe/topics/rechnen-mit-einheiten/properties.json
@@ -4,8 +4,5 @@
"description": "Rechnen mit Einheiten bedeutet, Größen mit verschiedenen Maßeinheiten wie Meter, Kilogramm oder Liter rechnerisch zu verarbeiten, dabei die Einheiten korrekt umzurechnen und sicherzustellen, dass das Ergebnis in der richtigen Einheit angegeben wird.",
"relatedTopics": [
"schriftliches-dividieren", "bruchrechnung"
- ],
- "files": [
- "exercise1.pdf", "exercise2.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/mathe/topics/rechnen-mit-klammern/exercise1.pdf b/webseite/config/subjects/mathe/topics/rechnen-mit-klammern/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/rechnen-mit-klammern/exercise1.pdf
rename to webseite/config/subjects/mathe/topics/rechnen-mit-klammern/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/mathe/topics/rechnen-mit-klammern/properties.json b/webseite/config/subjects/mathe/topics/rechnen-mit-klammern/properties.json
index 016563e..6d50956 100644
--- a/webseite/config/subjects/mathe/topics/rechnen-mit-klammern/properties.json
+++ b/webseite/config/subjects/mathe/topics/rechnen-mit-klammern/properties.json
@@ -4,8 +4,5 @@
"description": "Beim Rechnen mit Klammern werden die Rechenoperationen innerhalb der Klammern zuerst ausgeführt, bevor die restlichen Berechnungen im Ausdruck vorgenommen werden, um die korrekte Reihenfolge der Rechenschritte einzuhalten.",
"relatedTopics": [
"punkt-vor-strichrechnung", "bruchrechnung"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise1.pdf b/webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise1.pdf
rename to webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise2.pdf b/webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise2.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise2.pdf
rename to webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise2.pdf
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise3.pdf b/webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise3.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise3.pdf
rename to webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise3.pdf
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise4.pdf b/webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise4.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/schriftliches-dividieren/exercise4.pdf
rename to webseite/config/subjects/mathe/topics/schriftliches-dividieren/downloads/exercise4.pdf
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-dividieren/properties.json b/webseite/config/subjects/mathe/topics/schriftliches-dividieren/properties.json
index 2443f26..c3c5623 100644
--- a/webseite/config/subjects/mathe/topics/schriftliches-dividieren/properties.json
+++ b/webseite/config/subjects/mathe/topics/schriftliches-dividieren/properties.json
@@ -4,8 +4,5 @@
"description": "Schriftliches Dividieren ist eine Methode zur schrittweisen Aufteilung einer Zahl durch eine andere, wobei man die Teilschritte nacheinander schriftlich notiert, um das Ergebnis systematisch zu berechnen.",
"relatedTopics": [
"schriftliches-multiplizieren"
- ],
- "files": [
- "exercise1.pdf", "exercise2.pdf", "exercise3.pdf", "exercise4.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/exercise1.pdf b/webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/downloads/exercise1.pdf
similarity index 100%
rename from webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/exercise1.pdf
rename to webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/downloads/exercise1.pdf
diff --git a/webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/properties.json b/webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/properties.json
index 04215f4..f09d59a 100644
--- a/webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/properties.json
+++ b/webseite/config/subjects/mathe/topics/schriftliches-multiplizieren/properties.json
@@ -4,8 +4,5 @@
"description": "Schriftliches Multiplizieren ist eine Rechenmethode, bei der zwei Zahlen schrittweise multipliziert werden, indem man die einzelnen Stellen der Zahlen nacheinander verrechnet, die Teilergebnisse notiert und am Ende addiert, um das Gesamtergebnis zu erhalten.",
"relatedTopics": [
"schriftliches-dividieren"
- ],
- "files": [
- "exercise1.pdf"
]
}
\ No newline at end of file
diff --git a/webseite/subject.php b/webseite/subject.php
index bce9be3..396770f 100644
--- a/webseite/subject.php
+++ b/webseite/subject.php
@@ -100,7 +100,7 @@ $topics = $subjectData->topics;
?>
id/topics/$topicData->id/$fileName") ?>"
+ href="id/topics/$topicData->id/downloads/$fileName") ?>"
target="_blank" download
class="download-btn border-2 border-[color); ?>]">
diff --git a/webseite/topic.php b/webseite/topic.php
index abc240b..84ded0e 100644
--- a/webseite/topic.php
+++ b/webseite/topic.php
@@ -99,7 +99,7 @@ if (!isset($topicData)) {
foreach ($topicData->files as $fileName) {
?>
-