# Beispiel zum Einbinden der Discovery Links in eine Webseite ## HTML Fragment ```html

Neuerscheinungen

``` ## JavaScript Fragment Für jeden Eintrag in der item-Liste wird die Funktion `buildLink` aufgerufen. Diese erzeugt die Links mit der Suche über den aktuellen sowie die letzten beiden Monate. Das Thema ergibt sich aus dem Index in der Liste (1 => _Allgmeines, ..._) Das HTML Gerüst beinhaltet initial eine leere _"unordered list"_. Per JavaScript wird dieser Liste dann jeweils ein Anker-Element hinzugefügt mit dem erzeugten Link. ### TODOs Die Links verwenden automatisch das aktuelle Jahr und den aktuellen Monat als Basis. In den Monaten Januar und Februar funktioniert das aber nicht korrekt. In wird beim zurückrechnen nicht auf das Vorjahr und die Monaten Dezember bzw. November zurückgegriffen. Diese Logik müsste man noch hinzuzfügen. ```js let items = ["Allgemeines, Umweltschutz, Spielfilme", "Theologie, Philosophie, Ethik, Psychologie", "Pädagogik", "Germanistik, Sprach- und Literaturwissenschaft"] let books = document.getElementById('books') items.forEach(buildLink) // create new li element and text node // append it to list element function buildLink(value, index) { const zeroPad = (num, places) => String(num).padStart(places, '0') const d = new Date() let year = d.getFullYear() let month = d.getMonth() let link = "https://fhnw.swisscovery.slsp.ch/discovery/search?query=any,contains,(" + "ENE60" + year + zeroPad(month + 1, 2) + zeroPad(index + 1, 2) + "+OR+ENE60" + year + zeroPad(month, 2) + zeroPad(index + 1, 2) + "+OR+ENE60" + year + zeroPad(month - 1, 2) + zeroPad(index + 1, 2) + ")&tab=41SLSP_FHNW_MyInst_and_CI&search_scope=MyInst_and_CI" + "&vid=41SLSP_FNW:VU1&offset=0" let item = document.createElement("li") let aElement = document.createElement("a") let content = document.createTextNode(value) aElement.appendChild(content) aElement.setAttribute("href", link) item.appendChild(aElement) books.appendChild(item) } ``` ITZ Notes ``` 28.10.2024 07:15 17:15 01:00 29.10.2024 07:20 17:00 01:10 30.10.2024 08:40 18:10 01:00 31.10.2024 07:00 16:30 01:00 ```