From 630685dabb9ea8967065ab1260a85fe6cef84c43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maxmili=C3=A1n=20Holomek?= Date: Tue, 19 May 2026 16:19:11 +0200 Subject: [PATCH] translations --- src/Component/BaseGrid.php | 6 +- src/Component/DataGrid.latte | 4 +- .../GridFilter/GridFilterFormTrait.php | 70 +++++++-------- src/lang/ublaboo_datagrid.cs.yml | 88 +++++++++++++------ src/lang/ublaboo_datagrid.en.yml | 45 +++++++++- 5 files changed, 143 insertions(+), 70 deletions(-) diff --git a/src/Component/BaseGrid.php b/src/Component/BaseGrid.php index b70eb18..db0d9a1 100755 --- a/src/Component/BaseGrid.php +++ b/src/Component/BaseGrid.php @@ -113,10 +113,10 @@ final protected function createComponentGrid(): DataGrid public function getYesNoOptions(): array { - // TODO translate + $translator = $this->getTranslator(); return [ - '1' => 'ano', - '0' => 'ne', + '1' => $translator->translate('ublaboo_datagrid.yes'), + '0' => $translator->translate('ublaboo_datagrid.no'), ]; } diff --git a/src/Component/DataGrid.latte b/src/Component/DataGrid.latte index 932c86a..54c04aa 100644 --- a/src/Component/DataGrid.latte +++ b/src/Component/DataGrid.latte @@ -68,7 +68,7 @@ @@ -107,7 +107,7 @@ diff --git a/src/Component/GridFilter/GridFilterFormTrait.php b/src/Component/GridFilter/GridFilterFormTrait.php index 2ab6ce8..6fab77e 100644 --- a/src/Component/GridFilter/GridFilterFormTrait.php +++ b/src/Component/GridFilter/GridFilterFormTrait.php @@ -25,36 +25,36 @@ abstract public function lookup(?string $type, bool $throw = true): ?IComponent; abstract public function redrawControl(?string $snippet = null, bool $redraw = true): void; abstract public function getPresenter(): ?Presenter; - const array TRANSLATIONS = [// TODO překlady - 'sEqual' => 'je rovno', - 'sNotEqual' => 'není rovno', - 'sStart' => 'začíná na', - 'sContain' => 'obsahuje', - 'sNotContain' => 'neobsahuje', - 'sFinish' => 'končí na', - 'sInList' => 'je v seznamu', - 'sIsNull' => 'je prázdné', - 'sIsNotNull' => 'není prázdné', - 'sBefore' => 'před', - 'sAfter' => 'po', - 'sNumEqual' => 'je rovno', - 'sNumNotEqual' => 'není rovno', - 'sGreater' => 'je větší', - 'sSmaller' => 'je menší', - 'sOn' => 'rovno', - 'sNotOn' => 'není rovno', - 'sAt' => 'v', - 'sNotAt' => 'není v', - 'sBetween' => 'mezi', - 'sNotBetween' => 'není mezi', - 'opAnd' => 'a', - 'yes' => 'Ano', - 'no' => 'Ne', - 'bNewCond' => 'Přidat filtr', - 'bAddCond' => 'Přidat podmínku', - 'bUpdateCond' => 'Aktualizovat podmínku', - 'bSubmit' => 'Odeslat', - 'bCancel' => 'Zrušit', + const array TRANSLATIONS = [ + 'sEqual' => 'ublaboo_datagrid.advanced_search.operator.equal', + 'sNotEqual' => 'ublaboo_datagrid.advanced_search.operator.not_equal', + 'sStart' => 'ublaboo_datagrid.advanced_search.operator.starts_with', + 'sContain' => 'ublaboo_datagrid.advanced_search.operator.contains', + 'sNotContain' => 'ublaboo_datagrid.advanced_search.operator.not_contains', + 'sFinish' => 'ublaboo_datagrid.advanced_search.operator.ends_with', + 'sInList' => 'ublaboo_datagrid.advanced_search.operator.in_list', + 'sIsNull' => 'ublaboo_datagrid.advanced_search.operator.is_null', + 'sIsNotNull' => 'ublaboo_datagrid.advanced_search.operator.is_not_null', + 'sBefore' => 'ublaboo_datagrid.advanced_search.operator.before', + 'sAfter' => 'ublaboo_datagrid.advanced_search.operator.after', + 'sNumEqual' => 'ublaboo_datagrid.advanced_search.operator.num_equal', + 'sNumNotEqual' => 'ublaboo_datagrid.advanced_search.operator.num_not_equal', + 'sGreater' => 'ublaboo_datagrid.advanced_search.operator.greater', + 'sSmaller' => 'ublaboo_datagrid.advanced_search.operator.smaller', + 'sOn' => 'ublaboo_datagrid.advanced_search.operator.on', + 'sNotOn' => 'ublaboo_datagrid.advanced_search.operator.not_on', + 'sAt' => 'ublaboo_datagrid.advanced_search.operator.at', + 'sNotAt' => 'ublaboo_datagrid.advanced_search.operator.not_at', + 'sBetween' => 'ublaboo_datagrid.advanced_search.operator.between', + 'sNotBetween' => 'ublaboo_datagrid.advanced_search.operator.not_between', + 'opAnd' => 'ublaboo_datagrid.advanced_search.operator.and', + 'yes' => 'ublaboo_datagrid.yes', + 'no' => 'ublaboo_datagrid.no', + 'bNewCond' => 'ublaboo_datagrid.advanced_search.add_filter', + 'bAddCond' => 'ublaboo_datagrid.advanced_search.add_condition', + 'bUpdateCond' => 'ublaboo_datagrid.advanced_search.update_condition', + 'bSubmit' => 'ublaboo_datagrid.advanced_search.btn_submit', + 'bCancel' => 'ublaboo_datagrid.advanced_search.btn_cancel', ]; const array EVO_API = [ @@ -281,15 +281,15 @@ public function initForm(\ADT\DoctrineForms\Form $form, ?GridFilter $gridFilter) } }, name: 'value', watchForRedraw: [$container['label'], $container['operator']]); - }, isRequiredMessage: 'Zadejte alespoň 1 filtr.'); // TODO translate + }, isRequiredMessage: $form->getTranslator()->translate('ublaboo_datagrid.advanced_search.required_filter')); - $form->addCheckbox('save', 'Uložit'); // TODO translate + $form->addCheckbox('save', 'ublaboo_datagrid.advanced_search.save'); if ($gridFilter) { $form['save']->setDefaultValue(1); } $form->addSection(function() use ($form) { - $form->addText('name', 'Název')// TODO translate + $form->addText('name', 'ublaboo_datagrid.advanced_search.name') ->addConditionOn($form['save'], Form::Equal, true) ->setRequired(); }, name: 'name'); @@ -320,11 +320,11 @@ public function validateForm(\ADT\DoctrineForms\Form $form, array $inputs, ?Grid } if ($gridFilterQuery->count() > 0) { - $form->addError(sprintf('Název %s se již používá', $inputs['name']));// TODO translate + $form->addError(sprintf($form->getTranslator()->translate('ublaboo_datagrid.advanced_search.name_already_used'), $inputs['name']), translate: false); } if (!count($inputs['value'])) { - $form->addError('Není vybraný žádný filter');// TODO translate + $form->addError('ublaboo_datagrid.advanced_search.no_filter_selected'); } } diff --git a/src/lang/ublaboo_datagrid.cs.yml b/src/lang/ublaboo_datagrid.cs.yml index 6eeb29e..20bd24b 100644 --- a/src/lang/ublaboo_datagrid.cs.yml +++ b/src/lang/ublaboo_datagrid.cs.yml @@ -1,30 +1,66 @@ edit: Upravit no_item_found_reset: "Žádné položky nenalezeny. Můžete zkusit restartovat filtr." -here: here +here: zde no_item_found: "Žádné položky nenalezeny." -group_actions: "Group actions" -all: all -reset_filter: "Reset filter" -items: Items -from: from -show: Show -show_all_columns: "Show all columns" -show_default_columns: "Show default columns" -hide_column: "Hide column" -action: Action -previous: Previous -next: Next -choose: Choose -choose_input_required: "Group action text not allow empty value." -execute: Execute -save: Save -cancel: Cancel -multiselect_choose: Choose -filter_submit_button: Filter -multiselect_selected: "{0} selected" -per_page_submit: Change -items_onPage: Items on page -disable_is_active_filter: Vyhledat i v neaktivních -delete.confirm: Opravdu smazat? +group_actions: "Hromadné akce" +all: vše +reset_filter: "Resetovat filtr" +items: Položky +from: z +show: Zobrazit +show_filter: "Zobrazit filtr" +show_all_columns: "Zobrazit všechny sloupce" +show_default_columns: "Zobrazit výchozí sloupce" +hide_column: "Skrýt sloupec" +action: Akce +previous: Předchozí +next: Další +choose: Vyberte +choose_input_required: "Text hromadné akce nesmí být prázdný." +execute: Provést +save: Uložit +cancel: Zrušit +multiselect_choose: Vyberte +filter_submit_button: Filtrovat +multiselect_selected: "{0} vybráno" +per_page_submit: Změnit +items_onPage: "Položek na stránce" +disable_is_active_filter: "Vyhledat i v neaktivních" +delete.confirm: "Opravdu smazat?" delete.label: Smazat -advanced_search.submit: Filtrovat \ No newline at end of file +yes: "Ano" +no: "Ne" +advanced_search.submit: Filtrovat +advanced_search.required_filter: "Zadejte alespoň 1 filtr." +advanced_search.save: Uložit +advanced_search.name: Název +advanced_search.name_already_used: "Název %s se již používá" +advanced_search.no_filter_selected: "Není vybraný žádný filtr" +advanced_search.active_filter: "Aktivní filtr" +advanced_search.operator.equal: "je rovno" +advanced_search.operator.not_equal: "není rovno" +advanced_search.operator.starts_with: "začíná na" +advanced_search.operator.contains: obsahuje +advanced_search.operator.not_contains: neobsahuje +advanced_search.operator.ends_with: "končí na" +advanced_search.operator.in_list: "je v seznamu" +advanced_search.operator.is_null: "je prázdné" +advanced_search.operator.is_not_null: "není prázdné" +advanced_search.operator.before: před +advanced_search.operator.after: po +advanced_search.operator.num_equal: "je rovno" +advanced_search.operator.num_not_equal: "není rovno" +advanced_search.operator.greater: "je větší" +advanced_search.operator.smaller: "je menší" +advanced_search.operator.on: rovno +advanced_search.operator.not_on: "není rovno" +advanced_search.operator.at: v +advanced_search.operator.not_at: "není v" +advanced_search.operator.between: mezi +advanced_search.operator.not_between: "není mezi" +advanced_search.operator.and: a +advanced_search.add_filter: "Přidat filtr" +advanced_search.add_condition: "Přidat podmínku" +advanced_search.update_condition: "Aktualizovat podmínku" +advanced_search.btn_submit: Odeslat +advanced_search.btn_cancel: Zrušit diff --git a/src/lang/ublaboo_datagrid.en.yml b/src/lang/ublaboo_datagrid.en.yml index aff1a65..d38759f 100644 --- a/src/lang/ublaboo_datagrid.en.yml +++ b/src/lang/ublaboo_datagrid.en.yml @@ -8,6 +8,7 @@ reset_filter: "Reset filter" items: Items from: from show: Show +show_filter: "Show filter" show_all_columns: "Show all columns" show_default_columns: "Show default columns" hide_column: "Hide column" @@ -23,7 +24,43 @@ multiselect_choose: Choose filter_submit_button: Filter multiselect_selected: "{0} selected" per_page_submit: Change -items_onPage: Items on page -disable_is_active_filter: Search also in inactive -delete.confirm: Do you really want to delete this item? -delete.label: Delete \ No newline at end of file +items_onPage: "Items on page" +disable_is_active_filter: "Search also in inactive" +delete.confirm: "Do you really want to delete this item?" +delete.label: Delete +yes: "Yes" +no: "No" +advanced_search.submit: Filter +advanced_search.required_filter: "Please enter at least 1 filter." +advanced_search.save: Save +advanced_search.name: Name +advanced_search.name_already_used: "Name %s is already in use" +advanced_search.no_filter_selected: "No filter is selected" +advanced_search.active_filter: "Active filter" +advanced_search.operator.equal: "is equal" +advanced_search.operator.not_equal: "is not equal" +advanced_search.operator.starts_with: "starts with" +advanced_search.operator.contains: "contains" +advanced_search.operator.not_contains: "does not contain" +advanced_search.operator.ends_with: "ends with" +advanced_search.operator.in_list: "is in list" +advanced_search.operator.is_null: "is empty" +advanced_search.operator.is_not_null: "is not empty" +advanced_search.operator.before: before +advanced_search.operator.after: after +advanced_search.operator.num_equal: "is equal" +advanced_search.operator.num_not_equal: "is not equal" +advanced_search.operator.greater: "is greater" +advanced_search.operator.smaller: "is smaller" +advanced_search.operator.on: equal +advanced_search.operator.not_on: "is not equal" +advanced_search.operator.at: at +advanced_search.operator.not_at: "not at" +advanced_search.operator.between: between +advanced_search.operator.not_between: "not between" +advanced_search.operator.and: and +advanced_search.add_filter: "Add filter" +advanced_search.add_condition: "Add condition" +advanced_search.update_condition: "Update condition" +advanced_search.btn_submit: Submit +advanced_search.btn_cancel: Cancel