# Referenční přehled metod

> Kompletní veřejné rozhraní klienta Entase – rezervace, odběr událostí, runtime gettery a settery a ukončení.

Kompletní veřejné rozhraní instance `Entase`.

## Rezervace

| Metoda | Popis |
|---|---|
| `book(eventID, options?)` | Otevře checkout pro událost. Viz [Otevření checkoutu](/developers/js-client/opening-the-checkout.md). |

## Události

| Metoda | Popis |
|---|---|
| `on(name, callback)` | Zaregistruje callback. Pro každý název události lze zaregistrovat jeden – viz [Události](/developers/js-client/events.md). |
| `off(name, callback?)` | Odstraní callback zaregistrovaný pro daný název. Argument callbacku se ignoruje. |

Obě metody přijímají řetězec názvů oddělených mezerami nebo pole názvů.

## Jazykové nastavení

| Metoda | Popis |
|---|---|
| `getLocale()` | Vrátí nakonfigurovanou hodnotu včetně doslovné hodnoty `'auto'`, pokud byla nastavena. |
| `setLocale(locale)` | Změní jazyk checkoutu pro další rezervace. |

`getLocale()` uvádí konfiguraci, nikoli vyhodnocenou hodnotu – při výchozím nastavení vrátí `'auto'`, nikoli jazyk, který bude skutečně použit. Hodnota `'auto'` se vyhodnotí v okamžiku volání `book()` podle atributu `lang` prvku `<html>`, takže změna jazyka stránky po vytvoření klienta se převezme bez dalších kroků.

## Režim checkoutu

| Metoda | Popis |
|---|---|
| `getCheckoutMode()` | Vrátí vyhodnocený režim, `'pane'` nebo `'popup'` – nikdy `'auto'`. |
| `setCheckoutMode(mode)` | Nastaví režim. `'auto'` znovu spustí detekci; nerozpoznaná hodnota se ignoruje. |

Viz [Režimy checkoutu](/developers/js-client/checkout-modes.md).

## Sledování

| Metoda | Popis |
|---|---|
| `getTracking()` | Vrátí objekt aktuálních parametrů sledování. |
| `setTracking(tprm)` | Nahradí parametry sledování. Neslučují se – předejte kompletní sadu. |

Viz [Sledování a souhlas](/developers/js-client/tracking-and-consent.md).

## Umístění vyskakovacího okna

| Metoda | Popis |
|---|---|
| `getTopWindowCenter()` | Vrátí `{ top, left }`, bod, na který je vyskakovací okno vycentrováno. |
| `setTopWindowCenter(top, left)` | Přesune tento bod. |

Středový bod se vypočítá jednou při vytvoření instance podle pozice okna prohlížeče na obrazovce. Při přesunutí nebo změně velikosti okna návštěvníkem se nepřepočítává, takže na stránce otevřené po delší dobu se vyskakovací okno může otevřít mimo aktuální okno. Pokud je to důležité, přepočítejte jej před rezervací:

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

V režimu panelu to nemá žádný účinek.

## Ukončení

| Metoda | Popis |
|---|---|
| `destroy()` | Odstraní naslouchací funkce klienta pro události okna. Instanci nelze znovu použít. |

Zavolejte ji, když komponenta nebo zobrazení, kterému instance patří, zanikne. Poté `book()` zapíše chybu do protokolu a nic neudělá – místo toho vytvořte novou instanci.
