From f810a89977f83f16cd38d43c7cad0db6d8a22ce2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Charl=C3=A8ne=20Benke?= <1179011+defrance@users.noreply.github.com> Date: Sun, 22 Feb 2026 23:41:35 +0100 Subject: [PATCH] verify if Hierarchical Responsible is allowed to validate holiday/exp (#37315) * verify if Hierarchical Responsible is allowed to validate holiday/expense * Add messages for holiday and expense report approval * Add French translations for approval messages --- htdocs/langs/en_US/users.lang | 2 ++ htdocs/langs/fr_FR/users.lang | 2 ++ htdocs/user/bank.php | 15 +++++++++++++++ 3 files changed, 19 insertions(+) diff --git a/htdocs/langs/en_US/users.lang b/htdocs/langs/en_US/users.lang index f33f2157910..8383cda5cea 100644 --- a/htdocs/langs/en_US/users.lang +++ b/htdocs/langs/en_US/users.lang @@ -163,3 +163,5 @@ TOTP=TOTP (Time-base One-Time Password) UserRemovedFromGroup=User removed from group UserSetInGroup=User set in group ColorGroup=Color of group +NotHolidayApprover=Not allowed to approve holiday +NotExpenseReportApprover=Not allowed to approve expense report diff --git a/htdocs/langs/fr_FR/users.lang b/htdocs/langs/fr_FR/users.lang index 1957adc4e0c..b0650599dfa 100644 --- a/htdocs/langs/fr_FR/users.lang +++ b/htdocs/langs/fr_FR/users.lang @@ -163,3 +163,5 @@ TOTP=TOTP (mot de passe à usage unique basé sur le temps) UserRemovedFromGroup=utilisateur supprimé du groupe UserSetInGroup=utilisateur défini dans le groupe ColorGroup=Couleur du groupe +NotHolidayApprover=N'est pas autorisé à valider des congés +NotExpenseReportApprover=N'est pas autorisé à valider des notes de frais diff --git a/htdocs/user/bank.php b/htdocs/user/bank.php index 8fbc1040951..6d9117a3cf0 100644 --- a/htdocs/user/bank.php +++ b/htdocs/user/bank.php @@ -10,6 +10,7 @@ * Copyright (C) 2021 Gauthier VERDOL * Copyright (C) 2024-2025 MDW * Copyright (C) 2024-2025 Frédéric France + * Copyright (C) 2026 Charlene Benke * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -420,6 +421,20 @@ if ($action != 'edit' && $action != 'create') { // If not bank account yet, $ac } else { print ''.$langs->trans("None").''; } + if (isModEnabled('holiday')) { + $holidayapprover = new Holiday($db); + $arrayApprover = $holidayapprover->fetch_users_approver_holiday(); + if (!in_array((string) $object->fk_user, $arrayApprover)) { + print '
('.$langs->trans("NotHolidayApprover").')'; + } + } + if (isModEnabled('expensereport')) { + $expensereportapprover = new ExpenseReport($db); + $arrayApprover = $expensereportapprover->fetch_users_approver_expensereport(); + if (!in_array((string) $object->fk_user, $arrayApprover)) { + print '
('.$langs->trans("NotExpenseReportApprover").')'; + } + } } print ''; print "\n";