# Tłumaczenia

## Zakładka „Tłumaczenia”

Zakładka **Tłumaczenia**, dostępna w edytorze wniosku, umożliwia dodawanie tłumaczeń dla wniosku, komponentów złożonych oraz komponentów biznesowych. W tym miejscu można również dodawać klucze nadpisujące domyślne treści wniosku (szczegóły w rozdziale *Platformowe klucze tłumaczeń*).

Zakładka ta pozwala także na dodawanie lub modyfikację komunikatów walidatorów powiązanych z komponentami (szczegóły w rozdziałach [*Walidacje złożone*](/budowanie-aplikacji/interfejs-uzytkownika/formularze/praca-z-komponentami-bazowymi/walidacja-wartosci-komponentow/walidacje-zlozone-wlasne.md) i [*Walidatory skryptowe*](/budowanie-aplikacji/logika-biznesowa/scriptcode/walidatory-skryptowe-validationscript.md)).

<figure><img src="/files/MPiJMR58TryFesKjzoW0" alt=""><figcaption><p><em><strong>Ilustracja 1.</strong> Okno edytora wniosku - zakładka "Tłumaczenia"</em></p></figcaption></figure>

***

### Edycja klucza i wartości

Po wybraniu komórki w tabeli można edytować zarówno klucz, jak i wartości tłumaczeń dla poszczególnych języków.

W przypadku wartości wielolinijkowych pole edycji automatycznie rozszerzy się, aby pokazać całą zawartość.

<figure><img src="/files/JYK3wFXPZ7BWOasUEtVj" alt=""><figcaption><p><em><strong>Ilustracja 2.</strong> Edycja tłumaczeń</em></p></figcaption></figure>

***

### Usuwanie klucza

Aby usunąć cały wiersz tłumaczenia, należy kliknąć ikonę znajdującą się po prawej stronie danego klucza.

<figure><img src="/files/OWNImOUxisDDmdTcBxoQ" alt=""><figcaption><p><em><strong>Ilustracja 3.</strong> Usuwanie klucza tłumaczeń</em></p></figcaption></figure>

Po usunięciu klucza w dolnej części ekranu pojawi się powiadomienie z możliwością cofnięcia operacji.

<figure><img src="/files/zoMayi77jr4PVqhIpoWn" alt=""><figcaption><p><em><strong>Ilustracja 4.</strong> Powiadomienie z opcją cofnięcia usunięcia klucza</em></p></figcaption></figure>

***

### Dodawanie klucza

Możliwe jest dodanie tłumaczenia dla każdego elementu wniosku wyświetlającego tekst – tytułów, opisów, etykiet, komunikatów walidacyjnych oraz treści zwracanych przez usługi zewnętrzne.

Klucze odpowiadające komunikatom błędów walidacyjnych dodawane są automatycznie po dodaniu walidatora. Wyjątek stanowią **walidatory skryptowe**, dla których klucz należy dodać ręcznie.

Aby dodać nowy klucz, używamy przycisku **Dodaj klucz** znajdującego się nad kolumnami języków\.4

<figure><img src="/files/cnQyhG2QaC4lyPDZRIgd" alt=""><figcaption><p><em><strong>Ilustracja 5.</strong> Przycisk służący do dodania nowego klucza tłumaczeń</em></p></figcaption></figure>

Kliknięcie dodaje pusty wiersz, w którym należy uzupełnić co najmniej nazwę klucza (kolumna *KLUCZ*).\
Jeśli pole pozostanie puste, system automatycznie nada nazwę:

* `pusty`
* `pusty.kopia`
* `pusty.kopia1`\
  i kolejne, w razie potrzeby.

<figure><img src="/files/B5pPe8fImCwQ8po9k67L" alt=""><figcaption><p><em><strong>Ilustracja 6.</strong> Wiersz po dodaniu klucza i nieuzupełnieniu jego nazwy</em></p></figcaption></figure>

***

### Wybór domyślnego języka (taga)

Domyślnego języka można dokonać w nagłówku tabeli. Opcja ta jest dostępna wyłącznie w trakcie edycji procesu.

