2012-03-03 16:33:38 +01:00
|
|
|
<?php
|
2012-09-13 11:52:50 +02:00
|
|
|
/* Copyright (C) 2001-2002 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
|
|
|
|
* Copyright (C) 2003 Jean-Louis Bergamo <jlb@j1b.org>
|
|
|
|
|
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
|
|
|
|
* Copyright (C) 2012 Marcos García <marcosgdf@gmail.com>
|
2018-10-27 14:43:12 +02:00
|
|
|
* Copyright (C) 2012 Regis Houssin <regis.houssin@inodbox.com>
|
2024-11-04 23:53:20 +01:00
|
|
|
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
|
2012-03-03 16:33:38 +01:00
|
|
|
*
|
|
|
|
|
* 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
|
2013-01-16 15:36:08 +01:00
|
|
|
* the Free Software Foundation; either version 3 of the License, or
|
2012-03-03 16:33:38 +01:00
|
|
|
* (at your option) any later version.
|
|
|
|
|
*
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
|
*
|
|
|
|
|
* You should have received a copy of the GNU General Public License
|
2019-09-23 21:55:30 +02:00
|
|
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
2012-03-03 16:33:38 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/**
|
2016-09-12 17:27:44 +02:00
|
|
|
* \file htdocs/product/admin/product_extrafields.php
|
2012-03-03 16:33:38 +01:00
|
|
|
* \ingroup societe
|
|
|
|
|
* \brief Page to setup extra fields of third party
|
|
|
|
|
*/
|
|
|
|
|
|
2022-09-07 20:08:59 +02:00
|
|
|
// Load Dolibarr environment
|
2012-08-22 23:24:21 +02:00
|
|
|
require '../../main.inc.php';
|
2012-08-22 23:11:24 +02:00
|
|
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
|
|
|
|
|
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2024-11-04 23:53:20 +01:00
|
|
|
/**
|
|
|
|
|
* @var Conf $conf
|
|
|
|
|
* @var DoliDB $db
|
|
|
|
|
* @var HookManager $hookmanager
|
|
|
|
|
* @var Translate $langs
|
|
|
|
|
* @var User $user
|
|
|
|
|
*/
|
|
|
|
|
|
2018-05-26 17:57:30 +02:00
|
|
|
// Load translation files required by the page
|
|
|
|
|
$langs->loadLangs(array('companies', 'admin', 'products'));
|
2012-03-03 16:33:38 +01:00
|
|
|
|
|
|
|
|
$extrafields = new ExtraFields($db);
|
|
|
|
|
$form = new Form($db);
|
|
|
|
|
|
|
|
|
|
// List of supported format
|
2024-05-03 02:39:35 +02:00
|
|
|
$type2label = ExtraFields::getListOfTypesLabels();
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2020-09-16 19:39:50 +02:00
|
|
|
$action = GETPOST('action', 'aZ09');
|
2020-04-10 10:59:32 +02:00
|
|
|
$attrname = GETPOST('attrname', 'alpha');
|
|
|
|
|
$elementtype = 'product'; //Must be the $element of the class that manage extrafield
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2021-02-26 14:25:17 +01:00
|
|
|
if (!$user->admin) {
|
|
|
|
|
accessforbidden();
|
|
|
|
|
}
|
2012-03-03 16:33:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Actions
|
|
|
|
|
*/
|
|
|
|
|
|
2013-09-23 13:22:28 +02:00
|
|
|
require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php';
|
2012-03-03 16:33:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* View
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
$title = $langs->trans('ProductServiceSetup');
|
2024-06-11 20:04:30 +02:00
|
|
|
$textobject = $langs->transnoentitiesnoconv("ProductsAndServices");
|
2023-04-18 20:16:02 +02:00
|
|
|
if (!isModEnabled("product")) {
|
2012-03-03 16:33:38 +01:00
|
|
|
$title = $langs->trans('ServiceSetup');
|
2015-02-28 20:14:26 +01:00
|
|
|
$textobject = $langs->trans('Services');
|
2023-04-18 20:16:02 +02:00
|
|
|
} elseif (!isModEnabled("service")) {
|
2012-03-03 16:33:38 +01:00
|
|
|
$title = $langs->trans('ProductSetup');
|
2015-02-28 20:14:26 +01:00
|
|
|
$textobject = $langs->trans('Products');
|
2012-03-03 16:33:38 +01:00
|
|
|
}
|
|
|
|
|
|
2016-09-12 17:27:44 +02:00
|
|
|
//$help_url='EN:Module Third Parties setup|FR:Paramétrage_du_module_Tiers';
|
2020-04-10 10:59:32 +02:00
|
|
|
$help_url = '';
|
2024-06-07 17:48:51 +02:00
|
|
|
llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'mod-product page-admin_product_extrafields');
|
2012-03-03 16:33:38 +01:00
|
|
|
|
|
|
|
|
|
2020-04-10 10:59:32 +02:00
|
|
|
$linkback = '<a href="'.DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans("BackToModuleList").'</a>';
|
2019-01-27 11:55:16 +01:00
|
|
|
print load_fiche_titre($title, $linkback, 'title_setup');
|
2012-03-03 16:33:38 +01:00
|
|
|
|
|
|
|
|
|
2012-05-22 18:35:14 +02:00
|
|
|
$head = product_admin_prepare_head();
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2020-10-22 22:50:03 +02:00
|
|
|
print dol_get_fiche_head($head, 'attributes', $textobject, -1, 'product');
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2015-02-28 20:14:26 +01:00
|
|
|
require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php';
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2020-10-27 18:19:31 +01:00
|
|
|
print dol_get_fiche_end();
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2012-09-22 20:27:06 +02:00
|
|
|
|
2021-03-20 10:00:24 +01:00
|
|
|
// Creation of an optional field
|
2021-02-26 14:25:17 +01:00
|
|
|
if ($action == 'create') {
|
2018-06-30 14:22:05 +02:00
|
|
|
print '<br><div id="newattrib"></div>';
|
|
|
|
|
print load_fiche_titre($langs->trans('NewAttribute'));
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2020-10-31 14:32:18 +01:00
|
|
|
require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_add.tpl.php';
|
2012-03-03 16:33:38 +01:00
|
|
|
}
|
|
|
|
|
|
2021-03-20 10:00:24 +01:00
|
|
|
// Edition of an optional field
|
2021-02-26 14:25:17 +01:00
|
|
|
if ($action == 'edit' && !empty($attrname)) {
|
2020-10-31 14:32:18 +01:00
|
|
|
print "<br>";
|
|
|
|
|
print load_fiche_titre($langs->trans("FieldEdition", $attrname));
|
2012-03-03 16:33:38 +01:00
|
|
|
|
2020-10-31 14:32:18 +01:00
|
|
|
require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_edit.tpl.php';
|
2012-03-03 16:33:38 +01:00
|
|
|
}
|
|
|
|
|
|
2018-08-14 09:55:58 +02:00
|
|
|
// End of page
|
2012-03-03 16:33:38 +01:00
|
|
|
llxFooter();
|
|
|
|
|
$db->close();
|