Merge branch '24.0' of git@github.com:Dolibarr/dolibarr.git into 24.0

This commit is contained in:
Laurent Destailleur 2026-08-15 15:50:43 +02:00
commit 6859adbbbb
4 changed files with 10 additions and 5 deletions

View file

@ -3,7 +3,7 @@
* Copyright (C) 2017 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2020 Thibault FOUCART <support@ptibogxiv.net>
* Copyright (C) 2020-2025 Frédéric France <frederic.france@free.fr>
* Copyright (C) 2024-2025 MDW <mdeweerd@users.noreply.github.com>
* Copyright (C) 2024-2026 MDW <mdeweerd@users.noreply.github.com>
*
* 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
@ -384,7 +384,7 @@ class Members extends DolibarrApi
// This properties can't be set/modified with API
throw new RestException(405, 'The property '.$field." can't be set/modified using the APIs");
}
if (in_array($field, array('user_id') && !DolibarrApiAccess::$user->hasRight('user', 'user', 'creer'))) {
if (in_array($field, array('user_id')) && !DolibarrApiAccess::$user->hasRight('user', 'user', 'creer')) {
// This properties can't be set/modified with API without permission user->user->creer
throw new RestException(405, 'The property '.$field." can't be set/modified using the APIs without permission user->user->create");
}
@ -438,7 +438,7 @@ class Members extends DolibarrApi
// This properties can't be set/modified with API
throw new RestException(405, 'The property '.$field." can't be set/modified using the APIs");
}
if (in_array($field, array('user_id') && !DolibarrApiAccess::$user->hasRight('user', 'user', 'creer'))) {
if (in_array($field, array('user_id')) && !DolibarrApiAccess::$user->hasRight('user', 'user', 'creer')) {
// This properties can't be set/modified with API without permission user->user->creer
throw new RestException(405, 'The property '.$field." can't be set/modified using the APIs without the permission user->user->create");
}

View file

@ -752,6 +752,11 @@ if (($filtert != '-1' && $filtert != '-2') || $usergroup > 0) {
}
}
// Add table from hooks
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldListFrom', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
$sql .= $hookmanager->resPrint;
$sql .= " WHERE a.fk_action = ca.id";
$sql .= " AND a.entity IN (".getEntity('agenda').")"; // bookcal is a "virtual view" of agenda

View file

@ -898,7 +898,7 @@ if (empty($reshook)) {
if (!$error) {
// Actions on extra fields
$result = $object->updateExtraField($attribute_name, 'INTERVENTION_MODIFY');
$result = $object->updateExtraField($attribute_name, 'FICHINTER_MODIFY');
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
$error++;

View file

@ -314,7 +314,7 @@ SetMode=Set Payment Type
SetRevenuStamp=Set revenue stamp
RecurringInvoices=Recurring invoices
RecurringInvoice=Recurring invoice
RecurringInvoiceSource=Source recurring invoice
RecurringInvoiceSource=Recurring invoice source
RepeatableInvoice=Template invoice
RepeatableInvoices=Template invoices
RecurringInvoicesJob=Generation of recurring invoices (sales invoices)