From aac2ff7b5b011009f1ba0dccfefb2acae072879f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Charl=C3=A8ne=20Benke?= <1179011+defrance@users.noreply.github.com> Date: Mon, 11 Aug 2025 19:09:12 +0200 Subject: [PATCH] add ticket on list document by api (#34909) --- htdocs/api/class/api_documents.class.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/htdocs/api/class/api_documents.class.php b/htdocs/api/class/api_documents.class.php index d3cb9e8036c..55e98e0c4a7 100644 --- a/htdocs/api/class/api_documents.class.php +++ b/htdocs/api/class/api_documents.class.php @@ -501,7 +501,7 @@ class Documents extends DolibarrApi } $upload_dir = $conf->fournisseur->dir_output."/facture/".get_exdir($object->id, 2, 0, 0, $object, 'invoice_supplier').dol_sanitizeFileName($object->ref); - } elseif ($modulepart == 'produit' || $modulepart == 'product') { + } elseif ($modulepart == 'produit' || $modulepart == 'product' || $modulepart == 'service') { require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; if (!DolibarrApiAccess::$user->hasRight('produit', 'lire')) { @@ -545,6 +545,20 @@ class Documents extends DolibarrApi } $upload_dir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($object->ref); + } elseif ($modulepart == 'ticket') { + require_once DOL_DOCUMENT_ROOT.'/ticket/class/ticket.class.php'; + + if (!DolibarrApiAccess::$user->hasRight('ticket', 'read')) { + throw new RestException(403); + } + + $object = new Ticket($this->db); + $result = $object->fetch($id, $ref); + if (!$result) { + throw new RestException(404, 'Ticket not found'); + } + + $upload_dir = $conf->ticket->dir_output.'/'.dol_sanitizeFileName($object->ref); } elseif ($modulepart == 'knowledgemanagement') { require_once DOL_DOCUMENT_ROOT.'/knowledgemanagement/class/knowledgerecord.class.php';