dolibarr 21.0.0-beta
product_extrafields.php
Go to the documentation of this file.
1<?php
2/* Copyright (C) 2001-2002 Rodolphe Quiedeville <rodolphe@quiedeville.org>
3 * Copyright (C) 2003 Jean-Louis Bergamo <jlb@j1b.org>
4 * Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
5 * Copyright (C) 2012 Marcos García <marcosgdf@gmail.com>
6 * Copyright (C) 2012 Regis Houssin <regis.houssin@inodbox.com>
7 * Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 3 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program. If not, see <https://www.gnu.org/licenses/>.
21 */
22
29// Load Dolibarr environment
30require '../../main.inc.php';
31require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
32require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
33
42// Load translation files required by the page
43$langs->loadLangs(array('companies', 'admin', 'products'));
44
45$extrafields = new ExtraFields($db);
46$form = new Form($db);
47
48// List of supported format
50
51$action = GETPOST('action', 'aZ09');
52$attrname = GETPOST('attrname', 'alpha');
53$elementtype = 'product'; //Must be the $element of the class that manage extrafield
54
55if (!$user->admin) {
57}
58
59
60/*
61 * Actions
62 */
63
64require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php';
65
66
67
68/*
69 * View
70 */
71
72$title = $langs->trans('ProductServiceSetup');
73$textobject = $langs->transnoentitiesnoconv("ProductsAndServices");
74if (!isModEnabled("product")) {
75 $title = $langs->trans('ServiceSetup');
76 $textobject = $langs->trans('Services');
77} elseif (!isModEnabled("service")) {
78 $title = $langs->trans('ProductSetup');
79 $textobject = $langs->trans('Products');
80}
81
82//$help_url='EN:Module Third Parties setup|FR:Paramétrage_du_module_Tiers';
83$help_url = '';
84llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'mod-product page-admin_product_extrafields');
85
86
87$linkback = '<a href="'.DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans("BackToModuleList").'</a>';
88print load_fiche_titre($title, $linkback, 'title_setup');
89
90
92
93print dol_get_fiche_head($head, 'attributes', $textobject, -1, 'product');
94
95require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php';
96
97print dol_get_fiche_end();
98
99
100// Creation of an optional field
101if ($action == 'create') {
102 print '<br><div id="newattrib"></div>';
103 print load_fiche_titre($langs->trans('NewAttribute'));
104
105 require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_add.tpl.php';
106}
107
108// Edition of an optional field
109if ($action == 'edit' && !empty($attrname)) {
110 print "<br>";
111 print load_fiche_titre($langs->trans("FieldEdition", $attrname));
112
113 require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_edit.tpl.php';
114}
115
116// End of page
117llxFooter();
118$db->close();
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader($head='', $title='', $help_url='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $morecssonbody='', $replacemainareaby='', $disablenofollow=0, $disablenoindex=0)
Empty header.
Definition wrapper.php:71
Class to manage standard extra fields.
static getListOfTypesLabels()
Return array with all possible types and labels of extrafields.
Class to manage generation of HTML components Only common components must be here.
llxFooter()
Footer empty.
Definition document.php:107
load_fiche_titre($title, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0)
Show tabs of a record.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
product_admin_prepare_head()
Return array head with list of tabs to view object information.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.