neues Fach einrichten.
Gehe zu /src/config/subjects.ts hier siehst du ein Object, in dem alle Fächer aufgelistet sind.
Füge (am besten) unten ein neues Fach hinzu. Hierbei ist auf folgende Dinge zu achten. Sagen wir mal, ihr wolltet datkom hinzufügen:
{...}
datkom: {
institutes: ["syscom"],
name: "datkom",
displayName: "DatKom",
fullName: "Datenkommunikation",
articlesPath: join(DefaultTeachingDir, "syscom", "datkom"),
articlesURL: urlJoin(BaseURL, "/syscom/studium/teachings"),
documentsPath: join(DefaultContentPath, "datkom"),
},
{...}
datkom) ist wichtig und wird später auch als Key für die Materialliste verwendet etc...
Hier solltet ihr euch nicht verschreiben oder eine komische Schreibweise verwenden (am besten klein geschrieben). Fortan soll er KeyName heißen.institutes ist/sind der/die Lehrstühle, die das Fach anbieten. In unserem Fall also nur syscom.
Auch die Institute haben vordefinierte Namen. Die Namen unter institutes
sollten mit den Keys/Namen der Definition unter
/src/config/institutes.ts übereinstimmen!
displayName wird üblicherweise an Stellen wie dem InstituteSwitch (FacultiesNav) angezeigt.fullName ergibt sich von selbstarticlesPath: DefaultTeachingDir ist /summaries, join erstellt einfach nur einen validen Pfad mit den gegebenen Teilpfaden. Articles sind in diesem Falle die Zusammenfassungen. Dieser Dateipfad wird später nach Zusammenfassungen durchsucht.articlesURL: Die URL, an der später die Übersicht und mit URL/{name} die Zusammenfassungen angezeigt werden können.
In der neuen URL-Spezifikation sollte dies für datkom urlJoin(BaseURL, "/syscom/datkom/summaries) sein.documentsPath: Der Pfad, an dem nach Materialien wie Folien und Aufgaben gesucht wird. DefaultContentPath = "/public/content-assets/Das meiste sollte gleich bleiben, nur datkom und syscom sollten ausgetauscht werden (und articleURL).
Unter /src/app/_%institutename% ist ein Template für ein neues Institut inklusive eines neuen Fachs.
! Kopiert nun einfach /src/app/_%institutename%/%subjectname% in das entsprechende bestehende Institut/Lehrstuhl
und ändert den Namen des Ordners zu dem KeyName.
Geht nun alle Dateien in dem neuen Ordner/Subordnern durch und lest euch alle Kommentare durch.
Ihr müsst insbesondere bei CHANGE_ME und bei %subjectname% die Sachen zu eurem neuen Fach ändern.
Damit auf der Institutsseite das Fach zur Auswahl steht, muss es unter /src/app/[institut]/config.ts in dem Feld subjects eingetragen sein. Eure IDE sollte euch den KeyName bereits vorschlagen bei einer Eingabe.
So eigentlich seid ihr schon fertig.
Jetzt könnt ihr unter /summaries neue Zusammenfassungen erstellen und unter /public/content-assets neue Materialien bereitstellen
(hier werden insbesondere auch Unterordner angezeigt zum Gruppieren z.B. nach Jahr)
Ihr könnt mit pnpm install und dann pnpm run dev unter http://localhost:3000/[institute](ersetzt [institute] natürlich mit eurem Lehrstuhl) sehen, ob euer Fach automatisch der Liste der Fächer hinzugefügt wurde. Geht dann einfach mal ein paar Pfade eures Fachs durch und guckt, ob alles passt.
Also frohes Schaffen
Zum Schluss müsst ihr natürlich gemäß dem Contributor-Guide einen Pull-Request machen. Bei Fragen steh ich natürlich jederzeit bereit.