node.js, Front matter, YAML, markdown, hugo, lotus notes, pdf, sitecore

Udvalgsreferater med 45.000 pdf-bilag er migreret fra Lotus Notes med Hugo

Artikel 12-10-17 ~5 minutters læsning · 984 ord

1589 udvalgsreferater og tilhørende knap 45.000 pdf’er ligger nu som et statisk websted under Viborg Kommunes hovedsite, efter at kommunen har gennemført en veloverstået migrering af materialet, som hidtil har ligget i dokument-databasen Lotus Notes.

Alt i alt var der tale om 32 GB data, som fordelte sig på tre Lotus Notes databaser. Referaterne og de mange tusinde bilag var indtastet som formateret tekst (rich text) i Notes, hvor indholdet og linksene til pdf’erne var lagt ind i tabeller. Se fig. 1.

Det gamle webdesign af Viborg Kommunes referater

Fig. 1: Sådan så Viborg Kommunes udvalgsreferater ud, da de blev vist fra Lotus Notes

Opgaven gik ud på at hente alt materialet ud af Lotus Notes og få det præsenteret i et renere design. Vel at mærke uden de gamle Notes-tabeller, som gjorde det umuligt at lave en ordentlig visning på små skærme. Desuden var der et ønske om at få nogle «brødkrummer» i toppen, så det blev muligt for brugerne at navigere hurtigt mellem referaterne fra de forskellige udvalg og forskellige årstal.

Det nye websted kunne tages i brug to uger senere

It-folkene ved Viborg Kommune havde luret, at konverteringen kunne klares ved hjælp af den metode, som er skildret i denne guide til udtræk fra Notes. Samtidig kunne de se, at JLKM allerede havde afprøvet metoden og sat resultatet i drift med et website på knap 30.000 dokumenter.

Der blev taget kontakt, detaljerne blev fastlagt, og arbejdet kunne begynde. To uger senere blev de konverterede filer overført til den fastlagte mappe med undermapper på kommunens server, og resultatet blev straks taget i drift. Det fremgår af fig. 2.

Det nye design af Viborg Kommunes referater

Fig. 2: I den nye udgave er der tilføjet navigation i toppen, ligesom tekst-elementerne og ikonerne fra de gamle Notes-tabeller er flyttet rundt og frisket op.

Metadata blev tilføjet og gammelt html-snask fjernet

Først blev pdf’erne og de øvrige data trukket ud ved hjælp af Lotus Script og et udtrækningsværktøj, som var sat op til at gemme dokumenterne som html - men med tilføjelse af en række udvalgte kategorier og andre metadata i toppen.

Herefter blev html-dokumenterne konverteret til markdown-format med js-biblioteket to-markdown, der kan køre batch-konvertering i Node.js. To-markdown var desuden i stand til at overføre de programmerede metadata fra udtrækket i yaml-format til den såkaldte front matter, som er den måde, markdown opbevarer dokument-info på. Js-biblioteket blev også brugt til at lægge ekstra kode ind for at bevare noget af den opdeling på siden, som de slettede tabeller havde sørget for.

Det resterende html-snask fra Notes med font-tags og inline styles m.m. blev renset ud med bl.a. regulære udtryk (regex), og så var der linet op til at bygge det hele op igen som et statisk websted ved hjælp af den statiske side generator Hugo.

Lige til højrebenet for Hugo

Hugo er open source, og det samme gælder de langt over 100 temaer, som man kan vælge imellem som grundlag for et websted. Så problemet er hverken prisen eller at finde det rigtige grundlag for et Hugo-websted. Det sværeste er faktisk at vælge det tema, som matcher ens ønsker bedst.

Valget faldt på det meget enkle tema, Goa, som dog skulle igennem en større omgang fransk vask og strygning, inden det passede helt til formålet. Blandt andet var der brug for at få tilføjet en lang række elementer til taksonomierne, som kategori-systemet kaldes i Hugo. Og så var det nærmest forfra med css-stylingen, der ikke mindst skulle dresseres til at gribe fat i de gamle tabel-elementer fra Notes.

Undervejs viste det sig, at der i referaterne var lagt manuelle links ind til pdf’er i andre Notes-databaser, som vi ikke var klar over på forhånd. Det går jo ikke, hvis formålet er at få lukket Notes ned. Derfor blev de eksterne pdf’er også trukket ud og forenet med resten, lige som linksene til dem blev omdannet tilsvarende under udøvelse af betydelige mængder regex-gymnastik.

Hugo-referaterne er nu lagt ind som en iframe i Viborg Kommunes øvrige Sitecore-websted, og samspillet mellem de to systemer kan ses i fig. 3.

Hugo-referaterne udgør nu en del af Viborg Kommunes hovedwebsted

Fig. 3: De konverterede referater kan læses via en iframe på Viborg Kommunes Sitecore-baserede websted

Godt tilfreds med både resultat, proces og tempo

It-arkitekt Kim Andersen, har været tovholder på projektet, som han har styret i mål for Viborg Kommune sammen med webkonsulent René Petersen. Kim Andersen er godt tilfreds med skiftet fra Lotus Notes til et statisk Hugo-websted:

Migreringen har helt klart medført et generelt løft af de historiske referater. Dette gælder både med hensyn til design, hvor referaterne ser væsentligt mere indbydende ud efter de er blevet trukket ud af tabellerne, men også med hensyn til det rent funktionelle er der tale om en klar forbedring, hvor særligt navigationsmulighederne er væsentligt bedre end tidligere, siger han.

Processen er også godkendt:

Jeg synes migreringen er gået meget gnidningsfrit. Dette hænger givetvis sammen med at det var statiske sider, der skulle migreres, og at disse derfor ikke skal kunne redigeres efterfølgende. Derfor har der ikke være behov for at inddrage vore mange redaktører i processen, hvilket bestemt har været medvirkende til, at processen kunne strømlines. Det har også vist sig, at JLKM forholdsvis let kunne lave globale designmæssige justeringer efter importen – hvilket også har vist sig at være en stor fordel.

At migreringen samtidig gik tjept, er selvfølgelig heller ikke nogen ulempe - for nu at sige det på godt jysk:

Selv om vi gav en meget stram tidsplan, har JLKM været i stand til at rykke hurtigt på opgaven, og det er endt med at vi fik leveret det ønskede produkt til tiden - og til prisen (også selv om vi havde nogle ændringsønsker relativt sent i processen). Dette kan vi naturligvis kun være yderst tilfredse med. Hvis vi på et tidspunkt skulle få brug for at foretage en lignende migrering igen, ville jeg ikke have nogen betænkeligheder ved igen at entrere JLKM, lyder det fra Kim Andersen.

Tag evt. selv det nye design af Viborg Kommunes historiske udvalgsreferater i øjesyn.