# Arrangementer

2 af 4 understøttet
Kilde: https://plasapi.com/da/funktioner/library-and-content/events/

Lad lånerne finde bibliotekets arrangementer og se hvornår og hvor de foregår, og hvordan man kommer med.

## 3.2.1 Se arrangement — Understøttet

Vis et arrangement med tid, sted, adgang og relateret materiale.

### Det kan du bygge

En arrangementsside der fortæller låneren om arrangementet er noget for dem: hvornår og hvor det er, hvad det koster, og hvordan man kommer med. Kræver det billet eller tilmelding, har arrangementet et link, en e-mail, et telefonnummer eller en vejledning. Siden kan også vise de andre datoer i en serie og de værker der hører til arrangementet.

### Typisk flow

1. Klienten henter arrangementet med `GetContentEvents` og dets id i `event_ids`.
2. Siden viser titlen, tiden fra `scheduling`, stedet fra `branch` og `location`, og adgangen fra `admission`.
3. Hører arrangementet til en serie, henter klienten de andre arrangementer med `GetContentEventsInSeries` og `series.seriesId`.
4. Relaterede værker kommer fra `GetWorks` når `relevantWorks` har `workIds`, eller fra `SearchWorks` når det angiver en `query`.
5. Låneren åbner et værk (1.2.1) eller et andet arrangement i serien.

### Det leverer API'et

- `state` er `scheduled`, `cancelled` eller `finished`.
- `scheduling` er `all_day` med `startDate` og `endDate`, eller `time_span` med `startTime` og `endTime`.
- `location` er `at_branch`, et sted inde på filialen, eller `external` med et `name` og en valgfri `address`.
- `admission` er `open`, `ticket` eller `registration`. Billet og tilmelding har `contactInfo` med mindst ét af `url`, `email`, `phone` eller `info`, og en `state`: `ticket_sale_not_open`, `ticket_sale_open`, `almost_sold_out` eller `sold_out`.
- En billet har `pricing`: `simple` med en tekst, eller `price_categories` med et `amount` i mindste møntenhed og en `currency` i ISO 4217. Et `amount` på 0 betyder at arrangementet er gratis, men billetten kræves stadig.
- Kun `description` må have formatering, og kun med HTML-taggene `b`, `i`, `p`, `a`, `ul`, `ol` og `li`.

### Kald i API'et

Slås til i konfigurationen: `GetContentConfiguration`

Kaldene bag visningen

- [GET /content/event](https://plasapi.com/da/provider/v0.6.7/content-event/#GetContentEvents) — Get content events
- [GET /content/event/series/{seriesId}](https://plasapi.com/da/provider/v0.6.7/content-event/#GetContentEventsInSeries) — Get content events in series
- [GET /work](https://plasapi.com/da/provider/v0.6.7/work/#GetWorks) — Get Works
- [GET /work/search](https://plasapi.com/da/provider/v0.6.7/work/#SearchWorks) — Search Works

## 3.2.2 Tilmeld eller få billet — Ikke endnu

Lad låneren tilmelde sig et arrangement eller få en billet.

> Ikke i PLAS endnu. Funktionen er ikke understøttet i dag. Beskrivelsen viser hvad den gør, så du kan se sammenhængen med resten.

## 3.2.5 Gennemse arrangementer — Understøttet

Vis bibliotekets kommende arrangementer for en periode, så lånerne kan finde dem der interesserer dem.

### Det kan du bygge

En arrangementskalender der viser bibliotekets arrangementer dag for dag, hvert med titel, tid, filial og pris. Filtre for filial, kategori og målgruppe bygges af arrangementerne selv.

### Typisk flow

1. Klienten henter arrangementerne i en periode med `GetContentEvents`, `from_date` og `to_date`.
2. Klienten bladrer gennem resultatet med `page` og `size`, indtil `endOfResults` er sand.
3. Klienten grupperer arrangementerne pr. dag og lader låneren filtrere på `branch`, `categories` og `audiences`.
4. Låneren åbner et arrangement (3.2.1).

### Det leverer API'et

- En forespørgsel skal have enten `to_date` eller `event_ids`. Uden `from_date` starter provideren fra i dag i sin egen tidszone.
- `size` er højst 50. `total` er antallet af arrangementer i hele perioden.
- `GetContentEvents` har ingen parametre for filial, kategori eller målgruppe. Klienten filtrerer på felterne i hvert arrangement.
- `promoted` markerer et arrangement som fremhævet, eventuelt mellem en `startTime` og en `endTime`.
- Uden `ui_language` returneres hvert arrangement på alle de sprog det findes på. Samme `id` på flere sprog er ét arrangement. `GetContentConfiguration` viser hvilke sprog provideren understøtter.

### Kald i API'et

Slås til i konfigurationen: `GetContentConfiguration`

- [GET /content/event](https://plasapi.com/da/provider/v0.6.7/content-event/#GetContentEvents) — Get content events

## 3.2.6 Interesse for arrangement — Ikke endnu

Lad låneren markere et arrangement de er interesseret i.

> Ikke i PLAS endnu. Funktionen er ikke understøttet i dag. Beskrivelsen viser hvad den gør, så du kan se sammenhængen med resten.
