diff --git a/htdocs/api/class/api_documents.class.php b/htdocs/api/class/api_documents.class.php index 75e27ad0e0d..ebfe3d7b0e0 100644 --- a/htdocs/api/class/api_documents.class.php +++ b/htdocs/api/class/api_documents.class.php @@ -387,6 +387,22 @@ class Documents extends DolibarrApi $upload_dir = $conf->agenda->dir_output.'/'.dol_sanitizeFileName($object->ref); } + elseif ($modulepart == 'expensereport') + { + require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; + + if (!DolibarrApiAccess::$user->rights->expensereport->read && !DolibarrApiAccess::$user->rights->expensereport->read) { + throw new RestException(401); + } + + $object = new ExpenseReport($this->db); + $result = $object->fetch($id, $ref); + if (!$result) { + throw new RestException(404, 'Expense report not found'); + } + + $upload_dir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($object->ref); + } else { throw new RestException(500, 'Modulepart '.$modulepart.' not implemented yet.'); @@ -518,6 +534,11 @@ class Documents extends DolibarrApi require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; $object = new Product($this->db); } + elseif ($modulepart == 'expensereport') + { + require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; + $object = new ExpenseReport($this->db); + } // TODO Implement additional moduleparts else {