Domyślnie ustawionym językiem jest **polski**.

Aby ustawić język jako domyślny, należy kliknąć ikonę gwiazdki obok kodu języka. ![](/files/0tlm6D1De8LPrfYgsBav)\
Żółta gwiazdka oznacza aktualnie wybrany domyślny język. ![](/files/C97ppmdmbQCgKVIRbFT9)

<figure><img src="/files/lwTPeJBUflle52GvKym4" alt=""><figcaption><p><em><strong>Ilustracja 7.</strong> Wybór języka tłumaczeń</em></p></figcaption></figure>

***

### Filtrowanie pustych tłumaczeń

Aby ukryć klucze pozbawione tłumaczeń, należy kliknąć ikonę znajdującą się w kolumnie **KLUCZ**.

Aktywny filtr jest oznaczony przekreślonym symbolem „oczka” ![](/files/lLS4JpDp3eob6y7pY5WO). Dodatkowo wyświetlana jest informacja o liczbie ukrytych kluczy ![](/files/FNhMHSfhgbFFunPhCsHj).

***

### Wyszukiwanie tłumaczeń

Wyszukiwarka działa zarówno po nazwach kluczy, jak i po wartościach tłumaczeń.

<figure><img src="/files/aq2VUpm3ywyFNplSV9UR" alt=""><figcaption><p><em><strong>Ilustracja 8.</strong> Wyszukiwanie tłumaczeń</em></p></figcaption></figure>

Jeśli nie znaleziono wyników, wyświetlany jest komunikat:

```
Nie znaleźliśmy klucza lub tłumaczenia: ${szukanyTekst}
```

W tym momencie użytkownik otrzymuje również propozycję dodania nowego klucza.\
Po dodaniu klucza pole wyszukiwania zostaje automatycznie wyczyszczone.

***

### Dodawanie i edycja języków

Aby dodać nowy język, należy kliknąć przycisk dodawania nowej kolumny znajdujący się po prawej stronie tabeli.

<figure><img src="/files/df7gQ9PlyPhw703cxSiE" alt=""><figcaption><p><em><strong>Ilustracja 9.</strong> Przycisk dodawania nowego języka tłumaczeń</em></p></figcaption></figure>

Nazwa (tag) języka może zostać zmieniona poprzez kliknięcie w jego nagłówek.

**Kod języka** powinien być zgodny ze standardem **ISO 639**, zapisany małymi literami.\
Lista obsługiwanych kodów dostępna jest pod adresem:\
<https://www.oracle.com/technetwork/java/javase/java8locales-2095355.html>

***

## Ustalanie języka obowiązującego podczas otwierania wniosku

Przy podjęciu wniosku do wypełnienia system ustala język w następującej kolejności:

#### 1. Parametr „locale” w URL

Jeśli w adresie wejściowym znajduje się parametr `locale`, a szablon zawiera tłumaczenia dla podanego języka, to właśnie ten język zostanie użyty.

**Przykład:**

```
https://url.eximee/webforms/ek/index.html?locale=en
```

***

#### 2. Akceptowane języki przeglądarki (Accept-Language)

Jeśli parametr URL nie jest dostępny, a w konfiguracji Webforms parametr:

```
server/locale/browserLocaleAllowed = true
```

to system pobierze język z nagłówka `Accept-Language`, pod warunkiem że szablon posiada odpowiednie tłumaczenia.

**Przykład:**

```
https://url.eximee/webforms/ek/index.html
Accept-Language: pl-PL,pl;q=0.9,en-US;q=0.8,en;q=0.7,en-gb;q=0.6,fr-FR;q=0.4,fr;q=0.3,es-CO;q=0.2,es;q=0.1
```

***

#### 3. Domyślny język szablonu

Jeśli żaden z powyższych warunków nie zostanie spełniony, stosowany jest **domyślny język szablonu**, ustawiony w Eximee Designer.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.eximee.com/budowanie-aplikacji/interfejs-uzytkownika/formularze/tworzenie-formularza/tlumaczenia.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
