# Dokumentacja metod

> Pełny publiczny interfejs klienta Entase – rezerwacje, subskrypcja zdarzeń, metody pobierające i ustawiające wartości w czasie działania oraz zwalnianie zasobów.

Pełny publiczny interfejs instancji `Entase`.

## Rezerwacja

| Metoda | Opis |
|---|---|
| `book(eventID, options?)` | Otwiera proces zakupu dla wydarzenia. Zobacz [Otwieranie procesu zakupu](/developers/js-client/opening-the-checkout.md). |

## Zdarzenia

| Metoda | Opis |
|---|---|
| `on(name, callback)` | Rejestruje funkcję zwrotną. Jedną dla każdej nazwy zdarzenia – zobacz [Zdarzenia](/developers/js-client/events.md). |
| `off(name, callback?)` | Usuwa funkcję zwrotną zarejestrowaną dla danej nazwy. Argument funkcji zwrotnej jest ignorowany. |

Obie metody akceptują ciąg nazw rozdzielonych spacjami lub tablicę nazw.

## Ustawienia regionalne

| Metoda | Opis |
|---|---|
| `getLocale()` | Zwraca skonfigurowaną wartość, w tym dosłowną wartość `'auto'`, jeśli została ustawiona. |
| `setLocale(locale)` | Zmienia język procesu zakupu dla późniejszych rezerwacji. |

`getLocale()` zwraca konfigurację, a nie rozstrzygniętą wartość – przy ustawieniu domyślnym zwraca `'auto'`, a nie język, który zostanie faktycznie użyty. Wartość `'auto'` jest rozstrzygana w momencie wywołania `book()` na podstawie atrybutu `lang` elementu `<html>`, dlatego zmiana języka strony po utworzeniu klienta jest uwzględniana bez żadnych dodatkowych działań.

## Tryb procesu zakupu

| Metoda | Opis |
|---|---|
| `getCheckoutMode()` | Zwraca rozstrzygnięty tryb, `'pane'` lub `'popup'` – nigdy `'auto'`. |
| `setCheckoutMode(mode)` | Ustawia tryb. `'auto'` ponownie uruchamia wykrywanie; nierozpoznana wartość jest ignorowana. |

Zobacz [Tryby procesu zakupu](/developers/js-client/checkout-modes.md).

## Śledzenie

| Metoda | Opis |
|---|---|
| `getTracking()` | Zwraca obiekt bieżących parametrów śledzenia. |
| `setTracking(tprm)` | Zastępuje parametry śledzenia. Nie są scalane – przekaż kompletny zestaw. |

Zobacz [Śledzenie i zgoda](/developers/js-client/tracking-and-consent.md).

## Pozycjonowanie okna pop-up

| Metoda | Opis |
|---|---|
| `getTopWindowCenter()` | Zwraca `{ top, left }`, punkt, względem którego wyśrodkowane jest okno pop-up. |
| `setTopWindowCenter(top, left)` | Przesuwa ten punkt. |

Punkt środkowy jest obliczany tylko raz, podczas tworzenia instancji, na podstawie położenia okna przeglądarki na ekranie. Nie jest obliczany ponownie, gdy odwiedzający przesunie lub zmieni rozmiar okna, dlatego na stronie otwartej przez długi czas okno pop-up może otworzyć się z dala od bieżącego okna. Jeśli to ma znaczenie, oblicz go ponownie przed rezerwacją:

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

Nie ma to wpływu w trybie panelu.

## Zwalnianie zasobów

| Metoda | Opis |
|---|---|
| `destroy()` | Usuwa nasłuchiwacze okna klienta. Instancji nie można użyć ponownie. |

Wywołaj ją, gdy komponent lub widok będący właścicielem instancji zostanie usunięty. Po tym `book()` zapisuje błąd w logu i nic nie robi – zamiast tego utwórz nową instancję.
