dolibarr  13.0.2
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  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <https://www.gnu.org/licenses/>.
20  */
21 
28 require '../../main.inc.php';
29 require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
30 require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
31 
32 // Load translation files required by the page
33 $langs->loadLangs(array('companies', 'admin', 'products'));
34 
35 $extrafields = new ExtraFields($db);
36 $form = new Form($db);
37 
38 // List of supported format
39 $tmptype2label = ExtraFields::$type2label;
40 $type2label = array('');
41 foreach ($tmptype2label as $key => $val) $type2label[$key] = $langs->transnoentitiesnoconv($val);
42 
43 $action = GETPOST('action', 'aZ09');
44 $attrname = GETPOST('attrname', 'alpha');
45 $elementtype = 'product'; //Must be the $element of the class that manage extrafield
46 
47 if (!$user->admin) accessforbidden();
48 
49 
50 /*
51  * Actions
52  */
53 
54 require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php';
55 
56 
57 
58 /*
59  * View
60  */
61 
62 $title = $langs->trans('ProductServiceSetup');
63 $textobject = $langs->trans("ProductsAndServices");
64 if (empty($conf->product->enabled))
65 {
66  $title = $langs->trans('ServiceSetup');
67  $textobject = $langs->trans('Services');
68 } elseif (empty($conf->service->enabled))
69 {
70  $title = $langs->trans('ProductSetup');
71  $textobject = $langs->trans('Products');
72 }
73 
74 //$help_url='EN:Module Third Parties setup|FR:ParamĂ©trage_du_module_Tiers';
75 $help_url = '';
76 llxHeader('', $title, $help_url);
77 
78 
79 $linkback = '<a href="'.DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans("BackToModuleList").'</a>';
80 print load_fiche_titre($title, $linkback, 'title_setup');
81 
82 
84 
85 print dol_get_fiche_head($head, 'attributes', $textobject, -1, 'product');
86 
87 require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php';
88 
90 
91 
92 // Buttons
93 if ($action != 'create' && $action != 'edit')
94 {
95  print '<div class="tabsAction">';
96  print "<a class=\"butAction\" href=\"".$_SERVER["PHP_SELF"]."?action=create#newattrib\">".$langs->trans("NewAttribute")."</a>";
97  print "</div>";
98 }
99 
100 
101 /* ************************************************************************** */
102 /* */
103 /* Creation of an optional field */
104 /* */
105 /* ************************************************************************** */
106 
107 if ($action == 'create')
108 {
109  print '<br><div id="newattrib"></div>';
110  print load_fiche_titre($langs->trans('NewAttribute'));
111 
112  require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_add.tpl.php';
113 }
114 
115 /* ************************************************************************** */
116 /* */
117 /* Edition of an optional field */
118 /* */
119 /* ************************************************************************** */
120 if ($action == 'edit' && !empty($attrname))
121 {
122  print "<br>";
123  print load_fiche_titre($langs->trans("FieldEdition", $attrname));
124 
125  require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_edit.tpl.php';
126 }
127 
128 // End of page
129 llxFooter();
130 $db->close();
GETPOST($paramname, $check= 'alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
llxHeader()
Empty header.
Definition: wrapper.php:45
Class to manage standard extra fields.
Class to manage generation of HTML components Only common components must be here.
load_fiche_titre($titre, $morehtmlright= '', $picto= 'generic', $pictoisfullpath=0, $id= '', $morecssontable= '', $morehtmlcenter= '')
Load a title with picto.
accessforbidden($message= '', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program Calling this function terminate execution ...
dol_get_fiche_head($links=array(), $active= '', $title= '', $notab=0, $picto= '', $pictoisfullpath=0, $morehtmlright= '', $morecss= '', $limittoshow=0, $moretabssuffix= '')
Show tabs of a record.
print
Draft customers invoices.
Definition: index.php:89
product_admin_prepare_head()
Return array head with list of tabs to view object informations.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
llxFooter()
Empty footer.
Definition: wrapper.php:59