From 06a485fb87de6c582c815b35179d514b8dc12500 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Mon, 13 Apr 2026 13:21:23 +0200 Subject: [PATCH] NEW Supplier invoice - Update dir_output (#37841) * NEW Supplier invoice - Update dir_output * CI --------- Co-authored-by: Laurent Destailleur --- htdocs/fourn/facture/agenda.php | 27 +++++++++++---------- htdocs/fourn/facture/card-rec.php | 19 ++++++++------- htdocs/fourn/facture/card.php | 8 +++--- htdocs/fourn/facture/contact.php | 17 +++++++------ htdocs/fourn/facture/document.php | 23 +++++++++--------- htdocs/fourn/facture/index.php | 11 +++++---- htdocs/fourn/facture/info.php | 27 +++++++++++---------- htdocs/fourn/facture/list-rec.php | 39 +++++++++++++++--------------- htdocs/fourn/facture/messaging.php | 26 +++++++++++--------- htdocs/fourn/facture/note-rec.php | 34 ++++++++++++++------------ htdocs/fourn/facture/note.php | 14 ++++++----- htdocs/fourn/facture/paiement.php | 15 ++++++------ htdocs/fourn/facture/rapport.php | 22 ++++++++++------- 13 files changed, 150 insertions(+), 132 deletions(-) diff --git a/htdocs/fourn/facture/agenda.php b/htdocs/fourn/facture/agenda.php index 06e832c3faf..8faea7f4267 100644 --- a/htdocs/fourn/facture/agenda.php +++ b/htdocs/fourn/facture/agenda.php @@ -1,7 +1,8 @@ - * Copyright (C) 2024-2025 MDW - * Copyright (C) 2024-2025 Frédéric France +/* Copyright (C) 2023 Laurent Destailleur + * Copyright (C) 2024-2025 MDW + * Copyright (C) 2024-2025 Frédéric France + * Copyright (C) 2026 Alexandre Spangaro * * 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 @@ -23,15 +24,6 @@ * \brief Tab of events on Invoices Fournisseur */ require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; - /** * @var Conf $conf @@ -41,6 +33,15 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; + // Load translation files required by the page $langs->loadLangs(array("bills", "other")); @@ -83,7 +84,7 @@ if (!$sortorder) { // Initialize a technical objects $object = new FactureFournisseur($db); $extrafields = new ExtraFields($db); -$diroutputmassaction = $conf->facture->multidir_output[$conf->entity].'/temp/massgeneration/'.$user->id; +$diroutputmassaction = getMultidirTemp($object).'/massgeneration/'.$user->id; // Initialize a technical object to manage hooks of page. Note that conf->hooks_modules contains an array of hook context $hookmanager->initHooks(array('invoiceagenda', 'globalcard')); // Note that conf->hooks_modules contains array diff --git a/htdocs/fourn/facture/card-rec.php b/htdocs/fourn/facture/card-rec.php index bae39795efa..efaed207304 100644 --- a/htdocs/fourn/facture/card-rec.php +++ b/htdocs/fourn/facture/card-rec.php @@ -34,6 +34,16 @@ // Load Dolibarr environment require '../../main.inc.php'; + +/** + * @var Conf $conf + * @var DoliDB $db + * @var HookManager $hookmanager + * @var Societe $mysoc + * @var Translate $langs + * @var User $user + */ + require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture-rec.class.php'; require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.product.class.php'; require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; @@ -46,15 +56,6 @@ require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/invoice.lib.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php'; -/** - * @var Conf $conf - * @var DoliDB $db - * @var HookManager $hookmanager - * @var Societe $mysoc - * @var Translate $langs - * @var User $user - */ - // Load translation files required by the page $langs->loadLangs(array('bills', 'companies', 'compta', 'admin', 'other', 'products', 'banks', 'suppliers')); diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 71b61c6f6c8..019cf63ccb2 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -8,7 +8,7 @@ * Copyright (C) 2013-2022 Philippe Grand * Copyright (C) 2013 Florian Henry * Copyright (C) 2014-2016 Marcos García - * Copyright (C) 2016-2025 Alexandre Spangaro + * Copyright (C) 2016-2026 Alexandre Spangaro * Copyright (C) 2018-2025 Frédéric France * Copyright (C) 2019 Ferran Marcet * Copyright (C) 2022 Gauthier VERDOL @@ -2051,7 +2051,7 @@ if (empty($reshook)) { include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; // Actions to build doc - $upload_dir = $conf->fournisseur->facture->dir_output; + $upload_dir = getMultidirOutput($object); $permissiontoadd = $usercancreate; include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; @@ -4397,7 +4397,7 @@ if ($action == 'create') { */ $ref = dol_sanitizeFileName($object->ref); $subdir = get_exdir($object->id, 2, 0, 0, $object, 'invoice_supplier').$ref; - $filedir = $conf->fournisseur->facture->dir_output.'/'.$subdir; + $filedir = getMultidirOutput($object).'/'.$subdir; $urlsource = $_SERVER['PHP_SELF'].'?id='.$object->id; $genallowed = $usercanread; $delallowed = $usercancreate; @@ -4435,7 +4435,7 @@ if ($action == 'create') { // Presend form $modelmail = 'invoice_supplier_send'; $defaulttopic = 'SendBillRef'; - $diroutput = $conf->fournisseur->facture->dir_output; + $diroutput = getMultidirOutput($object); $autocopy = 'MAIN_MAIL_AUTOCOPY_SUPPLIER_INVOICE_TO'; $trackid = 'sinv'.$object->id; diff --git a/htdocs/fourn/facture/contact.php b/htdocs/fourn/facture/contact.php index 0311648af84..73d18dcc40c 100644 --- a/htdocs/fourn/facture/contact.php +++ b/htdocs/fourn/facture/contact.php @@ -29,14 +29,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; -if (isModEnabled('project')) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -} /** * @var Conf $conf @@ -46,6 +38,15 @@ if (isModEnabled('project')) { * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; +if (isModEnabled('project')) { + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; +} + $langs->loadLangs(array("bills", "other", "companies")); $id = (GETPOSTINT('id') ? GETPOSTINT('id') : GETPOSTINT('facid')); diff --git a/htdocs/fourn/facture/document.php b/htdocs/fourn/facture/document.php index 8ffa1b39f9d..7e6fcd718b2 100644 --- a/htdocs/fourn/facture/document.php +++ b/htdocs/fourn/facture/document.php @@ -4,7 +4,7 @@ * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador - * Copyright (C) 2016 Alexandre Spangaro + * Copyright (C) 2016-2026 Alexandre Spangaro * Copyright (C) 2017 Ferran Marcet * Copyright (C) 2021-2025 Frédéric France * Copyright (C) 2025 MDW @@ -31,15 +31,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; -if (isModEnabled('project')) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -} /** * @var Conf $conf @@ -50,6 +41,16 @@ if (isModEnabled('project')) { * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; +if (isModEnabled('project')) { + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; +} + $langs->loadLangs(array('bills', 'other', 'companies')); $id = GETPOSTINT('facid') ? GETPOSTINT('facid') : GETPOSTINT('id'); @@ -87,7 +88,7 @@ $upload_dir = null; if ($object->fetch($id, $ref)) { $object->fetch_thirdparty(); $ref = dol_sanitizeFileName($object->ref); - $upload_dir = $conf->fournisseur->facture->dir_output.'/'.get_exdir($object->id, 2, 0, 0, $object, 'invoice_supplier').$ref; + $upload_dir = getMultidirOutput($object).'/'.get_exdir($object->id, 2, 0, 0, $object, 'invoice_supplier').$ref; } $permissiontoadd = ($user->hasRight("fournisseur", "facture", "creer") || $user->hasRight("supplier_invoice", "creer")); // Used by the include of actions_setnotes.inc.php diff --git a/htdocs/fourn/facture/index.php b/htdocs/fourn/facture/index.php index b5ba2df620a..4a083b0d26f 100644 --- a/htdocs/fourn/facture/index.php +++ b/htdocs/fourn/facture/index.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2020 Tobias Sekan * Copyright (C) 2024 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -24,10 +24,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; /** * @var Conf $conf @@ -37,6 +33,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; + // Load translation files required by the page $langs->loadLangs(['bills', 'boxes']); diff --git a/htdocs/fourn/facture/info.php b/htdocs/fourn/facture/info.php index 1e5d66e0906..512f63b85fd 100644 --- a/htdocs/fourn/facture/info.php +++ b/htdocs/fourn/facture/info.php @@ -1,11 +1,11 @@ - * Copyright (C) 2004-2006 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin - * Copyright (C) 2016 Alexandre Spangaro - * Copyright (C) 2017 Ferran Marcet +/* Copyright (C) 2004 Rodolphe Quiedeville + * Copyright (C) 2004-2006 Laurent Destailleur + * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2016 Alexandre Spangaro + * Copyright (C) 2017 Ferran Marcet * Copyright (C) 2024-2025 Frédéric France - * Copyright (C) 2025 MDW + * Copyright (C) 2025 MDW * * 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 @@ -29,13 +29,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; -if (isModEnabled('project')) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -} /** * @var Conf $conf @@ -45,6 +38,14 @@ if (isModEnabled('project')) { * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; +if (isModEnabled('project')) { + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; +} + $langs->loadLangs(array("companies", "bills")); $action = GETPOST('action', 'aZ09'); diff --git a/htdocs/fourn/facture/list-rec.php b/htdocs/fourn/facture/list-rec.php index e40636c0051..ae8d766477a 100644 --- a/htdocs/fourn/facture/list-rec.php +++ b/htdocs/fourn/facture/list-rec.php @@ -1,15 +1,15 @@ - * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin - * Copyright (C) 2013 Florian Henry - * Copyright (C) 2013 Juanjo Menent - * Copyright (C) 2015 Jean-François Ferry - * Copyright (C) 2012 Cedric Salvador - * Copyright (C) 2015-2021 Alexandre Spangaro - * Copyright (C) 2016 Meziane Sof - * Copyright (C) 2024-2025 MDW - * Copyright (C) 2024 Nick Fragoulis +/* Copyright (C) 2002-2003 Rodolphe Quiedeville + * Copyright (C) 2004-2016 Laurent Destailleur + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2013 Florian Henry + * Copyright (C) 2013 Juanjo Menent + * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2012 Cedric Salvador + * Copyright (C) 2015-2021 Alexandre Spangaro + * Copyright (C) 2016 Meziane Sof + * Copyright (C) 2024-2025 MDW + * Copyright (C) 2024 Nick Fragoulis * Copyright (C) 2024 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -34,6 +34,15 @@ // Load Dolibarr environment require '../../main.inc.php'; + +/** + * @var Conf $conf + * @var DoliDB $db + * @var HookManager $hookmanager + * @var Translate $langs + * @var User $user + */ + require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture-rec.class.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; @@ -44,14 +53,6 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; -/** - * @var Conf $conf - * @var DoliDB $db - * @var HookManager $hookmanager - * @var Translate $langs - * @var User $user - */ - // Load translation files required by the page $langs->loadLangs(array('bills', 'compta', 'admin', 'other', 'suppliers')); diff --git a/htdocs/fourn/facture/messaging.php b/htdocs/fourn/facture/messaging.php index 50839303d65..0246fa2b201 100644 --- a/htdocs/fourn/facture/messaging.php +++ b/htdocs/fourn/facture/messaging.php @@ -1,7 +1,8 @@ - * Copyright (C) 2024-2025 MDW +/* Copyright (C) 2023 Laurent Destailleur + * Copyright (C) 2024-2025 MDW * Copyright (C) 2024-2025 Frédéric France + * Copyright (C) 2026 Alexandre Spangaro * * 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 @@ -23,6 +24,15 @@ * \brief Tab of events on Invoices with vue messaging */ require '../../main.inc.php'; + +/** + * @var Conf $conf + * @var DoliDB $db + * @var HookManager $hookmanager + * @var Translate $langs + * @var User $user + */ + require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; @@ -33,14 +43,6 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; -/** - * @var Conf $conf - * @var DoliDB $db - * @var HookManager $hookmanager - * @var Translate $langs - * @var User $user - */ - // Load translation files required by the page $langs->loadLangs(array("bills", "other")); @@ -88,7 +90,7 @@ $usercancreate = false; // Initialize a technical objects $object = new FactureFournisseur($db); $extrafields = new ExtraFields($db); -$diroutputmassaction = $conf->facture->multidir_output[$conf->entity].'/temp/massgeneration/'.$user->id; +$diroutputmassaction = getMultidirTemp($object).'/massgeneration/'.$user->id; $hookmanager->initHooks(array('invoiceagenda', 'globalcard')); // Note that conf->hooks_modules contains array // Fetch optionals attributes and labels $extrafields->fetch_name_optionals_label($object->table_element); @@ -96,7 +98,7 @@ $extrafields->fetch_name_optionals_label($object->table_element); // Load object include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be 'include', not 'include_once'. Include fetch and fetch_thirdparty but not fetch_optionals if ($id > 0 || !empty($ref)) { - $upload_dir = $conf->facture->multidir_output[!empty($object->entity) ? $object->entity : $conf->entity]."/".$object->id; + $upload_dir = getMultidirOutput($object)."/".$object->id; } $permissiontoread = $user->hasRight("facture_fourn", "lire"); diff --git a/htdocs/fourn/facture/note-rec.php b/htdocs/fourn/facture/note-rec.php index 2a546d82dde..ea781eced7e 100644 --- a/htdocs/fourn/facture/note-rec.php +++ b/htdocs/fourn/facture/note-rec.php @@ -1,11 +1,12 @@ - * Copyright (C) 2004-2016 Laurent Destailleur - * Copyright (C) 2005-2012 Regis Houssin - * Copyright (C) 2013 Florian Henry - * Copyright (C) 2017 Ferran Marcet +/* Copyright (C) 2004 Rodolphe Quiedeville + * Copyright (C) 2004-2016 Laurent Destailleur + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2013 Florian Henry + * Copyright (C) 2017 Ferran Marcet * Copyright (C) 2024-2025 Frédéric France - * Copyright (C) 2025 MDW + * Copyright (C) 2025 MDW + * Copyright (C) 2026 Alexandre Spangaro * * 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 @@ -29,14 +30,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; -require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture-rec.class.php'; - -if (isModEnabled('project')) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -} /** * @var Conf $conf @@ -46,6 +39,15 @@ if (isModEnabled('project')) { * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture-rec.class.php'; + +if (isModEnabled('project')) { + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; +} + // Load translation files required by the page $langs->loadLangs(array('companies', 'bills')); @@ -61,8 +63,8 @@ if ($action == "create" || $action == "add") { $object = new FactureFournisseurRec($db); // Load object -if (($id > 0 || $title) && $action != 'create' && $action != 'add') { - $ret = $object->fetch($id, $title); +if ($id > 0 || !empty($ref)) { + $ret = $object->fetch($id, $ref); if (! $ret) { setEventMessages($langs->trans("ErrorRecordNotFound"), null, 'errors'); } diff --git a/htdocs/fourn/facture/note.php b/htdocs/fourn/facture/note.php index 829de10e14f..bd78cc64fd6 100644 --- a/htdocs/fourn/facture/note.php +++ b/htdocs/fourn/facture/note.php @@ -29,12 +29,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -if (isModEnabled('project')) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -} /** * @var Conf $conf @@ -45,6 +39,14 @@ if (isModEnabled('project')) { * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +if (isModEnabled('project')) { + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; +} + + $langs->loadLangs(array("bills", "companies")); $id = (GETPOSTINT('id') ? GETPOSTINT('id') : GETPOSTINT('facid')); diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index d5583859ee0..20ef2a0728a 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -8,7 +8,7 @@ * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> * Copyright (C) 2015 Marcos García * Copyright (C) 2015 Juanjo Menent - * Copyright (C) 2017 Alexandre Spangaro + * Copyright (C) 2017 Alexandre Spangaro * Copyright (C) 2018-2024 Frédéric France * Copyright (C) 2021 Charlene Benke * Copyright (C) 2022 Udo Tamm @@ -37,12 +37,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; /** * @var Conf $conf @@ -52,6 +46,13 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + // Load translation files required by the page $langs->loadLangs(array('companies', 'bills', 'banks', 'compta')); diff --git a/htdocs/fourn/facture/rapport.php b/htdocs/fourn/facture/rapport.php index e56224d1384..4ac1da28da9 100644 --- a/htdocs/fourn/facture/rapport.php +++ b/htdocs/fourn/facture/rapport.php @@ -1,8 +1,9 @@ - * Copyright (C) 2020 Maxime DEMAREST - * Copyright (C) 2024 Frédéric France - * Copyright (C) 2026 MDW +/* Copyright (C) 2017 ATM-Consulting + * Copyright (C) 2020 Maxime DEMAREST + * Copyright (C) 2024 Frédéric France + * Copyright (C) 2026 Alexandre Spangaro + * Copyright (C) 2026 MDW * * 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 @@ -26,10 +27,6 @@ // Load Dolibarr environment require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/modules/rapport/pdf_paiement_fourn.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; /** * @var Conf $conf @@ -39,6 +36,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; * @var User $user */ +require_once DOL_DOCUMENT_ROOT.'/core/modules/rapport/pdf_paiement_fourn.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; + $langs->loadLangs(array('bills')); // Security check @@ -48,6 +50,8 @@ if (!empty($user->socid)) { } $result = restrictedArea($user, 'fournisseur', 0, 'facture_fourn', 'facture'); +$object = new FactureFournisseur($db); + $action = GETPOST('action', 'aZ09'); $fileToRemove = GETPOST('removefile', 'alpha'); @@ -57,7 +61,7 @@ if ($user->socid > 0) { $socid = $user->socid; } -$dir = $conf->fournisseur->facture->dir_output.'/payments'; +$dir = getMultidirOutput($object).'/payments'; if (!$user->hasRight("societe", "client", "voir") || $socid) { $dir .= '/private/'.$user->id; // If user has no permission to see all, output dir is specific to user }