# Metodreferens

> Det kompletta offentliga API:et för Entase-klienten – bokning, händelseprenumeration, gettrar och settrar under körning samt nedmontering.

Det fullständiga offentliga API:et för en `Entase`-instans.

## Bokning

| Metod | Beskrivning |
|---|---|
| `book(eventID, options?)` | Öppnar kassan för ett evenemang. Se [Öppna kassan](/developers/js-client/opening-the-checkout.md). |

## Händelser

| Metod | Beskrivning |
|---|---|
| `on(name, callback)` | Registrerar en callback. En per händelsenamn – se [Händelser](/developers/js-client/events.md). |
| `off(name, callback?)` | Tar bort callbacken som registrerats för ett namn. Callback-argumentet ignoreras. |

Båda accepterar en mellanslagsavgränsad sträng eller en array med namn.

## Språk

| Metod | Beskrivning |
|---|---|
| `getLocale()` | Returnerar det konfigurerade värdet, inklusive den bokstavliga strängen `'auto'` om det är vad som har angetts. |
| `setLocale(locale)` | Ändrar kassans språk för senare bokningar. |

`getLocale()` rapporterar konfigurationen, inte det fastställda värdet – med standardinställningen returnerar den `'auto'`, inte språket som faktiskt kommer att användas. Värdet `'auto'` fastställs när `book()` anropas, utifrån attributet `lang` på ditt `<html>`-element, så om sidans språk ändras efter att klienten har skapats registreras det utan ytterligare åtgärder.

## Kassaläge

| Metod | Beskrivning |
|---|---|
| `getCheckoutMode()` | Returnerar det fastställda läget, `'pane'` eller `'popup'` – aldrig `'auto'`. |
| `setCheckoutMode(mode)` | Anger läget. `'auto'` kör identifieringen på nytt; ett okänt värde ignoreras. |

Se [Kassalägen](/developers/js-client/checkout-modes.md).

## Spårning

| Metod | Beskrivning |
|---|---|
| `getTracking()` | Returnerar objektet med aktuella spårningsparametrar. |
| `setTracking(tprm)` | Ersätter spårningsparametrarna. De slås inte samman – skicka hela uppsättningen. |

Se [Spårning och samtycke](/developers/js-client/tracking-and-consent.md).

## Positionering av pop-up-fönster

| Metod | Beskrivning |
|---|---|
| `getTopWindowCenter()` | Returnerar `{ top, left }`, punkten som pop-up-fönstret centreras kring. |
| `setTopWindowCenter(top, left)` | Flyttar den punkten. |

Mittpunkten beräknas en gång, när instansen skapas, utifrån webbläsarfönstrets position på skärmen. Den beräknas inte om när besökaren flyttar eller ändrar storlek på fönstret, så på en sida som är öppen länge kan ett pop-up-fönster öppnas utanför det aktuella fönstret. Beräkna om före bokning om det är viktigt:

```js
entase.setTopWindowCenter(
  window.screenTop + (window.innerHeight / 2),
  window.screenLeft + (window.innerWidth / 2)
);
```

Detta har ingen effekt i panelläget.

## Nedmontering

| Metod | Beskrivning |
|---|---|
| `destroy()` | Tar bort klientens fönsterlyssnare. Instansen kan inte återanvändas. |

Anropa den när komponenten eller vyn som äger instansen försvinner. Efter det loggar `book()` ett fel och gör ingenting – skapa i stället en ny instans.
