diff --git a/UPGRADING-3.md b/UPGRADING-3.md
new file mode 100644
index 000000000..0a79d1d43
--- /dev/null
+++ b/UPGRADING-3.md
@@ -0,0 +1,18 @@
+# Upgrading Kimai - Version 3.x
+
+_Make sure to create a backup before you start!_
+
+Read the [updates documentation](https://www.kimai.org/documentation/updates.html) to find out how you can upgrade your Kimai installation to the latest stable release.
+
+Check below if there are more version specific steps required, which need to be executed after the normal update process.
+Perform EACH version specific task between your version and the new one, otherwise you risk data inconsistency or a broken installation.
+
+## 3.0
+
+**!! This release requires minimum PHP version 8.4 !!**
+
+### Developer
+
+Removed translations:
+- `action.edit`: use `edit` instead
+- `my.profile`: use `user_profile` instead
diff --git a/UPGRADING.md b/UPGRADING.md
index a71a15e87..67733df6e 100644
--- a/UPGRADING.md
+++ b/UPGRADING.md
@@ -1,4 +1,4 @@
-# Upgrading Kimai - Version2.x
+# Upgrading Kimai - Version 2.x
_Make sure to create a backup before you start!_
diff --git a/src/EventSubscriber/UserDetailsSubscriber.php b/src/EventSubscriber/UserDetailsSubscriber.php
index 0d2405c88..deb4d0fa1 100644
--- a/src/EventSubscriber/UserDetailsSubscriber.php
+++ b/src/EventSubscriber/UserDetailsSubscriber.php
@@ -43,10 +43,10 @@ class UserDetailsSubscriber implements EventSubscriberInterface
$event->setUser($user);
if ($this->auth->isGranted('view', $user)) {
- $event->addLink(new MenuItemModel('user_profile', 'my.profile', 'user_profile', ['username' => $user->getUserIdentifier()]));
+ $event->addLink(new MenuItemModel('user_profile', 'user_profile', 'user_profile', ['username' => $user->getUserIdentifier()]));
}
if ($this->auth->isGranted('edit', $user)) {
- $event->addLink(new MenuItemModel('user_profile_edit', 'action.edit', 'user_profile_edit', ['username' => $user->getUserIdentifier()]));
+ $event->addLink(new MenuItemModel('user_profile_edit', 'edit', 'user_profile_edit', ['username' => $user->getUserIdentifier()]));
}
if ($this->auth->isGranted('password', $user)) {
$event->addLink(new MenuItemModel('password', 'profile.password', 'user_profile_password', ['username' => $user->getUserIdentifier()]));
diff --git a/src/Form/MultiUpdate/MultiUpdateTableDTO.php b/src/Form/MultiUpdate/MultiUpdateTableDTO.php
index 15db7aa16..a9c92a805 100644
--- a/src/Form/MultiUpdate/MultiUpdateTableDTO.php
+++ b/src/Form/MultiUpdate/MultiUpdateTableDTO.php
@@ -71,7 +71,7 @@ class MultiUpdateTableDTO
public function addUpdate(string $url): MultiUpdateTableDTO
{
- $this->actions['action.edit'] = $url;
+ $this->actions['edit'] = $url;
return $this;
}
diff --git a/templates/activity/details.html.twig b/templates/activity/details.html.twig
index a38f75ba0..3033c96a8 100644
--- a/templates/activity/details.html.twig
+++ b/templates/activity/details.html.twig
@@ -18,7 +18,7 @@
{% endblock %}
{% block box_tools %}
{% if can_edit %}
- {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'action.edit', 'url': path('admin_activity_edit', {'id': activity.id})}) }}
+ {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'edit', 'url': path('admin_activity_edit', {'id': activity.id})}) }}
{% endif %}
{% endblock %}
{% block box_body_class %}p-0{% endblock %}
diff --git a/templates/contract/status.html.twig b/templates/contract/status.html.twig
index 1066db8c4..b788e4f55 100644
--- a/templates/contract/status.html.twig
+++ b/templates/contract/status.html.twig
@@ -12,7 +12,7 @@
{% set warningMsg %}
{{ 'work_times_should.none_configured'|trans }}
{% if is_granted('contract', user) %}
- {{ 'action.edit'|trans }}
+ {{ 'edit'|trans }}
{% endif %}
{% endset %}
{% from '@theme/components/alert.html.twig' import alert %}
diff --git a/templates/customer/details.html.twig b/templates/customer/details.html.twig
index 6131e4647..34e164675 100644
--- a/templates/customer/details.html.twig
+++ b/templates/customer/details.html.twig
@@ -13,7 +13,7 @@
{% endblock %}
{% block box_tools %}
{% if can_edit %}
- {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'action.edit', 'url': path('admin_customer_edit', {'id': customer.id})}) }}
+ {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'edit', 'url': path('admin_customer_edit', {'id': customer.id})}) }}
{% endif %}
{% endblock %}
{% block box_body_class %}p-0{% endblock %}
diff --git a/templates/embeds/teams.html.twig b/templates/embeds/teams.html.twig
index 977efe04b..793793d40 100644
--- a/templates/embeds/teams.html.twig
+++ b/templates/embeds/teams.html.twig
@@ -14,7 +14,7 @@
{{ widgets.card_tool_button('create', {'title': 'team.create_default', 'translation_domain': 'teams', 'url': route_create}) }}
{% endif %}
{% if route_edit is not null %}
- {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'action.edit', 'url': route_edit}) }}
+ {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'edit', 'url': route_edit}) }}
{% endif %}
{% endblock %}
{% block box_attributes %}id="team_listing_box"{% endblock %}
diff --git a/templates/permission/edit_role.html.twig b/templates/permission/edit_role.html.twig
index 0dfe5be48..53b1a8ef6 100644
--- a/templates/permission/edit_role.html.twig
+++ b/templates/permission/edit_role.html.twig
@@ -2,7 +2,7 @@
{% block main %}
{{ include(kimai_context.modalRequest ? 'default/_form_modal.html.twig' : 'default/_form.html.twig', {
- 'title': (role.id ? 'action.edit'|trans : 'create'|trans) ~ ': ' ~ 'user_role.title'|trans,
+ 'title': (role.id ? 'edit'|trans : 'create'|trans) ~ ': ' ~ 'user_role.title'|trans,
'form': form,
'back': path('admin_user_permissions')
}) }}
diff --git a/templates/project/details.html.twig b/templates/project/details.html.twig
index 3d02ef5c2..b0790ad38 100644
--- a/templates/project/details.html.twig
+++ b/templates/project/details.html.twig
@@ -10,7 +10,7 @@
{% block box_attributes %}id="project_details_box"{% endblock %}
{% block box_tools %}
{% if can_edit %}
- {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'action.edit', 'url': path('admin_project_edit', {'id': project.id})}) }}
+ {{ widgets.card_tool_button('edit', {'class': 'modal-ajax-form open-edit', 'title': 'edit', 'url': path('admin_project_edit', {'id': project.id})}) }}
{% endif %}
{% endblock %}
{% block box_title %}
diff --git a/templates/timesheet/multi-update.html.twig b/templates/timesheet/multi-update.html.twig
index 3122dc045..3f6c0875a 100644
--- a/templates/timesheet/multi-update.html.twig
+++ b/templates/timesheet/multi-update.html.twig
@@ -3,7 +3,7 @@
{% block main %}
{% set formEditTemplate = 'default/_form.html.twig' %}
{% set formOptions = {
- 'title': 'update_multiple'|trans({'%action%': 'action.edit'|trans, '%count%': dto.entities|length}),
+ 'title': 'update_multiple'|trans({'%action%': 'edit'|trans, '%count%': dto.entities|length}),
'form': form,
'back': path(back),
} %}
diff --git a/tests/Form/MultiUpdate/MultiUpdateTableDTOTest.php b/tests/Form/MultiUpdate/MultiUpdateTableDTOTest.php
index e6be0c971..acedf0be4 100644
--- a/tests/Form/MultiUpdate/MultiUpdateTableDTOTest.php
+++ b/tests/Form/MultiUpdate/MultiUpdateTableDTOTest.php
@@ -42,7 +42,7 @@ class MultiUpdateTableDTOTest extends TestCase
self::assertEquals(
[
'' => '',
- 'action.edit' => 'foo',
+ 'edit' => 'foo',
'delete' => 'bar',
'test' => 'hello/world'
],
diff --git a/tests/Form/MultiUpdate/TimesheetMultiUpdateDTOTest.php b/tests/Form/MultiUpdate/TimesheetMultiUpdateDTOTest.php
index 35709a0d0..6b8c595af 100644
--- a/tests/Form/MultiUpdate/TimesheetMultiUpdateDTOTest.php
+++ b/tests/Form/MultiUpdate/TimesheetMultiUpdateDTOTest.php
@@ -56,7 +56,7 @@ class TimesheetMultiUpdateDTOTest extends TestCase
self::assertEquals(
[
'' => '',
- 'action.edit' => 'foo',
+ 'edit' => 'foo',
'delete' => 'bar',
'test' => 'hello/world'
],
diff --git a/translations/messages.ar.xlf b/translations/messages.ar.xlf
index e48d310a4..f5d1fd157 100644
--- a/translations/messages.ar.xlf
+++ b/translations/messages.ar.xlf
@@ -642,10 +642,6 @@
attachments
ملفات
-
- my.profile
- ملفي التعريفي
-
search
بحث
diff --git a/translations/messages.cs.xlf b/translations/messages.cs.xlf
index 5ba8dae3b..91eb1e497 100644
--- a/translations/messages.cs.xlf
+++ b/translations/messages.cs.xlf
@@ -914,10 +914,6 @@
update_multiple
%action% %count% záznamů
-
- my.profile
- Můj profil
-
search
Hledat
diff --git a/translations/messages.da.xlf b/translations/messages.da.xlf
index 4cd591fcc..c02a85f5e 100644
--- a/translations/messages.da.xlf
+++ b/translations/messages.da.xlf
@@ -50,10 +50,6 @@
search
Søg
-
- my.profile
- Min profil
-
update_multiple
%action% %count% indlæg
diff --git a/translations/messages.de.xlf b/translations/messages.de.xlf
index e158bb7b2..dabebcba5 100644
--- a/translations/messages.de.xlf
+++ b/translations/messages.de.xlf
@@ -90,10 +90,6 @@
orderBy
Sortieren nach
-
- my.profile
- Mein Profil
-
update_multiple
%action% von %count% Einträgen
diff --git a/translations/messages.de_CH.xlf b/translations/messages.de_CH.xlf
index cf6c14333..1923214de 100644
--- a/translations/messages.de_CH.xlf
+++ b/translations/messages.de_CH.xlf
@@ -890,10 +890,6 @@
update_multiple
%action% von %count% Einträgen
-
- my.profile
- Mein Profil
-
search
Suchen
diff --git a/translations/messages.el.xlf b/translations/messages.el.xlf
index 520201146..a6cf1c265 100644
--- a/translations/messages.el.xlf
+++ b/translations/messages.el.xlf
@@ -78,10 +78,6 @@
orderBy
Αναδιάταξη με
-
- my.profile
- Το προφίλ μου
-
update_multiple
%action% %count% καταχωρήσεων
diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf
index 0e6593154..d41262bbd 100644
--- a/translations/messages.en.xlf
+++ b/translations/messages.en.xlf
@@ -90,10 +90,6 @@
orderBy
Order by
-
- my.profile
- My profile
-
update_multiple
%action% %count% entries
diff --git a/translations/messages.eo.xlf b/translations/messages.eo.xlf
index a21584960..d3c9efe6c 100644
--- a/translations/messages.eo.xlf
+++ b/translations/messages.eo.xlf
@@ -54,10 +54,6 @@
search
Serĉi
-
- my.profile
- Mia profilo
-
update_multiple
%action% %count% elementojn
diff --git a/translations/messages.es.xlf b/translations/messages.es.xlf
index c327074fd..883f8d9fa 100644
--- a/translations/messages.es.xlf
+++ b/translations/messages.es.xlf
@@ -50,10 +50,6 @@
search
Buscar
-
- my.profile
- Mi perfil
-
Password
Contraseña
diff --git a/translations/messages.et.xlf b/translations/messages.et.xlf
index fcfafb251..6f12d6b55 100644
--- a/translations/messages.et.xlf
+++ b/translations/messages.et.xlf
@@ -114,10 +114,6 @@
desc
Kahanev
-
- my.profile
- Minu profiil
-
attachments
Fail
diff --git a/translations/messages.eu.xlf b/translations/messages.eu.xlf
index 584e36d99..dbdc5aeee 100644
--- a/translations/messages.eu.xlf
+++ b/translations/messages.eu.xlf
@@ -50,10 +50,6 @@
search
Bilatu
-
- my.profile
- Nire kontua
-
update_multiple
%action% %count% sarrera
diff --git a/translations/messages.fa.xlf b/translations/messages.fa.xlf
index 87b08fa2e..4e96050ac 100644
--- a/translations/messages.fa.xlf
+++ b/translations/messages.fa.xlf
@@ -54,10 +54,6 @@
search
جستجو
-
- my.profile
- پروفایل من
-
update_multiple
%action% %count% ورودی ها؟
diff --git a/translations/messages.fi.xlf b/translations/messages.fi.xlf
index 9218de149..a20253a39 100644
--- a/translations/messages.fi.xlf
+++ b/translations/messages.fi.xlf
@@ -54,10 +54,6 @@
search
Etsi
-
- my.profile
- Oma profiili
-
update_multiple
%action% %count% tapahtumaa
diff --git a/translations/messages.fo.xlf b/translations/messages.fo.xlf
index 01ff5b471..64167829e 100644
--- a/translations/messages.fo.xlf
+++ b/translations/messages.fo.xlf
@@ -346,10 +346,6 @@
entryState.not_exported
Opið
-
- my.profile
- Mín vangi
-
orderBy
Raðfest eftir
diff --git a/translations/messages.fr.xlf b/translations/messages.fr.xlf
index e5e9c861b..d7d8197ea 100644
--- a/translations/messages.fr.xlf
+++ b/translations/messages.fr.xlf
@@ -802,10 +802,6 @@
update_multiple
%action% %count% entrées
-
- my.profile
- Mon profil
-
search
Rechercher
diff --git a/translations/messages.he.xlf b/translations/messages.he.xlf
index ed9d0645d..22b8e42b5 100644
--- a/translations/messages.he.xlf
+++ b/translations/messages.he.xlf
@@ -54,10 +54,6 @@
search
חיפוש
-
- my.profile
- הפרופיל שלי
-
update_multiple
%count% רשומות %action%
diff --git a/translations/messages.hr.xlf b/translations/messages.hr.xlf
index 6119efac6..4c0ca5b5e 100644
--- a/translations/messages.hr.xlf
+++ b/translations/messages.hr.xlf
@@ -78,10 +78,6 @@
orderBy
Redoslijed
-
- my.profile
- Moj profil
-
update_multiple
%action% %count% unosa
diff --git a/translations/messages.hu.xlf b/translations/messages.hu.xlf
index e7a6fe4d0..0dfc5762f 100644
--- a/translations/messages.hu.xlf
+++ b/translations/messages.hu.xlf
@@ -714,10 +714,6 @@
attachments
Fájlok
-
- my.profile
- Profilom
-
search
Keresés
diff --git a/translations/messages.id.xlf b/translations/messages.id.xlf
index 7af1a8b89..325903ec5 100644
--- a/translations/messages.id.xlf
+++ b/translations/messages.id.xlf
@@ -218,10 +218,6 @@
file
Berkas
-
- my.profile
- Profil saya
-
api_token
Kata sandi API
diff --git a/translations/messages.it.xlf b/translations/messages.it.xlf
index 682fb980c..01eeb3811 100644
--- a/translations/messages.it.xlf
+++ b/translations/messages.it.xlf
@@ -54,10 +54,6 @@
search
Cerca
-
- my.profile
- Il mio profilo
-
update_multiple
%action% %count% voci
diff --git a/translations/messages.ja.xlf b/translations/messages.ja.xlf
index 70a2a876a..b44e40488 100644
--- a/translations/messages.ja.xlf
+++ b/translations/messages.ja.xlf
@@ -710,10 +710,6 @@
orderBy
並べ替え
-
- my.profile
- プロフィール
-
update_multiple
%count%個のエントリーを%action%しますか
diff --git a/translations/messages.ko.xlf b/translations/messages.ko.xlf
index 1c41b2ceb..1766445d0 100644
--- a/translations/messages.ko.xlf
+++ b/translations/messages.ko.xlf
@@ -754,10 +754,6 @@
attachments
파일
-
- my.profile
- 내 프로필
-
search
찾기
diff --git a/translations/messages.nb_NO.xlf b/translations/messages.nb_NO.xlf
index 5962a1157..61e3aadc4 100644
--- a/translations/messages.nb_NO.xlf
+++ b/translations/messages.nb_NO.xlf
@@ -58,10 +58,6 @@
orderBy
Sorter etter
-
- my.profile
- Min profil
-
update_multiple
%action% %count% oppføringer
diff --git a/translations/messages.nl.xlf b/translations/messages.nl.xlf
index 6410e9215..6b3ce98f6 100644
--- a/translations/messages.nl.xlf
+++ b/translations/messages.nl.xlf
@@ -50,10 +50,6 @@
search
Zoeken
-
- my.profile
- Mijn profiel
-
Password
Wachtwoord
diff --git a/translations/messages.pa.xlf b/translations/messages.pa.xlf
index 8cc5f8cc4..fdc784dab 100644
--- a/translations/messages.pa.xlf
+++ b/translations/messages.pa.xlf
@@ -162,10 +162,6 @@
file
ਫਾਈਲ
-
- my.profile
- ਮੇਰੀ ਪ੍ਰੋਫਾਈਲ
-
comment
ਟਿੱਪਣੀ
diff --git a/translations/messages.pl.xlf b/translations/messages.pl.xlf
index 26daa7b5d..abf691f70 100644
--- a/translations/messages.pl.xlf
+++ b/translations/messages.pl.xlf
@@ -50,10 +50,6 @@
search
Szukaj
-
- my.profile
- Mój profil
-
update_multiple
%action% %count% wpisy
diff --git a/translations/messages.pt.xlf b/translations/messages.pt.xlf
index 475b13b4f..3bdbbe235 100644
--- a/translations/messages.pt.xlf
+++ b/translations/messages.pt.xlf
@@ -898,10 +898,6 @@
update_multiple
%action% %count% entradas
-
- my.profile
- Meu perfil
-
search
Pesquisar
diff --git a/translations/messages.pt_BR.xlf b/translations/messages.pt_BR.xlf
index 43123ab27..bdac50989 100644
--- a/translations/messages.pt_BR.xlf
+++ b/translations/messages.pt_BR.xlf
@@ -702,10 +702,6 @@
attachments
Arquivos
-
- my.profile
- Meu perfil
-
search
Procurar
diff --git a/translations/messages.ro.xlf b/translations/messages.ro.xlf
index 640f2bdb0..07214434a 100644
--- a/translations/messages.ro.xlf
+++ b/translations/messages.ro.xlf
@@ -54,10 +54,6 @@
search
Caută
-
- my.profile
- Profilul meu
-
update_multiple
%action% %count% intrări
diff --git a/translations/messages.ru.xlf b/translations/messages.ru.xlf
index 7d8ffe0c8..84bb53936 100644
--- a/translations/messages.ru.xlf
+++ b/translations/messages.ru.xlf
@@ -710,10 +710,6 @@
attachments
Файлы
-
- my.profile
- Мой профиль
-
search
Поиск
diff --git a/translations/messages.sk.xlf b/translations/messages.sk.xlf
index feb258a7e..927390a38 100644
--- a/translations/messages.sk.xlf
+++ b/translations/messages.sk.xlf
@@ -50,10 +50,6 @@
search
Hľadať
-
- my.profile
- Môj profil
-
update_multiple
%action% %count% záznamov
diff --git a/translations/messages.sl.xlf b/translations/messages.sl.xlf
index aeea32993..0b46f4d33 100644
--- a/translations/messages.sl.xlf
+++ b/translations/messages.sl.xlf
@@ -98,10 +98,6 @@
asc
Naraščajoče
-
- my.profile
- Moj profil
-
update_multiple
%action% %count% vnosov
diff --git a/translations/messages.sv.xlf b/translations/messages.sv.xlf
index f0f6df003..ced32a0c9 100644
--- a/translations/messages.sv.xlf
+++ b/translations/messages.sv.xlf
@@ -758,10 +758,6 @@
attachments
Filer
-
- my.profile
- Min profil
-
search
Sök
diff --git a/translations/messages.ta.xlf b/translations/messages.ta.xlf
index 3c2a9cd2d..8f9616a9d 100644
--- a/translations/messages.ta.xlf
+++ b/translations/messages.ta.xlf
@@ -554,10 +554,6 @@
orderBy
இதால் அடுக்கு
-
- my.profile
- தன் விவரக்குறிப்பு
-
update_multiple
%action%%count% உள்ளீடுகள்
diff --git a/translations/messages.tr.xlf b/translations/messages.tr.xlf
index eacf15518..bfe55d195 100644
--- a/translations/messages.tr.xlf
+++ b/translations/messages.tr.xlf
@@ -50,10 +50,6 @@
search
Ara
-
- my.profile
- Profilim
-
Password
Parola
diff --git a/translations/messages.uk.xlf b/translations/messages.uk.xlf
index db4581b64..fbf58e606 100644
--- a/translations/messages.uk.xlf
+++ b/translations/messages.uk.xlf
@@ -162,10 +162,6 @@
remove_default
Видалити обране в пошуку
-
- my.profile
- Мій профіль
-
rates.empty
Розцінки ще не додано.
diff --git a/translations/messages.vi.xlf b/translations/messages.vi.xlf
index fb33a694b..8d1f2ebed 100644
--- a/translations/messages.vi.xlf
+++ b/translations/messages.vi.xlf
@@ -54,10 +54,6 @@
search
Tìm kiếm
-
- my.profile
- Thông tin của tôi
-
update_multiple
%action% %count% giá trị
diff --git a/translations/messages.zh_CN.xlf b/translations/messages.zh_CN.xlf
index 597178eeb..df7fc2322 100644
--- a/translations/messages.zh_CN.xlf
+++ b/translations/messages.zh_CN.xlf
@@ -50,10 +50,6 @@
search
搜索
-
- my.profile
- 我的资料
-
update_multiple
%action% %count% 条目
diff --git a/translations/messages.zh_Hant.xlf b/translations/messages.zh_Hant.xlf
index c4325e87c..55d590765 100644
--- a/translations/messages.zh_Hant.xlf
+++ b/translations/messages.zh_Hant.xlf
@@ -82,10 +82,6 @@
orderBy
排序依據
-
- my.profile
- 我的帳號
-
update_multiple
是否要%action% %count% 條項目